CUBRID Engine
latest
|
Public Types | |
enum | batch_key_status { BATCH_EMPTY, BATCH_CONTINUE, BATCH_FULL } |
Public Types inherited from cubthread::task< Context > | |
using | context_type = Context |
Public Member Functions | |
index_builder_loader_task ()=delete | |
index_builder_loader_task (const BTID *btid, const OID *class_oid, int unique_pk, index_builder_loader_context &load_context, std::atomic< int > &num_keys, std::atomic< int > &num_oids, std::atomic< int > &num_nulls) | |
~index_builder_loader_task () | |
batch_key_status | add_key (const DB_VALUE *key, const OID &oid) |
bool | has_keys () const |
void | execute (cubthread::entry &thread_ref) |
Public Member Functions inherited from cubthread::task< Context > | |
task (void)=default | |
virtual | ~task (void)=default |
virtual void | execute (context_type &)=0 |
virtual void | retire (void) |
Private Member Functions | |
void | clear_keys () |
Private Attributes | |
BTID | m_btid |
OID | m_class_oid |
int | m_unique_pk |
index_builder_loader_context & | m_load_context |
btree_insert_list | m_insert_list |
size_t | m_memsize |
std::atomic< int > & | m_num_keys |
std::atomic< int > & | m_num_oids |
std::atomic< int > & | m_num_nulls |
Definition at line 180 of file btree_load.c.
Enumerator | |
---|---|
BATCH_EMPTY | |
BATCH_CONTINUE | |
BATCH_FULL |
Definition at line 195 of file btree_load.c.
|
delete |
index_builder_loader_task::index_builder_loader_task | ( | const BTID * | btid, |
const OID * | class_oid, | ||
int | unique_pk, | ||
index_builder_loader_context & | load_context, | ||
std::atomic< int > & | num_keys, | ||
std::atomic< int > & | num_oids, | ||
std::atomic< int > & | num_nulls | ||
) |
Definition at line 5068 of file btree_load.c.
References BTID_COPY, COPY_OID, m_btid, m_class_oid, index_builder_loader_context::m_has_error, m_load_context, m_memsize, and m_unique_pk.
index_builder_loader_task::~index_builder_loader_task | ( | ) |
Definition at line 5085 of file btree_load.c.
References clear_keys(), and cubmem::switch_to_global_allocator_and_call().
index_builder_loader_task::batch_key_status index_builder_loader_task::add_key | ( | const DB_VALUE * | key, |
const OID & | oid | ||
) |
Definition at line 5091 of file btree_load.c.
References btree_insert_list::add_key(), BATCH_CONTINUE, BATCH_FULL, BTREE_IS_UNIQUE, btree_multicol_key_is_null(), DB_IS_NULL, btree_insert_list::m_ignored_nulls_cnt, m_insert_list, m_memsize, m_unique_pk, prm_get_bigint_value(), and PRM_ID_IB_TASK_MEMSIZE.
|
private |
Definition at line 5118 of file btree_load.c.
References m_insert_list, key_oid::m_key, btree_insert_list::m_keys_oids, and pr_clear_value().
Referenced by ~index_builder_loader_task().
void index_builder_loader_task::execute | ( | cubthread::entry & | thread_ref | ) |
Definition at line 5127 of file btree_load.c.
References _er_log_debug(), ARG_FILE_LINE, btree_online_index_list_dispatcher(), BTREE_OP_ONLINE_INDEX_IB_INSERT, logtb_tran_find_btid_stats(), m_btid, m_class_oid, btree_insert_list::m_curr_pos, index_builder_loader_context::m_error_code, index_builder_loader_context::m_has_error, btree_insert_list::m_ignored_nulls_cnt, m_insert_list, m_load_context, m_num_keys, m_num_nulls, m_num_oids, btree_insert_list::m_sorted_keys_oids, index_builder_loader_context::m_tasks_executed, m_unique_pk, NO_ERROR, NULL, log_unique_stats::num_keys, log_unique_stats::num_nulls, log_unique_stats::num_oids, btree_insert_list::prepare_list(), prm_get_bool_value(), PRM_ID_LOG_BTREE_OPS, PSTAT_BT_ONLINE_INSERT_TASK, PSTAT_BT_ONLINE_PREPARE_TASK, and log_tran_btid_unique_stats::tran_stats.
bool index_builder_loader_task::has_keys | ( | ) | const |
Definition at line 5112 of file btree_load.c.
References m_insert_list, and btree_insert_list::m_keys_oids.
|
private |
Definition at line 183 of file btree_load.c.
Referenced by execute(), and index_builder_loader_task().
|
private |
Definition at line 184 of file btree_load.c.
Referenced by execute(), and index_builder_loader_task().
|
private |
Definition at line 187 of file btree_load.c.
Referenced by add_key(), clear_keys(), execute(), and has_keys().
|
private |
Definition at line 186 of file btree_load.c.
Referenced by execute(), and index_builder_loader_task().
|
private |
Definition at line 188 of file btree_load.c.
Referenced by add_key(), and index_builder_loader_task().
|
private |
Definition at line 190 of file btree_load.c.
Referenced by execute().
|
private |
Definition at line 192 of file btree_load.c.
Referenced by execute().
|
private |
Definition at line 191 of file btree_load.c.
Referenced by execute().
|
private |
Definition at line 185 of file btree_load.c.
Referenced by add_key(), execute(), and index_builder_loader_task().