FairCom DB transaction log formats periodically change as new features are added. Previously, error LFRM_ERR (666) indicated an existing transaction log was not compatible with the server or stand-alone application trying to read a log file at the start of execution.
A forward compatibility check, with description codes are now placed in CTSTATUS.FCS with additional details about log incompatibility. The forward compatibility check fails if an older build detects that transaction log requiring a feature not supported in the old logic.
Details about log incompatibility are demonstrated in this sample output:
Fri Sep 02 13:27:02 2005
- User# 00001 Incompatible log file format...[7: 00400200x 00600290x]
The additional details are contained in the square brackets. The first number is an incompatibility code as described in the following table.
Incompatibility Code |
Description |
1 |
Log does not support HUGE files. |
2 |
Log requires HUGE file support. |
3 |
Log does not support 6-byte transaction numbers. |
4 |
Log requires 6-byte transaction numbers. |
5 |
Forward compatibility error: compare the two hex words. |
6 |
Log does not support extended TRANDSC structure (ctXTDLOG). |
7 |
Log requires extended TRANDSC support (ctXTDLOG). |
8 |
Log does not support log compression (ctCMPLOG). |
9 |
Log requires log compression support (ctCMPLOG). |
The two hex numbers in the square brackets are bit maps. The first is derived from the log file and the second is from the build line. When the first number in the square brackets is 5, bits turned on in the first hex word, but not in the second hex word indicate which features the log requires that the logic does not support.