GT 5.0.0 Release Notes: RLS

1. Component Overview

The Replica Location Service (RLS) is a server that provides for the registration and lookup of replica information. Within the RLS, there are two types of services, a catalog service and an index service.

2. Feature summary

Features New in GT 5.0.0

  • None since GT 4.2.1.

Other Supported Features

  • Comprehensive C library for replica registration, replica lookup, replica attributes, index queries, and administrative tasks.
  • Command line (globus-rls-cli) tool for client operations on catalogs and indexes.
  • Command line (globus-rls-admin) tool for administrative tasks.

Deprecated Features

  • None

3. Summary of Changes in RLS

  • Streamlined startup for RLS.

    When the RLS server was started, initialization previously took anywhere from several seconds to minutes, depending on the number of entries in the RLS database. During this time, users could not issue queries to the RLS database.

    The streamlined startup feature allows users to issue read-only queries to the RLS, during initialization. This is achieved by creating Bloom filters during the initialization, in a seperate thread, and disallowing queries that update the database, so as not to interfere with the Bloom filter creation.

  • Improved support for 64-bit operating systems and better compliance with ODBC specifications.

  • Backward compatible with GT 4 RLS protocols, APIs, command-line interfaces, and databases.

4. Bug Fixes

  • Bug 4512: rls query returns incomplete result on 64bit system
  • Bug 6144: LIGO: Steamlined RLS startup
  • Bug 6593: Some fixes for the globus-rls-client package
  • Bug 6594: Some fixes for the globus-rls-server package
  • Bug 6595: Some fixes for the globus-rls-server-setup package
  • Bug 6596: The 250 character limit for lfn's is too small
  • Bug 6750: Format warnings in rls client
  • Bug 6864: Compile warning in server/conf.c -- cast from pointer to integer of different
  • Bug 6865: Modification of DB attribute fails when new value same as current value
  • Bug 6887: RLS Server has bad logit format in get/set configuration
  • Bug 6888: Uninitialized logtype causes get_configuration results to be truncated by client

5. Known Problems

The following problems and limitations are known to exist for RLS at the time of the 5.0.0 release:

5.1. Limitations

  • Threading/Libc Problems: set LD_ASSUME_KERNEL=2.2.5 in your environment and see Section 2, “Debian” for more information.

5.2. Outstanding bugs

  • When a large MySQL database is in use, the RLS server will be unresponsive to user queries for about 30 seconds after startup. The actual duration for which the RLS will be unresponsive depends on a number of factors including the size of the database and the performance of the resource on which the database resides. The estimate of 30 seconds is for a MySQL database with about 20 million entries, on a single CPU (about 2.5 GHz) machine, 1 GB memory and minimal load.
  • Threading/Libc Problems: set LD_ASSUME_KERNEL=2.2.5 in your environment and see Platform Notes for more information.
  • Bug 3656: ACLs cannot be modified dynamically
  • Bug 4141: regexec call in auth.c's auth_getperms
  • Bug 4142: globus-rls-admin -s always indicates RLI does not exist
  • Bug 6085: RLS server crash with GLOBUSTHREAD: pthread_mutex_lock() failed
  • Bug 6239: Wildcard queries with underscores don't work with SQLite
  • Bug 6322: RLS crash on a Sparc/Solaris 10 box (possible duplicate of bug 6356)
  • Bug 6356: RLS crash on x86/Solaris 10 box (patch available)
  • Bug 6662: Unable to install globus_database_sqliteodbc on 64-bits ppc (Suse 10) platform

6. Technology dependencies

RLS depends on the following GT components:

  • globus_core
  • globus_common
  • globus_io
  • globus_gssapi_gsi
  • globus_usage

RLS depends on the following 3rd party software:

  • RDBMS: SQLite*, MySQL, PostgreSQL, or Oracle
  • ODBC manager: iODBC, unixODBC
  • ODBC driver: SQLite-ODBC*, MyODBC, psqlODBC, or Oracle

* The RLS comes installed with and configured to use these components.

7. Tested platforms

Tested platforms for RLS include Debian Lenny on AMD64, and CentOS 5.3 on AMD64.

8. Backward compatibility summary

Protocol changes since GT 4.2.x

  • None

API changes since GT 4.2.x

  • None

Exception changes since GT 4.2.x

  • None

Schema changes since GT 4.2.x

  • None

9. Associated Standards

Associated standards for RLS:

  • The RLS is implemented as a conventional service and, as such, does not conform to the WSRF or other WS set of specifications.

10. For More Information

See Replica Location Service (RLS) for more information about this component.