11/6/02
  Only install config file if it isn't already installed.

11/12/02
  Race condition between thread doing update to an rli, and
  thread queuing new softstate update (via lfnlist).
  The thread queueing a new softstate update flushes the
  pending updates (since new updates about to be queued)
  which can confuse the thread doing the update if it's in
  the middle of connecting to a server that just came up
  or is not responding.  Now softstate update thread just
  sets a flag bit which the update process checks and does
  flushes pending updates itself.

11/19/02
  Fixed deadlock when updates to an RLI server are failing.
  Forced updates now happen quicker.

11/20/02
  Fixed problem in SXXrls when IODBC not same as GLOBUS_LOCATION.

11/26/02 version 1.1.1
  Add support for get_configuration function, which returns server
    configuration to the client.
  Added -c option to globus-rls-admin to retrieve and display server
    configuration.
  Added "authentication" option to config file (was only settable on
    command line with -N).

12/03/02 version 1.1.2
  Rewrite periodic event handling (softstate updates, idle session timeouts).
    Expires now handled this way rather than by queuing a command to a worker
    thread.  Eliminates config option wakeupint (server now waits until
    next scheduled event rather than wake up periodically and checking for
    events).
  Mutex bloom filter updates (small chance of a race condition during updates
    leading to corrupt bloom filter).
  Redo locking of lrc and rli lists.  Intended to use same lock code to control
    access to bloom filter but this turned out to be unnecessary since
    bloom filter is only recreated when rlilist is write locked which is
    sufficient protection, in combination with bloom filter mutex mentioned
    above.
  Cleaned up some function names.
  Bloom filters now support immediate mode updates.  If enabled a bloomfilter
    is sent to RLIs whenever it changes (within outbuftime seconds).

12/06/02 version 1.1.3
  Server can now be reconfigured as an LRC or RLI server (or not) on the fly.

12/09/02 version 1.1.3
  Add globus_rls_client_set_configuration(), allows changing server config
    options via the API while the server is running.
  Clean up config option names (old names still work).
  Redo periodic event handling (softstate updates, expires) to minimize
    thread creation/destruction.  Apparently if a thread makes a call
    to SQLConnect() when the thread exits it hangs around in the thread
    table (which on linux is 1024) even if it does a SQLDisconnect().
    Eventually this fills up the thread table and the server dies.  Presumably
    SQLConnect() is accessing some resource that is not released by
    SQLDisconnect(), so the thread can not be reaped.  Also
    due to a bug in at least some versions of linux pthreads a thread
    must be "detached" (with pthread_detach()) or it will remain in the
    thread table.  globus_thread_create() does this if certain #defines are
    set, but they aren't set on my system.  It's not clear if this is part
    of the problem I saw or not however, since I still saw the problem
    using pthread_create/exit as long as my threads did SQLConnect()s.
    In any event a single thread is now created to handle periodic activity,
    which remain for the lifetime of the server.  The alarm handler
    signals the events when they need to execute.

12/11/02 version 1.1.4
  get_configuration returns options in ascending order.
  Too many simultaneous connections can run the server out of open
    file descriptors.  Add maxconnections option to limit them.

12/17/02 version 1.1.5
  Create server_setup package, move SXXrls and globus-rls-server.conf to it.
  Makes it possible to create globus binary bundles.

12/21/02 version 1.1.5
  Use pthread_cond_timedwait to wait for next event to process (or
    incoming request) instead of setting an alarm.  On linux the pthread
    signal functions are not async-signal safe and shouldn't be called
    from a signal handler.  May fix problem with server blocking on a
    select() forever even when new packets arrive on socket.

1/20/03 version 1.1.6
  Add new error code GLOBUS_RLS_ATTR_VALUE_NEXIST.
  Add INSTALL.html doc with bundle installation directions.

1/23/03 version 1.1.7
  Added -lglobus_rls_client to <pkg_libs> in pkg_data file.
  Wrong comparison when testing if event waiting to execute.
  Added -t option to globus-rls-admin to set timeout.
  Return GLOBUS_RLS_BADARG is string field about to be inserted into db
    is too long.
  Add result_limit configure option, to limit the number of results returned
    by a query.

2/2/03 version 1.1.8
  Fix bug in SXXrls when IODBC installed in separate location.
  Fix bug when adding empty string as attribute value.
  Add globus_rls_client_lrc_attr_modify().

2/11/03 version 2.0.0
  Add lrc_mapping_exist, rli_mapping_exist functions.
  Server result limit fully supported.
  Include test program and script.
  API uses globus_result_t to return status, not int.

2/17/03 version 2.0.1
  rli_exists, rli_mapping_exists didn't work when bloom filters enabled.
  attr_value_get returned all attributes even when attr specified by name.
  attr_modify didn't return error when attr not found.

3/6/03 version 2.0.2
  Trim trailing whitespace from DNs in acl entries in config file.

4/14/03 version 2.0.3
  Add bulk query operations.
  Support postgres as well as mysql.

4/29/03 version 2.0.4
  Add bulk update operations.
  Fix HUP signal handler to work on linux (can't call pthread_cond_signal()).
  Fix date parsing problem with Postgres in db_rli_expire().

5/2/03 version 2.0.5
  Use buffered output to minimize packets sent during bulk operations,
  large queries, etc.

5/13/03 version 2.0.6
  Fix race condition that could lead to server hang.

5/13/03 version 2.0.7
  Add -t timeout option to server.

6/10/03 version 2.0.8
  Add bulk attribute operations.
  Server will now start up successfully even if DBMS cannot be connected to.
  Fix table counters, could get off if a transaction was rolled back.

6/30/03 version 2.0.9
  Add bulk operations to RPC doc.

8/12/03 version 2.1.0
  Add support for RLI to RLI updates.
  Clean up dependencies in server-setup package.

9/11/03 version 2.1.1
  Fix race condition in RLI-RLI updates that could corrupt DB.

9/16/03 version 2.1.2
  Added support for Oracle.

10/6/03 version 2.1.3
  Fixes from shishir@isi.edu to valuge_get_bulk, RLSStats in java API.

12/9/03 version 2.1.4
  Fix from shishir@isi.edu for descriptor leak in rli initialization code.
