To access transaction data
Previous versions of the audit trail files required that transaction data be accessed in sequence. This process was extremely time consuming if the last transaction had to be retrieved from a sequence file.
To speed things up, the audit server now saves the audit file offset internally. The audit server combines the offsets for each audit file, the table name, and the company number, and sends the offsets in a message back to the bshell at the moment of the commit.
The information the audit server sends to the bshell contains this data:
- Tablename
T1
- Company number
C1
- Sequence number of audit
file
S1
- Offset of transaction X1 in sequence file
- Tablename
T2
- Company number
C2
- Sequence number of audit
file
S2
- Offset of transaction
X2
in sequence file
This table shows an example:
Tablename | Company number | Audit file sequence number | Offset in audit file |
---|---|---|---|
ttadv100 | 000 | 001 | 2353 |
tccom010 | 812 | 065 | 1406 |
tfgld045 | 812 | 123 | 56028 |
After the application competes the database update, the data is committed. The bshell requests a transaction ID from the audit server. The audit server generates a sequence number and sends the number back to the bshell together with the transaction information message. The bshell uses this information to create a transaction notification, and sends a commit to the database.