24 #ifndef _LOCATOR_SR_H_ 25 #define _LOCATOR_SR_H_ 29 #if !defined (SERVER_MODE) && !defined (SA_MODE) 30 #error Belongs to server module 51 struct mvcc_reev_data;
74 const OID * class_oid,
int op_type);
86 const int copyarea_length_hint,
int lob_create_flag);
88 bool btid_dup_key_locked,
HFID * newhfid,
OID * newoid,
92 BTID * index_btid,
bool repair);
97 int n_attr_ids,
ATTR_ID * attr_ids,
int *atts_prefix_length,
98 const char *btname,
bool repair);
103 int is_insert,
int op_type,
HEAP_SCANCACHE * scan_cache,
bool datayn,
105 bool skip_checking_fk);
107 int n_att_id,
OID * oid,
OID * class_oid,
int op_type,
111 const HFID *
hfid,
int op_type,
bool has_function_index);
121 int ispeeking,
int old_chn,
126 int ispeeking,
int chn);
131 int has_index,
int op_type,
HEAP_SCANCACHE * scan_cache,
int *force_count,
134 bool dont_check_fk,
bool use_bulk_logging =
false);
138 const std::vector<record_descriptor> &
recdes,
int has_index,
int op_type,
int locator_insert_force(THREAD_ENTRY *thread_p, HFID *hfid, OID *class_oid, OID *oid, RECDES *recdes, int has_index, int op_type, HEAP_SCANCACHE *scan_cache, int *force_count, int pruning_type, PRUNING_CONTEXT *pcontext, FUNC_PRED_UNPACK_INFO *func_preds, UPDATE_INPLACE_STYLE force_in_place, PGBUF_WATCHER *home_hint_p, bool has_BU_lock, bool dont_check_fk, bool use_bulk_logging=false)
bool has_errors_filtered_for_insert(std::vector< int > error_filter_array)
SCAN_CODE locator_lock_and_get_object(THREAD_ENTRY *thread_p, const OID *oid, OID *class_oid, RECDES *recdes, HEAP_SCANCACHE *scan_cache, LOCK lock, int ispeeking, int old_chn, NON_EXISTENT_HANDLING non_ex_handling_type)
int locator_delete_force(THREAD_ENTRY *thread_p, HFID *hfid, OID *oid, int has_index, int op_type, HEAP_SCANCACHE *scan_cache, int *force_count, MVCC_REEV_DATA *mvcc_reev_data, bool need_locking)
int locator_drop_transient_class_name_entries(THREAD_ENTRY *thread_p, LOG_LSA *savep_lsa)
int locator_add_or_remove_index(THREAD_ENTRY *thread_p, RECDES *recdes, OID *inst_oid, OID *class_oid, int is_insert, int op_type, HEAP_SCANCACHE *scan_cache, bool datayn, bool replyn, HFID *hfid, FUNC_PRED_UNPACK_INFO *func_preds, bool has_BU_lock, bool skip_checking_fk)
int locator_rv_redo_rename(THREAD_ENTRY *thread_p, LOG_RCV *rcv)
int locator_attribute_info_force(THREAD_ENTRY *thread_p, const HFID *hfid, OID *oid, HEAP_CACHE_ATTRINFO *attr_info, ATTR_ID *att_id, int n_att_id, LC_COPYAREA_OPERATION operation, int op_type, HEAP_SCANCACHE *scan_cache, int *force_count, bool not_check_fk, REPL_INFO_TYPE repl_info, int pruning_type, PRUNING_CONTEXT *pcontext, FUNC_PRED_UNPACK_INFO *func_preds, MVCC_REEV_DATA *mvcc_reev_data, UPDATE_INPLACE_STYLE force_update_inplace, RECDES *rec_descriptor, bool need_locking)
DISK_ISVALID locator_check_btree_entries(THREAD_ENTRY *thread_p, BTID *btid, HFID *hfid, OID *class_oid, int n_attr_ids, ATTR_ID *attr_ids, int *atts_prefix_length, const char *btname, bool repair)
int locator_start_force_scan_cache(THREAD_ENTRY *thread_p, HEAP_SCANCACHE *scan_cache, const HFID *hfid, const OID *class_oid, int op_type)
int locator_multi_insert_force(THREAD_ENTRY *thread_p, HFID *hfid, OID *class_oid, const std::vector< record_descriptor > &recdes, int has_index, int op_type, HEAP_SCANCACHE *scan_cache, int *force_count, int pruning_type, PRUNING_CONTEXT *pcontext, FUNC_PRED_UNPACK_INFO *func_preds, UPDATE_INPLACE_STYLE force_in_place, bool dont_check_fk)
int xlocator_redistribute_partition_data(THREAD_ENTRY *thread_p, OID *class_oid, int no_oids, OID *oid_list)
DISK_ISVALID locator_check_class(THREAD_ENTRY *thtread_p, OID *class_oid, RECDES *peek, HFID *class_hfid, BTID *index_btid, bool repair)
int locator_initialize(THREAD_ENTRY *thread_p)
void locator_end_force_scan_cache(THREAD_ENTRY *thread_p, HEAP_SCANCACHE *scan_cache)
DISK_ISVALID locator_check_class_names(THREAD_ENTRY *thread_p)
PRUNING_SCAN_CACHE * locator_get_partition_scancache(PRUNING_CONTEXT *pcontext, const OID *class_oid, const HFID *hfid, int op_type, bool has_function_index)
int locator_delete_lob_force(THREAD_ENTRY *thread_p, OID *class_oid, OID *oid, RECDES *recdes)
int locator_savepoint_transient_class_name_entries(THREAD_ENTRY *thread_p, LOG_LSA *savep_lsa)
bool locator_Dont_check_foreign_key
SCAN_OPERATION_TYPE locator_decide_operation_type(LOCK lock_mode, LC_FETCH_VERSION_TYPE fetch_version_type)
int locator_update_index(THREAD_ENTRY *thread_p, RECDES *new_recdes, RECDES *old_recdes, ATTR_ID *att_id, int n_att_id, OID *oid, OID *class_oid, int op_type, HEAP_SCANCACHE *scan_cache, REPL_INFO *repl_info)
SCAN_CODE locator_lock_and_get_object_with_evaluation(THREAD_ENTRY *thread_p, OID *oid, OID *class_oid, RECDES *recdes, HEAP_SCANCACHE *scan_cache, int ispeeking, int old_chn, MVCC_REEV_DATA *mvcc_reev_data, NON_EXISTENT_HANDLING non_ex_handling_type)
DISK_ISVALID locator_check_all_entries_of_all_btrees(THREAD_ENTRY *thread_p, bool repair)
void locator_dump_class_names(THREAD_ENTRY *thread_p, FILE *out_fp)
int locator_other_insert_delete(THREAD_ENTRY *thread_p, HFID *hfid, OID *oid, BTID *btid, bool btid_dup_key_locked, HFID *newhfid, OID *newoid, HEAP_CACHE_ATTRINFO *attr_info, HEAP_SCANCACHE *scan_cache, int *force_count, OID *prev_oid, REPR_ID *new_reprid)
LOCK locator_get_lock_mode_from_op_type(SCAN_OPERATION_TYPE op_type)
LC_COPYAREA * locator_allocate_copy_area_by_attr_info(THREAD_ENTRY *thread_p, HEAP_CACHE_ATTRINFO *attr_info, RECDES *old_recdes, RECDES *new_recdes, const int copyarea_length_hint, int lob_create_flag)
enum update_inplace_style UPDATE_INPLACE_STYLE
SCAN_CODE locator_get_object(THREAD_ENTRY *thread_p, const OID *oid, OID *class_oid, RECDES *recdes, HEAP_SCANCACHE *scan_cache, SCAN_OPERATION_TYPE op_type, LOCK lock_mode, int ispeeking, int chn)
int xlc_fetch_allrefslockset(OID *oid, int chn, OID *class_oid, int class_chn, LOCK lock, int quit_on_errors, int prune_level, LC_LOCKSET **lockset, LC_COPYAREA **fetch_area)
DISK_ISVALID locator_check_by_class_oid(THREAD_ENTRY *thread_p, OID *cls_oid, HFID *hfid, BTID *index_btid, bool repair)
void locator_finalize(THREAD_ENTRY *thread_p)