diff --git a/include/fil0fil.h b/include/fil0fil.h index 53bb496c190..6b8fd4b03d5 100644 --- a/include/fil0fil.h +++ b/include/fil0fil.h @@ -57,9 +57,21 @@ extern fil_addr_t fil_addr_null; page */ #define FIL_PAGE_OFFSET 4 /* page offset inside space */ #define FIL_PAGE_PREV 8 /* if there is a 'natural' predecessor - of the page, its offset */ + of the page, its offset. + Otherwise FIL_NULL. + This field is not set on BLOB pages, + which are stored as a singly-linked + list. See also FIL_PAGE_NEXT. */ #define FIL_PAGE_NEXT 12 /* if there is a 'natural' successor - of the page, its offset */ + of the page, its offset. + Otherwise FIL_NULL. + B-tree index pages + (FIL_PAGE_TYPE contains FIL_PAGE_INDEX) + on the same PAGE_LEVEL are maintained + as a doubly linked list via + FIL_PAGE_PREV and FIL_PAGE_NEXT + in the collation order of the + smallest user record on each page. */ #define FIL_PAGE_LSN 16 /* lsn of the end of the newest modification log record to the page */ #define FIL_PAGE_TYPE 24 /* file page type: FIL_PAGE_INDEX,..., diff --git a/include/rem0rec.h b/include/rem0rec.h index b2f3b9d141b..af11198d001 100644 --- a/include/rem0rec.h +++ b/include/rem0rec.h @@ -19,8 +19,10 @@ Created 5/30/1994 Heikki Tuuri #define REC_MAX_HEAP_NO (2 * 8192 - 1) #define REC_MAX_N_OWNED (16 - 1) -/* Flag denoting the predefined minimum record: this bit is ORed in the 4 -info bits of a record */ +/* Info bit denoting the predefined minimum record: this bit is set +if and only if the record is the first user record on a non-leaf +B-tree page that is the leftmost page on its level +(PAGE_LEVEL is nonzero and FIL_PAGE_PREV is FIL_NULL). */ #define REC_INFO_MIN_REC_FLAG 0x10UL /* Number of extra bytes in an old-style record,