MySQL 9.1.0
Source Code Documentation
rem0types.h File Reference

Record manager global types. More...

#include "data0type.h"
#include "univ.i"

Go to the source code of this file.

Typedefs

typedef byte rec_t
 
using row_version_t = uint16_t
 
typedef enum rec_format_enum rec_format_t
 

Enumerations

enum  rec_format_enum { REC_FORMAT_REDUNDANT = 0 , REC_FORMAT_COMPACT = 1 , REC_FORMAT_COMPRESSED = 2 , REC_FORMAT_DYNAMIC = 3 }
 Innodb row types are a subset of the MySQL global enum row_type. More...
 

Variables

const uint8_t MAX_ROW_VERSION = 255
 
const row_version_t INVALID_ROW_VERSION = UINT16_UNDEFINED
 
constexpr uint32_t REC_MAX_N_FIELDS = 1024 - 1
 
constexpr uint32_t REC_MAX_HEAP_NO = 2 * 8192 - 1
 
constexpr uint32_t REC_MAX_N_OWNED = 16 - 1
 
constexpr uint32_t REC_MAX_N_USER_FIELDS
 
constexpr uint32_t REC_ANTELOPE_MAX_INDEX_COL_LEN = 768
 
constexpr uint32_t REC_VERSION_56_MAX_INDEX_COL_LEN = 3072
 Maximum indexed field length for tables that have atomic BLOBs. More...
 

Detailed Description

Record manager global types.

Created 5/30/1994 Heikki Tuuri

Typedef Documentation

◆ rec_format_t

◆ rec_t

typedef byte rec_t

◆ row_version_t

using row_version_t = uint16_t

Enumeration Type Documentation

◆ rec_format_enum

Innodb row types are a subset of the MySQL global enum row_type.

They are made into their own enum so that switch statements can account for each of them.

Enumerator
REC_FORMAT_REDUNDANT 

REDUNDANT row format.

REC_FORMAT_COMPACT 

COMPACT row format.

REC_FORMAT_COMPRESSED 

COMPRESSED row format.

REC_FORMAT_DYNAMIC 

DYNAMIC row format.

Variable Documentation

◆ INVALID_ROW_VERSION

const row_version_t INVALID_ROW_VERSION = UINT16_UNDEFINED

◆ MAX_ROW_VERSION

const uint8_t MAX_ROW_VERSION = 255

◆ REC_ANTELOPE_MAX_INDEX_COL_LEN

constexpr uint32_t REC_ANTELOPE_MAX_INDEX_COL_LEN = 768
constexpr

◆ REC_MAX_HEAP_NO

constexpr uint32_t REC_MAX_HEAP_NO = 2 * 8192 - 1
constexpr

◆ REC_MAX_N_FIELDS

constexpr uint32_t REC_MAX_N_FIELDS = 1024 - 1
constexpr

◆ REC_MAX_N_OWNED

constexpr uint32_t REC_MAX_N_OWNED = 16 - 1
constexpr

◆ REC_MAX_N_USER_FIELDS

constexpr uint32_t REC_MAX_N_USER_FIELDS
constexpr
Initial value:
=
constexpr uint32_t DATA_N_SYS_COLS
number of system columns defined above
Definition: data0type.h:194
constexpr uint32_t REC_MAX_N_FIELDS
Definition: rem0types.h:59

◆ REC_VERSION_56_MAX_INDEX_COL_LEN

constexpr uint32_t REC_VERSION_56_MAX_INDEX_COL_LEN = 3072
constexpr

Maximum indexed field length for tables that have atomic BLOBs.

This (3072) is the maximum index row length allowed, so we cannot create index prefix column longer than that.