Rocket I

Page maintained by
Reine Gill

Configuring and running the DataBase Handler.

Configuring isdat.server

After installing ISDAT you have to configure the server configuration file isdat.server in the directory


For each project (=server module) there are a number of entries that must be set in order for the server to work correctly. Their names and number varies between projects. Typically they will tell the server in witch directorys to look for the various datafiles.

Syntax in isdat.server

The syntax of isdat.server is quite flexible. isdat.server is designed to be portable between computers. It therfore supports different configurations for different computers in the same file.

The main concept of the file is to write the name of the entry on the left, then directly a colon as an separator, thereafter comes the actual value.

A entry name has the form

       ´computer name´.´project´.´variable´

It is possible to use a wildcard (*) instead of the computer name. This will match all computers but only after any direct matches. There is a project entry called common in this file, it stands for configurations entrys in the server that are same for all server modules.

A data field can have any form but the most common is a directory path. You can use shell variables such as ISDAT_HOME in these paths. They will be passed on to a shell to be expanded. For some modules is it possible provide several directorys bye separating them with a ´:´.
Just a word of warning: be sure the variables in use are set in the context that the server runs in.

Finally, a comment is an row that starts with a # sign.

The Cluster example.

The following rows is taken out of a isdat.server file. They tell the wec module were to look for its datafiles, were to write log files and so on.

# stuff for the cluster satellite
iroc.cluster.rdm:       /data/cluster/RDM:/cdrom       /data/cluster/DDS
iroc.cluster.index:     /data/cluster/index
iroc.cluster.burst:     /data/cluster/burst       /data/cluster/cal
iroc.cluster.log:       /data/cluster/log
plutt.cluster.rdm:      /data/cluster/RDM      /data/cluster/DDS
plutt.cluster.index:    /data/cluster/index
plutt.cluster.burst:    /data/cluster/burst      /data/cluster/cal
plutt.cluster.log:      /data/cluster/log
efw.cluster.rdm:        /data/cluster/RDM:/cdrom        /data/cluster/DDS:/data/cluster/DDS_AL
efw.cluster.index:      /data/cluster/index
efw.cluster.burst:      /data/cluster/burst        /data/cluster/cal
efw.cluster.log:        /data/cluster/log
#*.cluster.rdm:         $HOME/data/cluster/RDM:/cdrom
*.cluster.rdm:          /cdrom
*          $HOME/data/cluster/DDS
*.cluster.index:        $HOME/data/cluster/index
*.cluster.burst:        $HOME/data/cluster/burst
*          $HOME/data/cluster/cal
*.cluster.log:          $HOME/data/cluster/log
*.cluster.DSNdata:      /mnt/cdrom/cluster2                                     
First you will notice that there are several sections for different computers. If any of the first ones fails to match, the module will use the last section with wildcards for the computer name and $HOME/data/ as root for the data directorys. Secondly you will see that some of the rows sets its entry to a list of directorys. A search path just like your shell PATH environment variable.
To know what entrys are avaliable for a module and what to set them to refer to the documentation for that module (The isdat.server distributed with the source code contains defaults for most modules).

Starting the ISDAT server

Starting dbh

Time to start the database handler. First make sure all necessary environment variables are set. Now you can start the server by typing:

       dbh :6 &

where the number can be any number, but in order for your clients to contact the database it must correspond to the value set in ISDAT_DATABASE. Also it should not conflict with the number of any another dbh running on your computer.