c-tree RTG
The following suggestions are applicable to c-treeRTG:
General
• Avoid accessing files via network drives or UNC paths. Start the c-tree Server on the machine where files are stored instead.
Server-side
• Use the latest c-tree version available.
• Enable the SHAREMEM protocol in ctsrvr.cfg, if not yet enabled.
• In thin client it’s better to call
C$LOCKPID instead of using the BaseLockManager if you need to know who’s locking a record.
• In thin client you can run the c-tree server in the same process as isCOBOL Server. Set
iscobol.ctree.bound_server (boolean) to true in the isCOBOL Server configuration. The c-tree server will start as part of the isCOBOL Server process at the first OPEN of an indexed file performed by a Client. Working in this mode, the performance is better than having c-tree server running as a separate process. It’s still possible to connect to the c-tree server using external tools, utilities and runtimes.
• If your files are under transaction with logging, consider setting
DELAYED_DURABILITY and increase the value of
LOG_SPACE to 1 GB in ctsrvr.cfg.
Client-side
• Take advantage of prefetch and batchaddition where applicable. For details:
Configuration via CTREE_CONF | Configuration via iscobol.properties |
---|
| |
| |
• Avoid the use of a file connector, if possible. Use ctreej instead.
• For temporary files, memory files should be used. For details:
Configuration via CTREE_CONF | Configuration via iscobol.properties |
---|
| |
• Disable c-tree activity logging, so avoid the following settings:
Configuration via CTREE_CONF | Configuration via iscobol.properties |
---|
| |
• Enabling the ctfixed option forces creating fixed-length record data files as fixed-length c-tree files. If you enable ctfixed, you may see a small performance enhancement as there is additional overhead in processing variable-length record data files.
Configuration via CTREE_CONF | Configuration via iscobol.properties |
---|
| |
• If the COBOL application performs several OPEN operations on the same files, consider to add the files to a pool:
Configuration via CTREE_CONF | Configuration via iscobol.properties |
---|
| |
• c-treeRTG allows data compression so that less disk space is used, which results in performance enhancements while reading and writing to disk. Enabling data compression using the RLE algorithm provides the advantages of compressed data with a very small impact on CPU usage. Since most applications are saturated at the I/O level, the slight increase in CPU usage but less overhead on the I/O channel typically results in performance gains.
Configuration via CTREE_CONF | Configuration via iscobol.properties |
---|
| |
• The optimisticadd option enables adding keys before the data during WRITE operations. When optimisticadd is disabled, c-tree attempts to add unique keys before adding the data record. This eliminates the overhead of deleting a data record when the unique key check fails, speeding up the insert process. Disable optimisticadd if the COBOL application frequently performs WRITE operations conflicting with existing records.
Configuration via CTREE_CONF | Configuration via iscobol.properties |
---|
| |
• The deferautocommit option turns on optimization that improves performance for functions that use autocommit. Similar to the c-tree
DELAYED_DURABILITY keyword, guarantees atomicity and consistency of transaction but not durability because the last transaction could be lost.
Configuration via CTREE_CONF | Configuration via iscobol.properties |
---|
| |