[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
LDM 6.2.0 released
- Subject: LDM 6.2.0 released
- Date: Wed, 02 Feb 2005 10:46:43 -0700
Hi,
Version 6.2.0 of the LDM package is now available. Installation
instructions can be found at
http://my.unidata.ucar.edu/content/software/ldm/ldm-6.2.0
under the heading "Download, Installation, and Configuration".
The release-notes and change-log are attached to this message. They can
also be seen by going to the GForge webpages of the LDM Project at
http://gforge.unidata.ucar.edu/projects/ldm/
and clicking on the appropriate book icon in the "Latest File Releases"
section.
The files CHANGE_LOG and RELEASE_NOTES also exist in the top-level
source-directory of the source-code distribution.
NOTE TO THE NWS: You don't have to replace your LDM-s unless you want
to. Your old LDM-s should continue to work just fine.
Regards,
Steve Emmerson
Changes from LDM Version 6.1.0 to LDM
Version 6.2.0
Added "rpc" subpackage -- replacing use of the
native RPC library -- to work-around a bug in the
AIX 5.1 ONC RPC 4.0 implementation, which fails
when receiving large (~10 MB) RPC messages (i.e.,
most NIMAGE data wasn't being received).
Modified product-queue (pq) module:
Corrected bug in pq(3) module when inserting a
data-product that has the same insertion-time
as an already existing data-product. The
insertion-time in now incremented by
one microsecond to ensure unique keys
in the time-map rather than using the
byte-offset of the data-product. Hopefully,
this will eliminate the rare occurrence
in which a data-product is missed by a
product-queue reader because it has the same
insertion-time as the previous data-product
in the product-queue but has a smaller
byte-offset.
Corrected fClr() and fMask() macros in file
"pq/fbits.h" so that they correctly handle
the case where the "flag" variable is smaller
than the variable in question. This removes
a problem creating product-queues with
data-sections larger than (2^32)-1 bytes
on systems where sizeof(size_t) == 8 and
sizeof(unsigned) == 4.
Made all programs that use regular-expressions
convert all externally-specified pathological
regular-expressions into non-pathological ones.
Modified top-level LDM server:
Removed latent bug that caused file-descriptor
table to fill-up -- preventing additional
connections -- if fork(2)s failed for a while.
Corrected bug in LDM configuration-file
parser. The LDM will now log an error-message
and terminate if it encounters an invalid
feedtype expression.
Modified downstream (i.e., receiving) LDM:
Changed the way the "last" data-product
creation-time is saved. Before, the
creation-time of the most recently received
data-product was used. Now, that time is
used only if it is more recent than the saved
time. This should reduce problems caused by
the sequential arrival of data-products with
creation-times that are non-monotonic.
Modified down6_get_last_arrival() to
accomodate SunOS 5.8's c89(1).
Improved error-messages when the LDM can't
connect to an upstream LDM.
Modified programs to reduce artificially-induced
latencies:
Modified the toClients() function in the
"pqing" module so that the "arrival" argument
is ignored and the creation-time of the
data-product is set within the function
itself. This should reduce the (apparent)
latency on systems doing data-product
ingestion.
Modified the pqinsert(1) utility so that
the data-product creation- time is set just
prior to inserting the data-product into
the product-queue. This should reduce any
(apparent) latency.
Modified pqact(1). A configuration-file with
no entries is now logged as such rather than as
having a syntax error.
Modified rtstats(1):
A warning-level error-message is logged if it
can't connect to the remote LDM.
The latency field in the data-product
it creates is now formatted "%g" from a
floating-point value.
Modified pqcheck(1). Added support for logging
debug-level messages (-x option).
Modified scour(1) utility to work-around bug in
OSF1's find(1) utility.
Ensured that all utilities log messages of level
LOG_WARNING.
Modified ldmadmin(1) script:
Moved the configuration section of ldmadmin(1)
into a separate file (etc/ldmadmin-pl.conf).
A consequence of this is that if the
environment variable LDMHOME is not set, then
$HOME is used.
Removed setting of UDUNITS_PATH because it
doesn't have anything to do with running
the LDM. User's who need this environment
variable set in order for the gribtonc(1)
decoder to work properly should set it in the
profile-file of the LDM user's user-shell.
Corrected default value of $surf_size
variable. Previous value of "2M" caused
command "ldmadmin mksurfqueue" to hang.
Fixed bug in ldmadmin(1) so that "ldmadmin
watch -f 'IDS|DDPLUS'" now works.
Made "ldmadmin clean" abort if the LDM system
is running.
Corrected use of "$?".
Corrected some error-messages.
Added scouring of ~ldm/logs/*.stats files to
example scour(1) configuration-file.
Ported package to
Darwin (alias Mac OS X)
SunOS 5.10 (alias Solaris 10)
The package has poor performance under SunOS
5.10. Sun is investigating.
Modified configure(1) script:
Made the script try to create an LDM system
that supports product-queue sizes up to
(2^32)-1 bytes.
Added "--disable-max-size" option so that
the user can ensure that the resulting LDM
only supports smaller product-queue sizes (to
use a previously-existing product-queue, for
example).
Corrected test for non-socket /dev/log.
Now augments, rather than replaces, a
user-specified CPPFLAGS.
Modified makefiles:
Modified top-level makefile to get
libldm.a(ldm_version.o) updated when VERSION
is modified.
"make clean" no longer removes *.log files;
"make distclean" does.
Removed files INSTALL and INSTALL.bin from
distribution after moving their information to
file README.
Renamed this file (HISTORY) to CHANGE_LOG.
Release Notes for LDM version 6.2.0
WHAT'S MAJORLY NEW:
Self-Contained RPC
This version of the LDM has its own RPC
(Remote Procedure Call) implementation.
This was done because the native RPC
implementations on some systems (notably
AIX 5.1) are buggy (they fail to transmit
data-products larger than 16 MB, for
example).
Large Product-Queue by Default
By default, this version of the LDM
will be built with support for large
product-queues (up to (2^32)-1 bytes
in size) -- if that's possible on
the system in question. If you want
to reuse a pre-existing queue that
was created with a previous version
of the LDM that didn't support large
product-queues, then you'll have to
specify the option "--disable-max-size" to
the configure(1) script when you execute
it. The installation instructions have
more information.
Because of this change, THE INSTALLATION
INSTRUCTIONS HAVE CHANGED. Please read
and follow them.
Separate ldmadmin(1) Configuration-File
The configuration section of the
ldmadmin(1) script has been broken-out
into its own file (etc/ldmadmin-pl.conf)
to eliminate the need to modify the
ldmadmin(1) script every time the LDM is
updated.
RELINK INGESTERS:
If your previous LDM didn't support large
product-queues (see above) and this updated
one will, then you must re-link all programs
that access the product-queue that are not
part of this distribution. Failure to do so
will result in INCORRECT BEHAVIOR OF THE LDM
SYSTEM.
KNOWN PROBLEMS:
Because problems can be reported after a
release is made, you should check the "Known
Problems" webpage at
http://my.unidata.ucar.edu/conte
nt/software/ldm/ldm- 6.2.0/release-notes.html#bugs