NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+ ">

The Zebra Configuration File

The Zebra configuration file, read by zebraidx and zebrasrv defaults to zebra.cfg unless specified by -c option.

You can edit the configuration file with a normal text editor. parameter names and values are separated by colons in the file. Lines starting with a hash sign (#) are treated as comments.

If you manage different sets of records that share common characteristics, you can organize the configuration settings for each type into "groups". When zebraidx is run and you wish to address a given group you specify the group name with the -g option. In this case settings that have the group name as their prefix will be used by zebraidx. If no -g option is specified, the settings without prefix are used.

In the configuration file, the group name is placed before the option name itself, separated by a dot (.). For instance, to set the record type for group public to grs.sgml (the SGML-like format for structured records) you would write:

    public.recordType: grs.sgml

To set the default value of the record type to text write:

    recordType: text

The available configuration settings are summarized below. They will be explained further in the following sections.

group .recordType[.name]: type

Specifies how records with the file extension name should be handled by the indexer. This option may also be specified as a command line option (-t). Note that if you do not specify a name, the setting applies to all files. In general, the record type specifier consists of the elements (each element separated by dot), fundamental-type, file-read-type and arguments. Currently, two fundamental types exist, text and grs.

group.recordId: record-id-spec

Specifies how the records are to be identified when updated. See the Section called Locating Records.

group.database: database

Specifies the Z39.50 database name.

group.storeKeys: boolean

Specifies whether key information should be saved for a given group of records. If you plan to update/delete this type of records later this should be specified as 1; otherwise it should be 0 (default), to save register space. See the Section called Indexing with File Record IDs.

group.storeData: boolean

Specifies whether the records should be stored internally in the Zebra system files. If you want to maintain the raw records yourself, this option should be false (0). If you want Zebra to take care of the records for you, it should be true(1).

register: register-location

Specifies the location of the various register files that Zebra uses to represent your databases. See the Section called Register Location.

shadow: register-location

Enables the safe update facility of Zebra, and tells the system where to place the required, temporary files. See the Section called Safe Updating - Using Shadow Registers.

lockDir: directory

Directory in which various lock files are stored.

keyTmpDir: directory

Directory in which temporary files used during zebraidx's update phase are stored.

setTmpDir: directory

Specifies the directory that the server uses for temporary result sets. If not specified /tmp will be used.

profilePath: path

Specifies a path of profile specification files. The path is composed of one or more directories separated by colon. Similar to PATH for UNIX systems.

attset: filename

Specifies the filename(s) of attribute set files for use in searching. At least the Bib-1 set should be loaded (bib1.att). The profilePath setting is used to look for the specified files. See the Section called The Attribute Set (.att) Files in Chapter 8

memMax: size

Specifies size of internal memory to use for the zebraidx program. The amount is given in megabytes - default is 4 (4 MB).

root: dir

Specifies a directory base for Zebra. All relative paths given (in profilePath, register, shadow) are based on this directory. This setting is useful if your Zebra server is running in a different directory from where zebra.cfg is located.