Product Documentation

FairCom DB V12 Release Notes

Previous Topic

Next Topic

TransactionHistory() fixes

The following bugs in the TransactionHistory() function have been fixed:

  • Forward search did not find any entries for the file even though they exist in the logs.
  • The function returned success but did not return data to the client. As a result, the input buffer contained whatever value it contained on input, which could be an uninitialized value.
  • Memory leaks.
  • Backward search might not find entries that preceded an automatic recovery.
  • Backward or forward search might not find entries if a file's file ID was reassigned.

To use transaction history, the following option must be added to ctsrvr.cfg before the log entries that transaction history is going to scan are written to the transaction logs:

COMPATIBILITY TRAN_HISTORY_LOG_ENTRIES

If transaction history is called without this option enabled, it returns a not supported error (454) and logs the following message to CTSTATUS.FCS:

“Transaction history requires COMPATIBILITY TRAN_HISTORY_LOG_ENTRIES in ctsrvr.cfg, and the transaction log entries must be written with this option in effect.”

New options have been added to the transaction history example program, trnhis, to allow specifying backward or forward scan and optional starting transaction log number. If not specified, the log number for a backward scan defaults to the server's current transaction log, and for a forward scan defaults to the server's oldest active transaction log.

Limitation: In single-user tranproc mode on Windows, the history function fails with error 611 if run on a transaction log that has been created and not yet closed and reopened. If this error occurs, restart the single-user process so the history function can access the transaction log.

TOCIndex