Previous Topic

Next Topic

PreImage Memory Files are no Longer Promoted to TRANLOG files During a Dynamic Dump

The c-treeACE PREIMAGE_DUMP YES configuration option promotes PREIMG files to TRANLOG files during a dynamic dump. An unintended side effect of this option was that PREIMG memory files were also promoted to TRANLOG files. As a result, memory index nodes could be placed onto the list of updated buffers for transaction controlled files. As these buffers are never flushed to disk (because memory files are never written to disk) these entries resulted in the number of active transaction logs to increase, as c-treeACE keeps all transaction logs beginning with the transaction log in which the transaction on the memory file promoted to the TRANLOG mode occurred.

When a dynamic dump is performed with the PREIMAGE_DUMP YES configuration option specified in ctsrvr.cfg, and PREIMG memory files are open, c-treeACE could exhibit any of the following symptoms:

  • The number of transaction logs may increase, with CTSTATUS.FCS showing a reason of "Cache/Buffer Pending Flush"
  • Creating a memory data file during a dynamic dump fails with error ITIM_ERR (160)
  • c-treeACE may terminate during a checkpoint
  • Automatic recovery fails with error 12 attempting to open a non-existent memory data file

Dynamic dump logic has been modified such that PREIMG memory files are no longer promoted to TRANLOG files to prevent this situation.