Global Data Server Logo Documentation Home  

Directory.exe Gds Agent


This program provides runtime matching between requests and responders.

Startup

During startup, this program creates the file "CrashStartup Directory.Txt". This name does not mean it crashed, rather it encountered unexpected problems. The name CrashStartup was chosen to be very obvious. You may read the contents of this file. If the startup has no problems, this file will be removed.

If you start Directory.exe when "CrashStartup Directory.txt" already exists, it internally switches to a more verbose logging mode and writes more detail of startup progress

Once the startup has created a Query Exchange Billboard, problems are typically logged to both this log file and the Query Exchange error logs

You may run multiple copies of this program and they will attempt to load share decision making, however a single copy is highly recommended.

Support

If you terminate this process, all requests requiring directory assistance will stop and hang. Depending on current configuration this may mean ALL new requests hang.

Internal Operation

Each function (BUCK DATI etc) is given a version number. This number is generally taken from the build date/time of the program.

When client programs request a function, eg Spellcheck("house"), they quickly check if directory assistance is required before placing the query in the READY state. As most programs do not request explicit versions and only one copy exists this step usually does nothing.

If the request does require directory assistance, the request is placed in the DIRECTORY state and Directory.exe will determine what is to happen

The directory program runs through several checks selecting minimum and maximum versions and eventually sets the selecting version into the request and moves the query to READY state. Responder programs honour the version selectors and ignore requests they cannot process

New versions

If you have a new version of a function (eg Spellcheck), then directory will insert a "minimum version" rule on all requests so that only the new version is required. This versioning is available for each environment seperately, so you can run production at different versions to test and dev

Directory is capable of blocking versions also. So if version 124 of the Spellcheck function is completely broken it will ensure no requests are selected by this version, unless the requestor explicitly asks for that version

Error Codes