The DCAP library is designed to work on the POSIX compatible systems. The library ported and tested under Solaris 7/8, IRIX 6.5 and linux with libc 2.x. No third-party libraries is required.
To build the library, the GNU make should be used. After successefull compilation two libraries will be produced - libdcap.so and libpdcap.so. The first one should be used to link user applications, while the second one can be used as preload library. To avoid deadlocks in preload mode, the library uses some kernel calls directly.
The library is able to handle multiple instances of pnfs and dCache Doors.
To recognize pnfs, the
/<pnfs_mount_point>/<somewhere>/.(get)(cursor)
file is used. If pnfs is correctly configured, this file should exist. To find the
dCache Door, the
/<pnfs_mount_point>/<somewhere>/.(config)(dCache)/dcache.conf
file is used. The file format is the following:
# comment line <door_instance1>:[portnumber] <door_instance2>:[portnumber] ..... <door_instanceN>:[portnumber]If the port number is not specified, the default value 22125 is used. To simulate load balancing, the library chooses one of the instances randomly. It is possible to force the library to use a specific door instance by setting the enviroment variable DCACHE_DOOR. For example:
export DCACHE_DOOR=my_door_instance:24125, or for csh setenv DCACHE_DOOR my_door_instance:24125If a connection to a particular door instance specified by DCACHE_DOOR fails, the library does not try to connect to other doors, listed in the config file.
If the dcap.LOCK file exit in the pnfs, the library will block untill the lock file will be removed.
Last update: $Date: 2005/04/29 12:38:59 $ by Tigran Mkrtchyan.