Release Notes: Earthworm Version "V6.2"
FOR AUTOMATIC EARTHWORM:
File-based exchange system:
A file-based data exchange system is now available, consisting of the modules
ew2file, sendfileII, getfileII and file2ew. The module ew2file reads selected
messages from an Earthworm ring and writes these messages to disk files in one
or more directories. The files are picked up from a directory by sendfileII,
which transmits the files over the network to a host running getfileII. The
getfileII program accepts connections from one or more hosts running
sendfileII, and places the incoming files in the directory assigned to the
sending address. Finally, file2ew picks up files from a directory and inserts
them into a transport ring as Earthworm messages.
The main advantage of this system over import/export is that files are
buffered in the directories used by sendfileII and file2ew. So if these
programs are not able to transmit thier input files, such as when the
recipient host is down, that data is held instead of being lost.
This file-based exchange system is NOT suitable for high data-rate exchanges
such as waveforms.
The programs sendfileII and getfileII are derived from the sendfile and
getfile programs contributed by Will Kohler at the Menlo Park campus of
USGS. The new programs use an enhanced protocol; the original programs could
lose files in certain circumstances. The new programs are NOT COMPATIBLE with
the original sendfile and getfile programs, nor with the getfile_ew program.
These programs are sometimes known as the "file flinger".
The ewfile progam can be configured to generate heartbeat files to send
through the system. If desired, the program makehbfile can be used instead to
generate heartbeat files. Makehbfile is also part of the sendfile/getfile
package from Will Kohler. The file2ew program can be configured to expect
heartbeat files and to send alarm messages on loss of heartbeats.
The three programs sendfileII, getfileII and makehbfile can be used
independently from earthworm. Their source files stand alone, needing none of
the Earthworm libraries. These three programs do not connect to Earthworm
transport, and thus can not be monitored directly by statusmgr.
The file2ew progam is a generic version of the family of strong motion file
converters (sm_file2ew); it has been part of Earthworm for some time.
Note that ew2file can write copies of its files to multiple directories, and
that getfileII can accept connections from multiple sendfileII's. So this
system offers considerable flexibility for complex data exchanges.
Pete Lombard, 12/20/2002
Wave_probe is a new piece of diagnostic software for wave servers. It is
mainly intended for use by developers. Wave_probe constructs and sends
a trace request for a single station, logging to a debugging file everything
that occurs during this process. This program is intended as a work in
progress, as new errors are diagnosed and debugged, functionality can be
added as needed. Wave_probe uses private versions of the ws_clientII
librarys, so changes to ws_clientII would have to be replicated here also
John Patton, 02/06/2003
naqsserTG: New client to NaqsServer that takes transparent serial packets
containing tide gauge data and converts it into Earthworm messages and
write the data to a file. Written by Paul Whitmore, ATWC.
This program looks at waveform messages dropped in an Earthworm Ring and
logs latency and outages of the data. The graphical output shows a line
for each station for a set length of time. Colors on the line represent
the latency of the station over that time interval. The program was orginally
written by Paul Whitmore at WC/ATWC and enhanced by John Patton at USGS, Golden.
FOR INTERACTIVE, ORACLE-BASED EARTHWORM
A system of programs that retrieves snippets from
wave_servers and stores them in an EW Database. There are currently
three executables: ora_trace_req, ora_trace_fetch, and unlocker.
Please see their web documentation for more info.
ora_trace_req: A moduel that reads EW Trigger messages and converts
them to snippet requests which it inserts into the database.
Front half of concierge. Replaces the front half of ora_trace_save.
ora_trace_fetch: A module that reads snippet requests from an EWDB
and retrieves snippets to fill the requests. The snippets are then
stored in the EWDB. Back half of concierge. Replaces the back half
unlocker: Stand alone executable that releases old stale locks,
such as those that are generated when ora_trace_fetch is processing
requests and crashes or gets bonked on the head.
Jiggle was developed by Doug Given at USGS Pasadena for routine analysis
of data collected by TriNet in Southern California.
The Golden development team has incorporated Jiggle with the
gencatalog allows the user to search the Earthworm database and generate
a summary file of all events which meet user selectable criteria.
MODIFICATIONS/BUG FIXES TO EXISTING MODULES:
/libsrc/util/k2evt2ew: Added checksum and sanity checks so that reading
a bad .evt file will report an error, and a crash.
libsrc/util/k2evt2ew: Modified the MAXTRACELTH constant in k2evt2ew.h,
so that a maxium of 800k datapoints per channel per EVT file are supported.
WARNING!!!!!: This brings the K2InfoStruct memory footprint to a whopping
150MB!!!! Any program that utilizes this library must be capable of
allocating the structure.
Fixed a bug that allowed the library routines to write passed the end of
the K2InfoStruct data fields. Main routine now truncates processing
when the end of the output buffer has been reached and returns a truncation
reaper: Had a hard-coded max of 1000 events to delete. Added a loop
to delete events in multiples of 1000. Alex 7/26/02
adsend: Modifications to run at digitizing rate up to 500 sps. Some few tweaks to irige.c.
Also tweaks to permit the user to set the actual number of channels to
be digitized (rather than all). Outstanding problem: irige.c likes it
best when a buffer contains one second's worth of data. Alex 7/17/02
shakemapfeed: Added new configuration file command "UseEventID" so the
user can specify which eventid is written to the output files
(1=binder's eventid, 2=DBMS eventid). Changed logging so that both ids
are written where applicable. Changed so the log file is initialized
before the configuration file is read so that configuration errors will
now be written to the log file. LDD 4/12/2002
sm_ew2ora: Changed to issue a TYPE_ERROR msg if it cannot put SM data
into the DBMS because the channel is not in the DBMS (previously, it
only logged this info). Changed to use tport_copyfrom instead of
tport_getmsg. Moved logit_init such that configfile errors can be
logged and changed fprintf(stderr...) to logit("e"...) in the configuration
section. LDD 5/1/2002
Added 2 new Earthworm error codes to distinguish among the reasons
that SM data was not inserted in the DBMS. Three codes now exist:
ERR_DBMSPUT (the call to ewdb_api_PutSMMessage failed)
ERR_UNKNOWNCHAN (channel info not in DBMS or has empty lat/lon)
ERR_CREATEEVENT (the call to ewdb_api_CreateEvent failed) LDD 3/13/2003
k2ew (tcp version only): Changed program so that heartbeats are sent to
statmgr while k2ew is attempting to make a socket connection to the K2.
Changed k2ew version number to 2.30. WMK 5/6/2002
scream2ew: Added new config command "IPNumber" so that the user can
specify the IP number on which SCREAM transmits data. JMP 05/08/2002
Rewrite by Guralp to accept data via TCP as well as UDP. AB 03/05/03
New version from Guralp to fix memory leak. AB 03/27/03
findwave: Modified findwave so that it can produce output compatible with
waveserverV .tnk file (scns to save) in addition to it's existing output.
The URL of this page is [http://gldbrick.cr.usgs.gov/ew-doc/RELEASE/release_notes_v6.2.html]