System Architecture 2-121
Structure of a Dbspace Page
Page Header
The page header includes six components:
Page identification number (address of the page on disk)
Number of slot table entries used on the page (used to calculate
where to locate the next slot table entry)
Number of free bytes left on the page
Pointerto the contiguous free space on the page that lies between the
last data entry and the first slot table entry
Timestamp that changes each time the page contents are modified
Two index-related pointers (used if the page is used as an index
page)
Timestamp
Thepage-header timestamp and the page-ending timestamp function as a pair to
validate page consistency. Each time the page contents are modified, a
timestamp is placed in the page header. At the end of the write, the header
timestampis copied into the last four bytes on the page. Subsequent access to
thepage checks both timestamps. If the two timestamps differ, this inconsis-
tency is reported as a part of consistency checking. (Refer topage 4-6 for
further information about consistency checking errors and corrective
actions.)
Slot Table
The slot table is a string of 4-byte slot table entries that begins at the page-
ending timestamp and grows toward the beginning of the page. The entries
inthe slot table enable OnLine user processes to find data on dbspace pages.
Eachentry in the slot table describes one segment of data that is stored in the
page.The number of the slot table entry is stored as a 1-byte unsigned integer.
Theslot table entries cannot exceed 255. This is the upper limit on the number
of rows, or parts of a row, than can be stored in a single data page.
The slot table entry is composed of two parts:
Page offset where the data segment begins
Length of the data segment