MySQL 8.3.0
Source Code Documentation
Descriptor Constants (moved from fsp0fsp.c)

Macros

#define XDES_SIZE    (XDES_BITMAP + UT_BITS_IN_BYTES(FSP_EXTENT_SIZE * XDES_BITS_PER_PAGE))
 File extent data structure size in bytes. More...
 
#define XDES_SIZE_MAX    (XDES_BITMAP + UT_BITS_IN_BYTES(FSP_EXTENT_SIZE_MAX * XDES_BITS_PER_PAGE))
 File extent data structure size in bytes for MAX page size. More...
 
#define XDES_SIZE_MIN    (XDES_BITMAP + UT_BITS_IN_BYTES(FSP_EXTENT_SIZE_MIN * XDES_BITS_PER_PAGE))
 File extent data structure size in bytes for MIN page size. More...
 

Enumerations

enum  xdes_state_t {
  XDES_NOT_INITED = 0 , XDES_FREE = 1 , XDES_FREE_FRAG = 2 , XDES_FULL_FRAG = 3 ,
  XDES_FSEG = 4 , XDES_FSEG_FRAG = 5
}
 States of a descriptor. More...
 

Variables

constexpr uint32_t XDES_ID = 0
 The identifier of the segment to which this extent belongs. More...
 
constexpr uint32_t XDES_FLST_NODE = 8
 The list node data structure for the descriptors. More...
 
constexpr uint32_t XDES_STATE = FLST_NODE_SIZE + 8
 contains state information of the extent More...
 
constexpr uint32_t XDES_BITMAP = FLST_NODE_SIZE + 12
 Descriptor bitmap of the pages in the extent. More...
 
constexpr uint32_t XDES_BITS_PER_PAGE = 2
 How many bits are there per page. More...
 
constexpr uint32_t XDES_FREE_BIT = 0
 Index of the bit which tells if the page is free. More...
 
constexpr uint32_t XDES_CLEAN_BIT = 1
 NOTE: currently not used! Index of the bit which tells if there are old versions of tuples on the page. More...
 
constexpr uint32_t XDES_ARR_OFFSET = FSP_HEADER_OFFSET + FSP_HEADER_SIZE
 Offset of the descriptor array on a descriptor page. More...
 
const ulint XDES_FRAG_N_USED = 2
 The number of reserved pages in a fragment extent. More...
 

Detailed Description

Macro Definition Documentation

◆ XDES_SIZE

File extent data structure size in bytes.

◆ XDES_SIZE_MAX

File extent data structure size in bytes for MAX page size.

◆ XDES_SIZE_MIN

File extent data structure size in bytes for MIN page size.

Enumeration Type Documentation

◆ xdes_state_t

States of a descriptor.

Enumerator
XDES_NOT_INITED 

extent descriptor is not initialized

XDES_FREE 

extent is in free list of space

XDES_FREE_FRAG 

extent is in free fragment list of space

XDES_FULL_FRAG 

extent is in full fragment list of space

XDES_FSEG 

extent belongs to a segment

XDES_FSEG_FRAG 

fragment extent leased to segment

Variable Documentation

◆ XDES_ARR_OFFSET

constexpr uint32_t XDES_ARR_OFFSET = FSP_HEADER_OFFSET + FSP_HEADER_SIZE
constexpr

Offset of the descriptor array on a descriptor page.

◆ XDES_BITMAP

constexpr uint32_t XDES_BITMAP = FLST_NODE_SIZE + 12
constexpr

Descriptor bitmap of the pages in the extent.

◆ XDES_BITS_PER_PAGE

constexpr uint32_t XDES_BITS_PER_PAGE = 2
constexpr

How many bits are there per page.

◆ XDES_CLEAN_BIT

constexpr uint32_t XDES_CLEAN_BIT = 1
constexpr

NOTE: currently not used! Index of the bit which tells if there are old versions of tuples on the page.

◆ XDES_FLST_NODE

constexpr uint32_t XDES_FLST_NODE = 8
constexpr

The list node data structure for the descriptors.

◆ XDES_FRAG_N_USED

const ulint XDES_FRAG_N_USED = 2

The number of reserved pages in a fragment extent.

◆ XDES_FREE_BIT

constexpr uint32_t XDES_FREE_BIT = 0
constexpr

Index of the bit which tells if the page is free.

◆ XDES_ID

constexpr uint32_t XDES_ID = 0
constexpr

The identifier of the segment to which this extent belongs.

◆ XDES_STATE

constexpr uint32_t XDES_STATE = FLST_NODE_SIZE + 8
constexpr

contains state information of the extent