maximum tables files
The number files indicates the maximum number of Zim files that Zim Server can process simultaneously for all databases.
Usually (but not always), a good indication for the maximum files in a particular database is to use the highest Zim file number (that is, ZIM0150, ZIM2010, etc.). In this case, 150 or 2010 can be the maximum files.
As an example, if Zim Server is currently controlling two databases, and one of them has 300 tables and the other one has 500 tables, then this configuration option must specify at least 800 files (a good number would 1000 in this case). By tables, it is meant entity sets and relationships with fields.
Valid Settings
A number from 100 to 32,000.
object timeout seconds
This time indicates how long Zim Server has to wait to acquire control over some objects (locks, buffers, etc.) that are not available in memory before deadlocking the current transaction.
The number of seconds is big enough to wait for the object to sleep, go to a pending list if necessary, and then be available for the transaction.
If you want to minimize this delay, set the value to 1. However, this will increase the consumption of CPU because Zim Server needs to check more often the availability of the resources needed. If your application performs well with a lower value (like the suggested of 1), than this should be your choice for this option.
Valid Settings
Range between 0 to 60.
scatter table entries nn
Maximum number of entries pointing to lists of blocks currently in use. Each entry corresponds to a block (located in memory) used by a particular user.
Each block is described by the configuration option Scatter Table Links. Every time a user uses a block, a table entry is used. Therefore, if more than one user are using the same block, each user allocates one table entry, but all of them point to the same table link.
The number nn must be greater than the number of Scatter Table Links.
Valid Settings
A number from 50,000 to 30,000,000.
Windows | 1,000,000 |
UNIX | 1,000,000 |
quick locks locks
To set a lock on a specific block of data, Zim Server resorts to two levels of locking: first, it tries to set a very fast lock held on a small table of locks. This is the quick locks table with the size of locks. Then, if not possible, Zim Server uses secondary locks (refer to Secondary Lock Groups and Secondary Lock Group Size).
A quick lock table is maintained for each lock specified in Maximum Locks and keeps track of which users are responsible for each lock.
Valid Settings
A number from 5 to 100.
files per transaction files
This configuration option manages the number of files that a single transaction can handle within its scope. The parameter files actually indicates how many entity sets and relationships with fields can be processed in the same Zim command for implicit transactions or for all commands within the boundaries of a TRANSACTION and ENDTRANSACTION/QUITTRANSACTION commands.
If using roles defined over either an entity set or a relationship with fields, the roles and their corresponding real objects are counted only once.
Valid Settings
Range between 5 to 100.
audit path path
where path is the disk directory path where temporary audit transaction files are placed. If this option is not set, this directory is created under the directory where the Zim product was installed.
The temporary transaction files keep track of ongoing transactions before being committed to the real Zim files. They are also used to automatically recover the databases being served by Zim Server in case of a previous crash.
Valid Settings
Any disk directory path.
backup path path
The path is a directory path where compacted transaction log files are stored in order to be used by Zim Backup Server. These files correspond to committed transactions from all databases being served by Zim Server and can be placed anywhere in the network so that they are saved in case of a disk crash.
If this configuration option is not present, Zim Server does not write compacted transaction log files for future or immediate use by Zim Backup Server.
Valid Settings
Any directory path.
Windows | None is set |
UNIX | None is set |
maximum file locks locks
The number locks indicates how many locks a Zim file can accept before scalating to a file lock. This saves time and memory to manage global locks for all users because all locks applied to that file will be released and a single for the entire file will be then applied.
The higher this number of locks, the bigger the level of concurrency between users, but it can consume more rapidly the global number of locks.
Valid Settings
A number from 0 to 10,000.
record group size nn
This is the size of a group of information related to blocks of data, like quick locks, locks, references to a block and users accessing blocks. Each file (that is, record group) can have this many record groups to speed up to relationship between real blocks of data in memory and real blocks of data on disk.
Valid Settings
A number from 16 to 256.
maximum record groups nn
The number nn indicates how many files in total, for all databases, Zim Server can handle simultaneously, that is, kept open at same time.
Valid Settings
A number from 100 to 200,000.