Long field manager log records are written only if a database is configured with LOG RETAIN on or USEREXITS enabled; They are written whenever long field data is inserted into a table. When long field data is updated, the update is treated as a delete of the old long field value, followed by an insert of the new value.
To conserve log space, long field data inserted into tables is not logged if the database is configured for circular logging. In addition, when a long field value is updated, the before image is shadowed and not logged.
All long field manager log records begin with a header.
All long field manager log record offsets are from the end of the log
manager log record header.
Table 101. Long Field Manager Log Record Header (LongFieldLogRecordHeader)
Description | Type | Offset (Bytes) | ||
---|---|---|---|---|
Originator code (component identifier = 3) | unsigned char | 0(1) | ||
Operation type | unsigned char | 1(1) | ||
Pool identifier | unsigned short | 2(2) | ||
Object identifier | unsigned short | 4(2) | ||
Parent pool identifiera | unsigned short | 6(2) | ||
Parent object identifierb | unsigned short | 8(2) | ||
Total Length: 10 bytes | ||||
|
This log record is written whenever long field data is inserted. The length
of the data is rounded up to the next 512-byte boundary.
Table 102. Add Long Field Record Log Record Structure
Description | Type | Offset (Bytes) | ||
---|---|---|---|---|
Log header | LongFieldLogRecordHeader | 0(10) | ||
Long field lengtha | unsigned short | 10(2) | ||
File offsetb | unsigned long | 12(4) | ||
Long field data | char[ ] | 16(variable) | ||
|