Log Record Types for Smart Large Objects

All smart-large-object log records are the SBLOB type. Each smart-large-object log record contains six header columns, described in Logical-Log Record Header; the record subtype; and additional information. The information that appears varies, depending on record subtype.

Record Subtypes for Smart Large Objects lists all the smart-large-object record types. The Subtype column describes the smart-large-object record type. The Action column indicates the type of database server action that generated the log entry. The Additional Columns and Format columns describe what information appears for each record type.
Table 1. Record Subtypes for Smart Large Objects

The table provides record subtypes, actions, additional columns and formats for Smart Large Objects.

Record Subtype Action Additional Columns Format
CHALLOC Allocate chunk extent. extent [chk, page, len] Decimal
flags Hexadecimal
CHCOMBINE Combine two pages in the user-data extent list. chunk number Decimal
first page Decimal
second page Decimal
CHFREE Frees chunk extent. extent [chk, page, len] Decimal
CHSPLIT Split a page in the user-data extent list. chunk number Decimal
UDFET page to split Decimal
CREATE Create smart large object. smart-large-object ID [sbs, chk, page, oid] Decimal
number of extents in lomaphdr Decimal
DELETE Delete a smart large object at commit. smart-large-object ID [sbs, chk, page, oid] Decimal
EXTEND Add extent to an extent list of a smart large object. smart-large-object ID [sbs, chk, page, oid] Decimal
extent [chk, page, len] Decimal
lomap overflow page number Decimal
HDRUPD Update smart-large-object header page. smart-large-object ID [sbs, chk, page, oid] Decimal
old EOF offset String
new EOF offset String
old times Decimal
new times Decimal
PDELETE Queue a smart large object for deletion at commit. smart-large-object ID [sbs, chk, page, oid] Decimal
PTRUNC Queue a smart large object for truncation at commit. smart-large-object ID [sbs, chk, page, oid] Decimal
old offset String
new offset String
REFCOUNT Increment or decrement the reference count of a smart large object. smart-large-object ID [sbs, chk, page, oid] Decimal
1 if increment; 0 if decrement Decimal
UDINSERT, Append new user data. chunk Decimal
UDINSERT_LT page within chunk Decimal
offset within page Decimal
data length Decimal
UDUPAFT, Update user-data after-image if a UDWRITE is too expensive. chunk Decimal
UDUPAFT_LT page within chunk Decimal
offset within page Decimal
data length Decimal
UDUPBEF, Update user-data beforeimage if a UDWRITE is too expensive. chunk Decimal
UDUPBEF_LT page within chunk Decimal
offset within page Decimal
data length Decimal
UDWRITE, Update user data (difference image). chunk Decimal
UDWRITE_LT page within chunk Decimal
offset within page Decimal
length before write Decimal
length after write Decimal
number of different image pieces Decimal

For an example of smart-large-object records in onlog output, see smart-large-object log records in the chapter on what is the logical log in the Informix® Administrator's Guide.

Smart-Large-Object Records in onlog Output shows an example of smart-large-object records in onlog output. The first two records show that an extent was freed. The next group of records, flanked by BEGIN and COMMIT, shows the allocation of storage and creation of the smart large objects.
Figure 1: Smart-Large-Object Records in onlog Output
addr    len   type   xid       id  link     subtype  specific-info

4e8428   40   SBLOB    8        0  4e7400   CHFREE   (2,53,421)
4e8450   40   SBLOB    8        0  4e8428   CHFREE   (2,579,421)

c8018    40   BEGIN    8        3  0        07/13/98 10:23:04 34       informix
c8040    264  SBLOB    8        0  c8018    CREATE   [2,2,1,900350517]  10
c8148    44   SBLOB    8        0  c8040    CHALLOC  (2,53,8) 0x1
c8174    68   SBLOB    8        0  c8148    EXTEND   [2,2,1,900350517] (2,53,8) -1
c81b8    264  SBLOB    8        0  c8174    CREATE   [2,2,2,900350518]  10
c82c0    44   SBLOB    8        0  c81b8    CHALLOC  (2,61,1) 0x1
c82ec    68   SBLOB    8        0  c82c0    EXTEND   [2,2,2,900350518] (2,61,1) -1
c8330    56   SBLOB    8        0  c82ec    REFCOUNT [2,2,1,900350517] 1
c8368    56   SBLOB    8        0  c8330    REFCOUNT [2,2,2,900350518] 1
c83a0    36   COMMIT   8        0  c8368    07/13/98 10:23:05

c83c4    40   BEGIN    8        3  0        07/13/98 10:23:05 34       informix
c83ec    264  SBLOB    8        0  c83c4    CREATE   [2,2,3,900350519]  10
c84f4    44   SBLOB    8        0  c83ec    CHALLOC  (2,62,1) 0x1
c8520    68   SBLOB    8        0  c84f4    EXTEND   [2,2,3,900350519] (2,62,1) -1
c8564    56   SBLOB    8        0  c8520    REFCOUNT [2,2,3,900350519] 1
c859c    36   COMMIT   8        0  c8564    07/13/98 10:23:05