|
| LeafIndexNodeHandler (BplusTreeMiniTransaction &mtr, const IndexFileHeader &header, Frame *frame) |
|
RC | init_empty () |
|
RC | set_next_page (PageNum page_num) |
|
PageNum | next_page () const |
|
char * | key_at (int index) |
|
char * | value_at (int index) |
|
int | lookup (const KeyComparator &comparator, const char *key, bool *found=nullptr) const |
|
RC | insert (int index, const char *key, const char *value) |
|
RC | remove (int index) |
|
int | remove (const char *key, const KeyComparator &comparator) |
|
RC | move_half_to (LeafIndexNodeHandler &other) |
|
RC | move_first_to_end (LeafIndexNodeHandler &other) |
|
RC | move_last_to_front (LeafIndexNodeHandler &other) |
|
RC | move_to (LeafIndexNodeHandler &other) |
|
bool | validate (const KeyComparator &comparator, DiskBufferPool *bp) const |
|
Public 成员函数 继承自 IndexNodeHandler |
| IndexNodeHandler (BplusTreeMiniTransaction &mtr, const IndexFileHeader &header, Frame *frame) |
|
void | init_empty (bool leaf) |
| 初始化一个新的页面 更多...
|
|
bool | is_leaf () const |
| 是否叶子节点
|
|
virtual int | key_size () const |
| 存储的键值大小
|
|
virtual int | value_size () const |
| 存储的值的大小。内部节点和叶子节点是不一样的,但是这里返回的是叶子节点存储的大小 更多...
|
|
virtual int | item_size () const |
| 存储的键值对的大小。值是指叶子节点中存放的数据 更多...
|
|
void | increase_size (int n) |
|
int | size () const |
|
int | max_size () const |
|
int | min_size () const |
|
RC | set_parent_page_num (PageNum page_num) |
|
PageNum | parent_page_num () const |
|
PageNum | page_num () const |
|
bool | is_safe (BplusTreeOperationType op, bool is_root_node) |
| 判断对指定的操作,是否安全的 更多...
|
|
bool | validate () const |
| 验证当前节点是否有问题
|
|
Frame * | frame () const |
|
RC | recover_insert_items (int index, const char *items, int num) |
|
RC | recover_remove_items (int index, int num) |
|