CUBRID Engine
latest
|
#include <btree.h>
Public Types | |
enum | { KEY_AVAILABLE = 0, KEY_NOT_AVAILABLE } |
Public Member Functions | |
btree_insert_list ()=delete | |
btree_insert_list (const TP_DOMAIN *&key_type) | |
btree_insert_list (DB_VALUE *key, OID *oid) | |
~btree_insert_list () | |
int | next_key () |
OID * | get_oid () |
DB_VALUE * | get_key () |
size_t | add_key (const DB_VALUE *key, const OID &oid) |
void | reset_boundary_keys () |
void | prepare_list (void) |
bool | check_release_latch (THREAD_ENTRY *thread_p, void *arg, PAGE_PTR leaf_page) |
Public Attributes | |
std::vector< key_oid > | m_keys_oids |
std::vector< key_oid * > | m_sorted_keys_oids |
DB_VALUE * | m_curr_key |
OID * | m_curr_oid |
int | m_curr_pos |
const TP_DOMAIN * | m_key_type |
int | m_ignored_nulls_cnt |
page_key_boundary | m_boundaries |
bool | m_use_page_boundary_check |
bool | m_use_sorted_bulk_insert |
int | m_keep_page_iterations |
int | m_ovf_appends |
int | m_ovf_appends_new_page |
|
delete |
Definition at line 35610 of file btree.c.
References m_curr_key, and m_curr_oid.
btree_insert_list::~btree_insert_list | ( | ) |
Definition at line 35675 of file btree.c.
References db_change_private_heap(), key_oid::m_key, m_keys_oids, NULL, pr_clear_value(), and reset_boundary_keys().
Definition at line 35621 of file btree.c.
References BTREE_MAX_ALIGN, DB_ALIGN, db_change_private_heap(), db_make_null(), pr_type::get_disk_size_of_value(), m_key_type, m_keys_oids, OR_OID_SIZE, qdata_copy_db_value(), thread_get_thread_entry_info(), and tp_domain::type.
Referenced by index_builder_loader_task::add_key().
bool btree_insert_list::check_release_latch | ( | THREAD_ENTRY * | thread_p, |
void * | arg, | ||
PAGE_PTR | leaf_page | ||
) |
Definition at line 35730 of file btree.c.
References assert, btree_get_node_header(), btree_insert_helper::insert_list, btree_insert_helper::is_root, m_keep_page_iterations, m_ovf_appends, m_ovf_appends_new_page, NULL, and pgbuf_has_any_waiters().
Referenced by btree_key_online_index_IB_insert_list().
|
inline |
Definition at line 621 of file btree.h.
Referenced by btree_key_online_index_IB_insert_list(), and btree_online_index_list_dispatcher().
|
inline |
Definition at line 616 of file btree.h.
Referenced by btree_key_online_index_IB_insert_list(), and btree_online_index_list_dispatcher().
int btree_insert_list::next_key | ( | ) |
Definition at line 35648 of file btree.c.
References assert, KEY_AVAILABLE, KEY_NOT_AVAILABLE, m_curr_key, m_curr_oid, m_curr_pos, m_sorted_keys_oids, m_use_sorted_bulk_insert, and NULL.
Referenced by btree_key_online_index_IB_insert_list(), and prepare_list().
void btree_insert_list::prepare_list | ( | void | ) |
Definition at line 35706 of file btree.c.
References assert, btree_compare_key(), DB_LT, KEY_AVAILABLE, key_oid::m_key, m_key_type, m_keys_oids, m_sorted_keys_oids, m_use_page_boundary_check, m_use_sorted_bulk_insert, next_key(), and NULL.
Referenced by index_builder_loader_task::execute().
void btree_insert_list::reset_boundary_keys | ( | ) |
Definition at line 35691 of file btree.c.
References m_boundaries, page_key_boundary::m_is_inf_left_key, page_key_boundary::m_is_inf_right_key, page_key_boundary::m_left_key, page_key_boundary::m_right_key, and pr_clear_value().
Referenced by btree_key_online_index_IB_insert_list(), and ~btree_insert_list().
page_key_boundary btree_insert_list::m_boundaries |
Definition at line 588 of file btree.h.
Referenced by btree_key_online_index_IB_insert_list(), btree_split_node_and_advance(), and reset_boundary_keys().
DB_VALUE* btree_insert_list::m_curr_key |
Definition at line 580 of file btree.h.
Referenced by btree_insert_list(), and next_key().
OID* btree_insert_list::m_curr_oid |
Definition at line 581 of file btree.h.
Referenced by btree_insert_list(), and next_key().
int btree_insert_list::m_curr_pos |
Definition at line 582 of file btree.h.
Referenced by index_builder_loader_task::execute(), and next_key().
int btree_insert_list::m_ignored_nulls_cnt |
Definition at line 586 of file btree.h.
Referenced by index_builder_loader_task::add_key(), and index_builder_loader_task::execute().
int btree_insert_list::m_keep_page_iterations |
Definition at line 593 of file btree.h.
Referenced by btree_key_online_index_IB_insert_list(), and check_release_latch().
Definition at line 584 of file btree.h.
Referenced by add_key(), btree_key_online_index_IB_insert_list(), and prepare_list().
std::vector<key_oid> btree_insert_list::m_keys_oids |
Definition at line 577 of file btree.h.
Referenced by add_key(), btree_key_online_index_IB_insert_list(), index_builder_loader_task::clear_keys(), index_builder_loader_task::has_keys(), prepare_list(), and ~btree_insert_list().
int btree_insert_list::m_ovf_appends |
Definition at line 594 of file btree.h.
Referenced by btree_key_append_object_into_ovf(), btree_key_online_index_IB_insert_list(), and check_release_latch().
int btree_insert_list::m_ovf_appends_new_page |
Definition at line 595 of file btree.h.
Referenced by btree_key_append_object_into_ovf(), btree_key_online_index_IB_insert_list(), and check_release_latch().
std::vector<key_oid*> btree_insert_list::m_sorted_keys_oids |
Definition at line 578 of file btree.h.
Referenced by index_builder_loader_task::execute(), next_key(), and prepare_list().
bool btree_insert_list::m_use_page_boundary_check |
Definition at line 589 of file btree.h.
Referenced by btree_split_node_and_advance(), and prepare_list().
bool btree_insert_list::m_use_sorted_bulk_insert |
Definition at line 591 of file btree.h.
Referenced by next_key(), and prepare_list().