Allows newly created non-transaction files to be created in PREIMG mode. These will automatically switch back to non-transaction when accessed by a non-transaction application. Files already created, but opened by a server with an applicable AUTO_PREIMG will be switched to PREIMG unless the file is an index without room for key level locks. Such a failed conversion at open is noted in CTSTATUS.FCS. filespec may contain wildcards.
Not only are files switched to PREIMG mode, but automatic ISAM PREIMG transactions will be launched. This permits an application to be run without any code change, and only a change to the configuration file if it is desired to use PREIMG files.
If a file is included in both AUTO_PREIMG and AUTO_TRNLOG, entries, then the AUTO_PREIMG entry will prevail.
Note: Consistency between data files cannot be ensured unless explicit transactions that preserve atomicity of updates are implemented by the application.
This also supports automatic transactions for low level operations if and only if the file in question has been opened under transaction control because of AUTO_PREIMG or AUTO_TRNLOG, configuration entries. By low level operations we mean updates to a data or index file that result from non-ISAM level API calls such as WRTREC(), NEWVREC() or ADDKEY(). Even if the file is included in one of these configuration entries, automatic low level transactions will not occur if the file is opened with inherent transaction attributes.
The server configuration keyword PREIMAGE_DUMP causes PREIMG files included in a dynamic dump to be automatically changed to TRNLOG files during the dump. Therefore, files converted by AUTO_PREIMG can be included in a dynamic dump that invokes the PREIMAGE_DUMP option. Each data file and associated indexes will be restored to a consistent point.
Note: AUTO_PREIMG accepts wildcard file specifications (see FairCom DB Standard Wildcards).
Files that already have transaction attributes are not affected by the configuration entries. An index file or c-tree Superfile host created without transaction support (and without these keywords) will not be able to be switched at open to transaction support. If such a file is included in the configuration lists for these key words, then the open will cause a CTSTATUS.FCS warning message with the name of the file.