uint32_t page_no_t
Page number.
Definition: api0api.h:46
The database buffer pool high-level routines.
Data dictionary global types.
The r-tree define from MyISAM.
struct matched_rec matched_rec_t
std::list< rtr_info_t *, ut::allocator< rtr_info_t * > > rtr_info_active
Definition: gis0type.h:149
struct rtr_info_track rtr_info_track_t
struct rtr_rec_move rtr_rec_move_t
gis0rtree.h
constexpr uint32_t RTR_LEAF_LATCH_NUM
Definition: gis0type.h:106
std::vector< rtr_rec_t, ut::allocator< rtr_rec_t > > rtr_rec_vector
Definition: gis0type.h:82
constexpr uint32_t RTR_MAX_LEVELS
Definition: gis0type.h:101
std::vector< node_visit_t, ut::allocator< node_visit_t > > rtr_node_path_t
Definition: gis0type.h:75
struct rtree_ssn rtr_ssn_t
struct node_visit node_visit_t
uint32_t node_seq_t
Definition: gis0type.h:58
struct rtr_info rtr_info_t
Vectors holding the matching internal pages/nodes and leaf records.
The simple hash table utility.
page_cur_mode_t
Definition: page0types.h:176
Query graph global types.
Record manager global types.
byte rec_t
Definition: rem0types.h:41
Row operation global types.
The tree cursor: the definition appears here only for the compiler to know struct size!
Definition: btr0cur.h:668
Definition: btr0pcur.h:99
The buffer control block structure.
Definition: buf0buf.h:1747
Data structure for an index.
Definition: dict0mem.h:1041
Structure for an SQL data tuple of fields (logical record)
Definition: data0data.h:696
Definition: gis0type.h:85
byte rec_buf[UNIV_PAGE_SIZE_MAX *2]
buffer used to copy matching rec
Definition: gis0type.h:87
bool valid
whether result in matched_recs or this search is valid (page not dropped)
Definition: gis0type.h:94
byte * bufp
aligned buffer point
Definition: gis0type.h:86
rtr_rec_vector * matched_recs
vector holding the matching rec
Definition: gis0type.h:91
ib_mutex_t rtr_match_mutex
mutex protect the match_recs vector
Definition: gis0type.h:92
bool locked
whether these recs locked
Definition: gis0type.h:97
buf_block_t block
the shadow buffer block
Definition: gis0type.h:89
ulint used
memory used
Definition: gis0type.h:90
The info structure stored at the beginning of a heap block.
Definition: mem0mem.h:302
Definition: gis0type.h:61
double mbr_inc
whether this node needs to be enlarged for insertion
Definition: gis0type.h:71
page_no_t child_no
child page num if for parent recording
Definition: gis0type.h:65
btr_pcur_t * cursor
cursor structure if we positioned FIXME: there is no need to use whole btr_pcur_t,...
Definition: gis0type.h:67
page_no_t page_no
the page number
Definition: gis0type.h:62
node_seq_t seq_no
the SSN (split sequence number
Definition: gis0type.h:63
ulint level
the page's index level
Definition: gis0type.h:64
Definition: que0que.h:242
Definition: gis0type.h:152
rtr_info_active * rtr_active
Active search info.
Definition: gis0type.h:153
ib_mutex_t rtr_active_mutex
mutex to protect rtr_active
Definition: gis0type.h:154
Vectors holding the matching internal pages/nodes and leaf records.
Definition: gis0type.h:109
ulint tree_savepoints[RTR_MAX_LEVELS+RTR_LEAF_LATCH_NUM]
savepoint used to release latches/blocks on each level and leaf level
Definition: gis0type.h:120
rtr_mbr_t mbr
the search MBR
Definition: gis0type.h:123
bool mbr_adj
whether mbr will need to be enlarged for an insertion operation
Definition: gis0type.h:136
page_cur_mode_t search_mode
current search mode
Definition: gis0type.h:141
dict_index_t * index
index it is searching
Definition: gis0type.h:127
const dtuple_t * search_tuple
search tuple being used
Definition: gis0type.h:139
bool fd_del
found deleted row
Definition: gis0type.h:138
buf_block_t * tree_blocks[RTR_MAX_LEVELS+RTR_LEAF_LATCH_NUM]
tracking pages that would be locked at leaf level, for future free
Definition: gis0type.h:117
matched_rec_t * matches
struct holding matching leaf records
Definition: gis0type.h:114
rtr_node_path_t * parent_path
vector holding parent pages during search
Definition: gis0type.h:111
bool need_page_lock
whether we will need predicate page lock the tree
Definition: gis0type.h:131
rtr_node_path_t * path
vector holding matching pages
Definition: gis0type.h:110
que_thr_t * thr
the search thread
Definition: gis0type.h:124
ib_mutex_t rtr_path_mutex
mutex protect the "path" vector
Definition: gis0type.h:115
bool allocated
whether this structure is allocate or on stack
Definition: gis0type.h:134
btr_cur_t * cursor
cursor used for search
Definition: gis0type.h:126
bool * is_dup
whether the current rec is a duplicate record.
Definition: gis0type.h:145
mem_heap_t * heap
memory heap
Definition: gis0type.h:125
bool need_prdt_lock
whether we will need predicate lock the tree
Definition: gis0type.h:128
In memory representation of a minimum bounding rectangle.
Definition: rtree_support.h:40
Definition: gis0type.h:167
rec_t * new_rec
new record location
Definition: gis0type.h:169
bool moved
whether lock are moved too
Definition: gis0type.h:170
rec_t * old_rec
record being moved in old page
Definition: gis0type.h:168
Definition: gis0type.h:77
bool locked
whether the record locked
Definition: gis0type.h:79
rec_t * r_rec
matched record
Definition: gis0type.h:78
Definition: gis0type.h:160
node_seq_t seq_no
the SSN (node sequence number)
Definition: gis0type.h:162
ib_mutex_t mutex
mutex protect the seq num
Definition: gis0type.h:161
Transaction system global type definitions.
Version control for database, common definitions, and include files.
unsigned long int ulint
Definition: univ.i:406
constexpr size_t UNIV_PAGE_SIZE_MAX
Maximum page size InnoDB currently supports.
Definition: univ.i:323
Dynamic memory allocation routines and custom allocators specifically crafted to support memory instr...
A vector of pointers to data items.