68
68
BTR_MODIFY_PREV = 36
71
/* BTR_INSERT, BTR_DELETE and BTR_DELETE_MARK are mutually exclusive. */
73
71
/** If this is ORed to btr_latch_mode, it means that the search tuple
74
will be inserted to the index, at the searched position.
75
When the record is not in the buffer pool, try to use the insert buffer. */
72
will be inserted to the index, at the searched position */
76
73
#define BTR_INSERT 512
78
75
/** This flag ORed to btr_latch_mode says that we do the search in query
80
77
#define BTR_ESTIMATE 1024
82
/** This flag ORed to BTR_INSERT says that we can ignore possible
79
/** This flag ORed to btr_latch_mode says that we can ignore possible
83
80
UNIQUE definition on secondary indexes when we decide if we can use
84
81
the insert buffer to speed up inserts */
85
82
#define BTR_IGNORE_SEC_UNIQUE 2048
87
/** Try to delete mark the record at the searched position using the
88
insert/delete buffer when the record is not in the buffer pool. */
89
#define BTR_DELETE_MARK 4096
91
/** Try to purge the record at the searched position using the insert/delete
92
buffer when the record is not in the buffer pool. */
93
#define BTR_DELETE 8192
95
84
/**************************************************************//**
96
85
Gets the root node of a tree and x-latches it.
97
86
@return root page, x-latched */
105
94
Gets a buffer page and declares its latching order level. */
110
ulint space, /*!< in: space id */
111
ulint zip_size, /*!< in: compressed page size in bytes
112
or 0 for uncompressed pages */
113
ulint page_no, /*!< in: page number */
114
ulint mode, /*!< in: latch mode */
115
const char* file, /*!< in: file name */
116
ulint line, /*!< in: line where called */
117
mtr_t* mtr) /*!< in/out: mtr */
118
__attribute__((nonnull));
119
/** Gets a buffer page and declares its latching order level.
120
@param space tablespace identifier
121
@param zip_size compressed page size in bytes or 0 for uncompressed pages
122
@param page_no page number
123
@param mode latch mode
124
@param mtr mini-transaction handle
125
@return the block descriptor */
126
# define btr_block_get(space,zip_size,page_no,mode,mtr) \
127
btr_block_get_func(space,zip_size,page_no,mode,__FILE__,__LINE__,mtr)
128
/** Gets a buffer page and declares its latching order level.
129
@param space tablespace identifier
130
@param zip_size compressed page size in bytes or 0 for uncompressed pages
131
@param page_no page number
132
@param mode latch mode
133
@param mtr mini-transaction handle
134
@return the uncompressed page frame */
135
# define btr_page_get(space,zip_size,page_no,mode,mtr) \
136
buf_block_get_frame(btr_block_get(space,zip_size,page_no,mode,mtr))
99
ulint space, /*!< in: space id */
100
ulint zip_size, /*!< in: compressed page size in bytes
101
or 0 for uncompressed pages */
102
ulint page_no, /*!< in: page number */
103
ulint mode, /*!< in: latch mode */
104
mtr_t* mtr); /*!< in: mtr */
105
/**************************************************************//**
106
Gets a buffer page and declares its latching order level. */
111
ulint space, /*!< in: space id */
112
ulint zip_size, /*!< in: compressed page size in bytes
113
or 0 for uncompressed pages */
114
ulint page_no, /*!< in: page number */
115
ulint mode, /*!< in: latch mode */
116
mtr_t* mtr); /*!< in: mtr */
137
117
#endif /* !UNIV_HOTBACKUP */
138
118
/**************************************************************//**
139
119
Gets the index id field of a page.
140
120
@return index id */
143
123
btr_page_get_index_id(
144
124
/*==================*/
145
125
const page_t* page); /*!< in: index page */
235
215
ulint space, /*!< in: space where created */
236
216
ulint zip_size,/*!< in: compressed page size in bytes
237
217
or 0 for uncompressed pages */
238
index_id_t index_id,/*!< in: index id */
218
dulint index_id,/*!< in: index id */
239
219
dict_index_t* index, /*!< in: index */
240
220
mtr_t* mtr); /*!< in: mini-transaction handle */
241
221
/************************************************************//**