Page Header
Every page starts with a 96 byte header describing the page and its place in the database.
| Key | Name | Description |
|---|---|---|
| Allocation Unit Id | The allocation unit the page belongs to. Not stored directly in the header - derived from the Internal Object Id and Internal Index Id via the allocation metadata | |
00 | Page Address | Address of this page in (File Id:Page Id) format |
00 | Page Type | What the page is used for, e.g. Data, Index, LOB, IAM, PFS, GAM |
00 | Next Page | Address of the next page at the same index level. (0:0) means no next page. Only maintained for index levels - heap pages are not linked |
00 | Previous Page | Address of the previous page at the same index level. (0:0) means no previous page |
00 | Internal Object Id | Internal id of the object the page is allocated to |
00 | Internal Index Id | Internal id of the index the page is allocated to within the object |
00 | Index Level | Level of the page in the index B-Tree. 0 is the leaf level, the root has the highest level |
00 | Slot Count | Number of slots (records) on the page, including ghost records |
00 | Fixed Length Size | Size in bytes of the fixed length portion of the records stored on the page |
00 | Free Count | Number of free bytes on the page |
00 | Free Data Offset | Offset of the first byte after the end of the record data - where the next record would be written |
00 | Reserved Count | Number of bytes reserved by active transactions, e.g. space freed by deletes that have not yet committed |
00 | Transaction Reserved | The number of bytes of Reserved Count reserved by the most recently started transaction |
00 | Torn Bits | Page verification information - torn page protection bits or the page checksum, depending on the database PAGE_VERIFY option |
00 | Flag Bits | Bit flags describing the page, including which page verification type is in use |
00 | LSN (Log Sequence Number) | LSN of the last log record that modified the page, used by recovery to decide if a logged change needs to be applied |
00 | Header Version | Version of the page header format - currently always 1 |
00 | Ghost Record Count | Number of ghost records on the page - records logically deleted but not yet physically removed by the ghost cleanup task |
00 | Type Flag Bits | Bit flags with a meaning specific to the page type |
00 | Internal Transaction Id | Internal id of the most recent transaction to add to the reserved byte count |