KB Article #190446
Improve CFT database response time
Problem
CFTUTIL is now based on a database, and database responses can be slow.
Resolution
Starting with Transfer CFT V3.10, Transfer CFT stores and manages objects such as CFTPARM, CFTPART, and CFTSEND in an SQL database.
Transfer CFT also enables the integrity control feature by default (mac=yes). This feature checks the CFTPARM, CFTPART, CFTPKI, CFTUCONF, and CFTCOM database files for corrupted records. When this feature detects a corrupted record, Transfer CFT reports it in the cft.out trace file and makes the record inaccessible. The only possible action is to delete the corrupted record. This situation can occur, for example, if a third party modifies a record outside of the Transfer CFT product.
Because integrity control is enabled by default, database requests may take longer than in earlier versions of Transfer CFT, which used indexed files to manage objects. You may notice this difference particularly when inserting a large number of Transfer CFT objects.
To reduce database request response time, and consequently improve CFTUTIL execution time, you can rebuild the database with the mac parameter set to no, which disables integrity control.
Procedure
- Back up the Transfer CFT configuration:
CFTUTIL CFTEXT fout=myconfig.cfg - Back up the Transfer CFT PKI configuration:
PKIUTIL PKIEXT fout=mypkiconfig.out - Rebuild the database with mac=no and import the Transfer CFT configuration backup:
cftinit -mac=no myconfig.cfg - Recreate the Transfer CFT PKI database:
PKIUTIL pkifile mode=delete,fname=%env:CFTPKU%
PKIUTIL pkifile mode=create,fname=%env:CFTPKU%,mac=no - Import the Transfer CFT PKI configuration backup:
PKIUTIL config type=input,fname=mypkiconfig.out
Note
After rebuilding the database with a modified mac parameter, you must recreate the Transfer CFT PKI database using the delete and create commands.