File heap_file.c
FileList > cubrid > src > storage > heap_file.c
Go to the source code of this file
#include <inttypes.h>
#include "config.h"
#include <stdio.h>
#include <string.h>
#include <errno.h>
#include "heap_file.h"
#include "deduplicate_key.h"
#include "porting.h"
#include "porting_inline.hpp"
#include "record_descriptor.hpp"
#include "slotted_page.h"
#include "overflow_file.h"
#include "boot_sr.h"
#include "locator_sr.h"
#include "btree.h"
#include "btree_unique.hpp"
#include "schema_system_catalog_constants.h"
#include "transform.h"
#include "serial.h"
#include "object_primitive.h"
#include "object_representation.h"
#include "object_representation_sr.h"
#include "xserver_interface.h"
#include "chartype.h"
#include "query_executor.h"
#include "fetch.h"
#include "server_interface.h"
#include "elo.h"
#include "db_elo.h"
#include "string_opfunc.h"
#include "xasl.h"
#include "xasl_unpack_info.hpp"
#include "stream_to_xasl.h"
#include "query_opfunc.h"
#include "set_object.h"
#include "dbtype.h"
#include "thread_manager.hpp"
#include "db_value_printer.hpp"
#include "log_append.hpp"
#include "string_buffer.hpp"
#include "tde.h"
#include <set>
#include "memory_wrapper.hpp"
Classes
Public Types
Public Static Attributes
Public Functions
| Type |
Name |
| int |
heap_alloc_new_page (THREAD_ENTRY * thread_p, HFID * hfid, OID class_oid, PGBUF_WATCHER * home_hint_p, VPID * new_page_vpid)
|
| int |
heap_assign_address (THREAD_ENTRY * thread_p, const HFID * hfid, OID * class_oid, OID * oid, int expected_length)
|
| DB_VALUE * |
heap_attrinfo_access (ATTR_ID attrid, HEAP_CACHE_ATTRINFO * attr_info)
|
| bool |
heap_attrinfo_check_unique_index (THREAD_ENTRY * thread_p, HEAP_CACHE_ATTRINFO * attr_info, ATTR_ID * att_id, int n_att_id)
|
| int |
heap_attrinfo_clear_dbvalues (HEAP_CACHE_ATTRINFO * attr_info)
|
| int |
heap_attrinfo_delete_lob (THREAD_ENTRY * thread_p, RECDES * recdes, HEAP_CACHE_ATTRINFO * attr_info)
|
| void |
heap_attrinfo_dump (THREAD_ENTRY * thread_p, FILE * fp, HEAP_CACHE_ATTRINFO * attr_info, bool dump_schema)
|
| void |
heap_attrinfo_end (THREAD_ENTRY * thread_p, HEAP_CACHE_ATTRINFO * attr_info)
|
| DB_VALUE * |
heap_attrinfo_generate_key (THREAD_ENTRY * thread_p, int n_atts, int * att_ids, int * atts_prefix_length, HEAP_CACHE_ATTRINFO * attr_info, RECDES * recdes, DB_VALUE * db_valuep, char * buf, FUNCTION_INDEX_INFO * func_index_info, TP_DOMAIN * midxkey_domain, OID * cur_oid)
|
| int |
heap_attrinfo_read_dbvalues (THREAD_ENTRY * thread_p, const OID * inst_oid, RECDES * recdes, HEAP_CACHE_ATTRINFO * attr_info)
|
| int |
heap_attrinfo_read_dbvalues_without_oid (THREAD_ENTRY * thread_p, RECDES * recdes, HEAP_CACHE_ATTRINFO * attr_info)
|
| int |
heap_attrinfo_set (const OID * inst_oid, ATTR_ID attrid, DB_VALUE * attr_val, HEAP_CACHE_ATTRINFO * attr_info)
|
| int |
heap_attrinfo_set_uninitialized_global (THREAD_ENTRY * thread_p, OID * inst_oid, RECDES * recdes, HEAP_CACHE_ATTRINFO * attr_info)
|
| int |
heap_attrinfo_start (THREAD_ENTRY * thread_p, const OID * class_oid, int requested_num_attrs, const ATTR_ID * attrids, HEAP_CACHE_ATTRINFO * attr_info)
|
| int |
heap_attrinfo_start_with_btid (THREAD_ENTRY * thread_p, OID * class_oid, BTID * btid, HEAP_CACHE_ATTRINFO * attr_info)
|
| int |
heap_attrinfo_start_with_index (THREAD_ENTRY * thread_p, OID * class_oid, RECDES * class_recdes, HEAP_CACHE_ATTRINFO * attr_info, HEAP_IDX_ELEMENTS_INFO * idx_info, bool is_check_foreign)
|
| SCAN_CODE |
heap_attrinfo_transform_to_disk (THREAD_ENTRY * thread_p, HEAP_CACHE_ATTRINFO * attr_info, RECDES * old_recdes, record_descriptor * new_recdes)
|
| SCAN_CODE |
heap_attrinfo_transform_to_disk_except_lob (THREAD_ENTRY * thread_p, HEAP_CACHE_ATTRINFO * attr_info, RECDES * old_recdes, record_descriptor * new_recdes)
|
| DB_VALUE * |
heap_attrvalue_get_index (int value_index, ATTR_ID * attrid, int * n_btids, BTID ** btids, HEAP_CACHE_ATTRINFO * idx_attrinfo)
|
| DB_VALUE * |
heap_attrvalue_get_key (THREAD_ENTRY * thread_p, int btid_index, HEAP_CACHE_ATTRINFO * idx_attrinfo, RECDES * recdes, BTID * btid, DB_VALUE * db_value, char * buf, FUNC_PRED_UNPACK_INFO * func_indx_pred, TP_DOMAIN ** key_domain, OID * rec_oid, bool is_check_foreign)
|
| HEAP_ATTRVALUE * |
heap_attrvalue_locate (ATTR_ID attrid, HEAP_CACHE_ATTRINFO * attr_info)
|
| int |
heap_cache_class_info (THREAD_ENTRY * thread_p, const OID * class_oid, HFID * hfid, FILE_TYPE ftype, const char * classname_in)
|
| SCAN_CODE |
heap_capacity_next_scan (THREAD_ENTRY * thread_p, int cursor, DB_VALUE ** out_values, int out_cnt, void * ptr)
|
| DISK_ISVALID |
heap_check_all_heaps (THREAD_ENTRY * thread_p)
|
| DISK_ISVALID |
heap_check_all_pages (THREAD_ENTRY * thread_p, HFID * hfid)
|
| DISK_ISVALID |
heap_check_heap_file (THREAD_ENTRY * thread_p, HFID * hfid)
|
| void |
heap_chnguess_clear (THREAD_ENTRY * thread_p, int tran_index)
|
| void |
heap_chnguess_dump (FILE * fp)
|
| int |
heap_chnguess_get (THREAD_ENTRY * thread_p, const OID * oid, int tran_index)
|
| int |
heap_chnguess_put (THREAD_ENTRY * thread_p, const OID * oid, int tran_index, int chn)
|
| int |
heap_classrepr_decache (THREAD_ENTRY * thread_p, const OID * class_oid)
|
| void |
heap_classrepr_dump_all (THREAD_ENTRY * thread_p, FILE * fp, OID * class_oid)
|
| int |
heap_classrepr_find_index_id (OR_CLASSREP * classrepr, const BTID * btid)
|
| int |
heap_classrepr_free (OR_CLASSREP * classrep, int * idx_incache)
|
| OR_CLASSREP * |
heap_classrepr_get (THREAD_ENTRY * thread_p, const OID * class_oid, RECDES * class_recdes, REPR_ID reprid, int * idx_incache)
|
| void |
heap_classrepr_logging_template (const char * filename, const int line, ErF && er_f, const char * msg, Args &&... args)
|
| int |
heap_classrepr_restart_cache (void)
|
| void |
heap_clean_get_context (THREAD_ENTRY * thread_p, HEAP_GET_CONTEXT * context)
|
| void |
heap_clear_partition_info (THREAD_ENTRY * thread_p, OR_PARTITION * parts, int parts_count)
|
| int |
heap_cmp (THREAD_ENTRY * thread_p, const OID * oid, RECDES * recdes)
|
| int |
heap_compact_pages (THREAD_ENTRY * thread_p, OID * class_oid)
|
| void |
heap_create_delete_context (HEAP_OPERATION_CONTEXT * context, HFID * hfid_p, OID * oid_p, OID * class_oid_p, HEAP_SCANCACHE * scancache_p)
|
| void |
heap_create_insert_context (HEAP_OPERATION_CONTEXT * context, HFID * hfid_p, OID * class_oid_p, RECDES * recdes_p, HEAP_SCANCACHE * scancache_p)
|
| void |
heap_create_update_context (HEAP_OPERATION_CONTEXT * context, HFID * hfid_p, OID * oid_p, OID * class_oid_p, RECDES * recdes_p, HEAP_SCANCACHE * scancache_p, UPDATE_INPLACE_STYLE in_place)
|
| int |
heap_delete_hfid_from_cache (THREAD_ENTRY * thread_p, OID * class_oid)
|
| int |
heap_delete_logical (THREAD_ENTRY * thread_p, HEAP_OPERATION_CONTEXT * context)
|
| bool |
heap_does_exist (THREAD_ENTRY * thread_p, OID * class_oid, const OID * oid)
|
| void |
heap_dump (THREAD_ENTRY * thread_p, FILE * fp, HFID * hfid, bool dump_records)
|
| int |
heap_dump_capacity (THREAD_ENTRY * thread_p, FILE * fp, const HFID * hfid)
|
| int |
heap_dump_heap_file (THREAD_ENTRY * thread_p, FILE * fp, bool dump_records, const char * class_name)
|
| int |
heap_estimate (THREAD_ENTRY * thread_p, const HFID * hfid, int * npages, int * nobjs, int * avg_length)
|
| int |
heap_estimate_num_objects (THREAD_ENTRY * thread_p, const HFID * hfid)
|
| void |
heap_finalize_hfid_table (void)
|
| SCAN_CODE |
heap_first (THREAD_ENTRY * thread_p, const HFID * hfid, OID * class_oid, OID * oid, RECDES * recdes, HEAP_SCANCACHE * scan_cache, int ispeeking)
|
| void |
heap_flush (THREAD_ENTRY * thread_p, const OID * oid)
|
| void |
heap_free_func_pred_unpack_info (THREAD_ENTRY * thread_p, int n_indexes, FUNC_PRED_UNPACK_INFO * func_indx_preds, int * attr_info_started)
|
| int |
heap_get_best_space_num_stats_entries (void)
|
| int |
heap_get_btid_from_index_name (THREAD_ENTRY * thread_p, const OID * p_class_oid, const char * index_name, BTID * p_found_btid)
|
| int |
heap_get_class_info (THREAD_ENTRY * thread_p, const OID * class_oid, HFID * hfid_out, FILE_TYPE * ftype_out, char ** classname_out)
|
| int |
heap_get_class_name (THREAD_ENTRY * thread_p, const OID * class_oid, char ** class_name)
|
| int |
heap_get_class_name_alloc_if_diff (THREAD_ENTRY * thread_p, const OID * class_oid, char * guess_classname, char ** classname_out)
|
| SCAN_CODE |
heap_get_class_oid (THREAD_ENTRY * thread_p, const OID * oid, OID * class_oid)
|
| int |
heap_get_class_oid_from_page (THREAD_ENTRY * thread_p, PAGE_PTR page_p, OID * class_oid)
|
| int |
heap_get_class_partitions (THREAD_ENTRY * thread_p, const OID * class_oid, OR_PARTITION ** parts, int * parts_count)
|
| SCAN_CODE |
heap_get_class_record (THREAD_ENTRY * thread_p, const OID * class_oid, RECDES * recdes_p, HEAP_SCANCACHE * scan_cache, int ispeeking)
|
| REPR_ID |
heap_get_class_repr_id (THREAD_ENTRY * thread_p, OID * class_oid)
|
| int |
heap_get_class_supers (THREAD_ENTRY * thread_p, const OID * class_oid, OID ** super_oids, int * count)
|
| int |
heap_get_class_tde_algorithm (THREAD_ENTRY * thread_p, const OID * class_oid, TDE_ALGORITHM * tde_algo)
|
| int |
heap_get_compress_attr_by_btid (THREAD_ENTRY * thread_p, OID * class_oid, BTID * btid, ATTR_ID * last_attrid, int * last_asc_desc, TP_DOMAIN ** tpdomain)
|
| int |
heap_get_hfid_from_vfid (THREAD_ENTRY * thread_p, const VFID * vfid, HFID * hfid)
|
| int |
heap_get_hfid_if_cached (THREAD_ENTRY * thread_p, const OID * class_oid, HFID * hfid_out, FILE_TYPE * ftype_out, char ** classname_out, bool * success)
|
| int |
heap_get_index_with_name (THREAD_ENTRY * thread_p, OID * class_oid, const char * index_name, BTID * btid)
|
| int |
heap_get_indexinfo_of_btid (THREAD_ENTRY * thread_p, const OID * class_oid, const BTID * btid, BTREE_TYPE * type, int * num_attrs, ATTR_ID ** attr_ids, int ** attrs_prefix_length, char ** btnamepp, int * func_index_col_id)
|
| SCAN_CODE |
heap_get_last_version (THREAD_ENTRY * thread_p, HEAP_GET_CONTEXT * context)
|
| SCAN_CODE |
heap_get_mvcc_header (THREAD_ENTRY * thread_p, HEAP_GET_CONTEXT * context, MVCC_REC_HEADER * mvcc_header)
|
| int |
heap_get_mvcc_rec_header_from_overflow (PAGE_PTR ovf_page, MVCC_REC_HEADER * mvcc_header, RECDES * peek_recdes)
|
| int |
heap_get_num_objects (THREAD_ENTRY * thread_p, const HFID * hfid, int * npages, int * nobjs, int * avg_length)
|
| SCAN_CODE |
heap_get_record_data_when_all_ready (THREAD_ENTRY * thread_p, HEAP_GET_CONTEXT * context)
|
| int |
heap_get_referenced_by (THREAD_ENTRY * thread_p, OID * class_oid, const OID * obj_oid, RECDES * recdes, int * max_oid_cnt, OID ** oid_list)
|
| SCAN_CODE |
heap_get_visible_version (THREAD_ENTRY * thread_p, const OID * oid, OID * class_oid, RECDES * recdes, HEAP_SCANCACHE * scan_cache, int ispeeking, int old_chn)
|
| SCAN_CODE |
heap_get_visible_version_internal (THREAD_ENTRY * thread_p, HEAP_GET_CONTEXT * context, bool is_heap_scan)
|
| int |
heap_header_capacity_end_scan (THREAD_ENTRY * thread_p, void ** ptr)
|
| int |
heap_header_capacity_start_scan (THREAD_ENTRY * thread_p, int show_type, DB_VALUE ** arg_values, int arg_cnt, void ** ptr)
|
| SCAN_CODE |
heap_header_next_scan (THREAD_ENTRY * thread_p, int cursor, DB_VALUE ** out_values, int out_cnt, void * ptr)
|
| int |
heap_indexinfo_get_attrids (int btid_index, HEAP_CACHE_ATTRINFO * attrinfo, ATTR_ID * attrids)
|
| int |
heap_indexinfo_get_attrs_prefix_length (int btid_index, HEAP_CACHE_ATTRINFO * attrinfo, int * attrs_prefix_length, int len_attrs_prefix_length)
|
| BTID * |
heap_indexinfo_get_btid (int btid_index, HEAP_CACHE_ATTRINFO * attrinfo)
|
| int |
heap_indexinfo_get_num_attrs (int btid_index, HEAP_CACHE_ATTRINFO * attrinfo)
|
| int |
heap_init_func_pred_unpack_info (THREAD_ENTRY * thread_p, HEAP_CACHE_ATTRINFO * attr_info, const OID * class_oid, FUNC_PRED_UNPACK_INFO ** func_indx_preds)
|
| void |
heap_init_get_context (THREAD_ENTRY * thread_p, HEAP_GET_CONTEXT * context, const OID * oid, OID * class_oid, RECDES * recdes, HEAP_SCANCACHE * scan_cache, int ispeeking, int old_chn)
|
| int |
heap_initialize_hfid_table (void)
|
| int |
heap_insert_logical (THREAD_ENTRY * thread_p, HEAP_OPERATION_CONTEXT * context, PGBUF_WATCHER * home_hint_p)
|
| bool |
heap_is_big_length (int length)
|
| bool |
heap_is_object_not_null (THREAD_ENTRY * thread_p, OID * class_oid, const OID * oid)
|
| bool |
heap_is_page_header (THREAD_ENTRY * thread_p, PAGE_PTR page)
|
| SCAN_CODE |
heap_last (THREAD_ENTRY * thread_p, const HFID * hfid, OID * class_oid, OID * oid, RECDES * recdes, HEAP_SCANCACHE * scan_cache, int ispeeking)
|
| OR_ATTRIBUTE * |
heap_locate_last_attrepr (ATTR_ID attrid, HEAP_CACHE_ATTRINFO * attr_info)
|
| void |
heap_log_postpone_heap_append_pages (THREAD_ENTRY * thread_p, const HFID * hfid, const OID * class_oid, const std::vector< VPID > & heap_pages_array)
|
| int |
heap_manager_finalize (void)
|
| int |
heap_manager_initialize (void)
|
| SCAN_CODE |
heap_next (THREAD_ENTRY * thread_p, const HFID * hfid, OID * class_oid, OID * next_oid, RECDES * recdes, HEAP_SCANCACHE * scan_cache, int ispeeking)
|
| SCAN_CODE |
heap_next_1page (THREAD_ENTRY * thread_p, const HFID * hfid, const VPID * vpid, OID * class_oid, OID * next_oid, RECDES * recdes, HEAP_SCANCACHE * scan_cache, int ispeeking)
|
| SCAN_CODE |
heap_next_record_info (THREAD_ENTRY * thread_p, const HFID * hfid, OID * class_oid, OID * next_oid, RECDES * recdes, HEAP_SCANCACHE * scan_cache, int ispeeking, DB_VALUE ** cache_recordinfo)
|
| SCAN_CODE |
heap_next_sampling (THREAD_ENTRY * thread_p, const HFID * hfid, OID * class_oid, OID * next_oid, RECDES * recdes, HEAP_SCANCACHE * scan_cache, int ispeeking, sampling_info * sampling)
|
| int |
heap_nonheader_page_capacity ()
|
| int |
heap_object_upgrade_domain (THREAD_ENTRY * thread_p, HEAP_SCANCACHE * upd_scancache, HEAP_CACHE_ATTRINFO * attr_info, OID * oid, const ATTR_ID att_id)
|
| const OID * |
heap_ovf_delete (THREAD_ENTRY * thread_p, const HFID * hfid, const OID * ovf_oid, VFID * ovf_vfid_p)
|
| VFID * |
heap_ovf_find_vfid (THREAD_ENTRY * thread_p, const HFID * hfid, VFID * ovf_vfid, bool docreate, PGBUF_LATCH_CONDITION latch_cond)
|
| MVCCID |
heap_page_get_max_mvccid (THREAD_ENTRY * thread_p, PAGE_PTR heap_page)
|
| HEAP_PAGE_VACUUM_STATUS |
heap_page_get_vacuum_status (THREAD_ENTRY * thread_p, PAGE_PTR heap_page)
|
| SCAN_CODE |
heap_page_next (THREAD_ENTRY * thread_p, const OID * class_oid, const HFID * hfid, VPID * next_vpid, DB_VALUE ** cache_pageinfo)
|
| SCAN_CODE |
heap_page_next_fix_old (THREAD_ENTRY * thread_p, HFID * hfid, VPID * curr_vpid, HEAP_SCANCACHE * scan_cache)
|
| SCAN_CODE |
heap_page_prev (THREAD_ENTRY * thread_p, const OID * class_oid, const HFID * hfid, VPID * prev_vpid, DB_VALUE ** cache_pageinfo)
|
| void |
heap_page_set_vacuum_status_none (THREAD_ENTRY * thread_p, PAGE_PTR heap_page)
|
| int |
heap_prefetch (THREAD_ENTRY * thread_p, OID * class_oid, const OID * oid, LC_COPYAREA_DESC * prefetch)
|
| SCAN_CODE |
heap_prepare_get_context (THREAD_ENTRY * thread_p, HEAP_GET_CONTEXT * context, bool is_heap_scan, NON_EXISTENT_HANDLING non_ex_handling_type)
|
| int |
heap_prepare_object_page (THREAD_ENTRY * thread_p, const OID * oid, PGBUF_WATCHER * page_watcher_p, PGBUF_LATCH_MODE latch_mode)
|
| SCAN_CODE |
heap_prev (THREAD_ENTRY * thread_p, const HFID * hfid, OID * class_oid, OID * next_oid, RECDES * recdes, HEAP_SCANCACHE * scan_cache, int ispeeking)
|
| SCAN_CODE |
heap_prev_record_info (THREAD_ENTRY * thread_p, const HFID * hfid, OID * class_oid, OID * next_oid, RECDES * recdes, HEAP_SCANCACHE * scan_cache, int ispeeking, DB_VALUE ** cache_recordinfo)
|
| bool |
heap_remove_page_on_vacuum (THREAD_ENTRY * thread_p, PAGE_PTR * page_ptr, HFID * hfid)
|
| void |
heap_rv_dump_append_pages_to_heap (FILE * fp, int length, void * data)
|
| void |
heap_rv_dump_chain (FILE * fp, int ignore_length, void * data)
|
| void |
heap_rv_dump_reuse_page (FILE * fp, int ignore_length, void * ignore_data)
|
| void |
heap_rv_dump_statistics (FILE * fp, int ignore_length, void * data)
|
| int |
heap_rv_lob_remove_dir (THREAD_ENTRY * thread_p, LOG_RCV * rcv)
|
| int |
heap_rv_mark_deleted_on_postpone (THREAD_ENTRY * thread_p, LOG_RCV * rcv)
|
| int |
heap_rv_mark_deleted_on_undo (THREAD_ENTRY * thread_p, LOG_RCV * rcv)
|
| int |
heap_rv_mvcc_redo_delete_home (THREAD_ENTRY * thread_p, LOG_RCV * rcv)
|
| int |
heap_rv_mvcc_redo_delete_newhome (THREAD_ENTRY * thread_p, LOG_RCV * rcv)
|
| int |
heap_rv_mvcc_redo_delete_overflow (THREAD_ENTRY * thread_p, LOG_RCV * rcv)
|
| int |
heap_rv_mvcc_redo_insert (THREAD_ENTRY * thread_p, LOG_RCV * rcv)
|
| int |
heap_rv_mvcc_redo_redistribute (THREAD_ENTRY * thread_p, LOG_RCV * rcv)
|
| int |
heap_rv_mvcc_undo_delete (THREAD_ENTRY * thread_p, LOG_RCV * rcv)
|
| int |
heap_rv_mvcc_undo_delete_overflow (THREAD_ENTRY * thread_p, LOG_RCV * rcv)
|
| int |
heap_rv_nop (THREAD_ENTRY * thread_p, LOG_RCV * rcv)
|
| int |
heap_rv_postpone_append_pages_to_heap (THREAD_ENTRY * thread_p, LOG_RCV * recv)
|
| int |
heap_rv_redo_delete (THREAD_ENTRY * thread_p, LOG_RCV * rcv)
|
| int |
heap_rv_redo_insert (THREAD_ENTRY * thread_p, LOG_RCV * rcv)
|
| int |
heap_rv_redo_mark_reusable_slot (THREAD_ENTRY * thread_p, LOG_RCV * rcv)
|
| int |
heap_rv_redo_newpage (THREAD_ENTRY * thread_p, LOG_RCV * rcv)
|
| int |
heap_rv_redo_reuse_page (THREAD_ENTRY * thread_p, LOG_RCV * rcv)
|
| int |
heap_rv_redo_reuse_page_reuse_oid (THREAD_ENTRY * thread_p, LOG_RCV * rcv)
|
| int |
heap_rv_redo_update (THREAD_ENTRY * thread_p, LOG_RCV * rcv)
|
| int |
heap_rv_redo_update_and_update_chain (THREAD_ENTRY * thread_p, LOG_RCV * rcv)
|
| INT16 |
heap_rv_remove_flags_from_offset (INT16 offset)
|
| int |
heap_rv_undo_delete (THREAD_ENTRY * thread_p, LOG_RCV * rcv)
|
| int |
heap_rv_undo_insert (THREAD_ENTRY * thread_p, LOG_RCV * rcv)
|
| int |
heap_rv_undo_ovf_update (THREAD_ENTRY * thread_p, LOG_RCV * rcv)
|
| int |
heap_rv_undo_update (THREAD_ENTRY * thread_p, LOG_RCV * rcv)
|
| int |
heap_rv_undoredo_pagehdr (THREAD_ENTRY * thread_p, LOG_RCV * rcv)
|
| int |
heap_rv_undoredo_update (THREAD_ENTRY * thread_p, LOG_RCV * rcv)
|
| int |
heap_rv_update_chain_after_mvcc_op (THREAD_ENTRY * thread_p, LOG_RCV * rcv)
|
| int |
heap_scan_cache_allocate_area (THREAD_ENTRY * thread_p, HEAP_SCANCACHE * scan_cache_p, int size)
|
| SCAN_CODE |
heap_scan_get_visible_version (THREAD_ENTRY * thread_p, const OID * oid, OID * class_oid, RECDES * recdes, RECDES * peeked_recdes, HEAP_SCANCACHE * scan_cache, int ispeeking, int old_chn)
|
| int |
heap_scancache_end (THREAD_ENTRY * thread_p, HEAP_SCANCACHE * scan_cache)
|
| void |
heap_scancache_end_modify (THREAD_ENTRY * thread_p, HEAP_SCANCACHE * scan_cache)
|
| int |
heap_scancache_end_when_scan_will_resume (THREAD_ENTRY * thread_p, HEAP_SCANCACHE * scan_cache)
|
| int |
heap_scancache_quick_start (HEAP_SCANCACHE * scan_cache)
|
| int |
heap_scancache_quick_start_modify (HEAP_SCANCACHE * scan_cache)
|
| int |
heap_scancache_quick_start_modify_with_class_oid (THREAD_ENTRY * thread_p, HEAP_SCANCACHE * scan_cache, OID * class_oid)
|
| int |
heap_scancache_quick_start_root_hfid (THREAD_ENTRY * thread_p, HEAP_SCANCACHE * scan_cache)
|
| int |
heap_scancache_quick_start_with_class_hfid (THREAD_ENTRY * thread_p, HEAP_SCANCACHE * scan_cache, const HFID * hfid)
|
| int |
heap_scancache_quick_start_with_class_oid (THREAD_ENTRY * thread_p, HEAP_SCANCACHE * scan_cache, OID * class_oid)
|
| int |
heap_scancache_start (THREAD_ENTRY * thread_p, HEAP_SCANCACHE * scan_cache, const HFID * hfid, const OID * class_oid, int cache_last_fix_page, MVCC_SNAPSHOT * mvcc_snapshot)
|
| int |
heap_scancache_start_modify (THREAD_ENTRY * thread_p, HEAP_SCANCACHE * scan_cache, const HFID * hfid, const OID * class_oid, int op_type, MVCC_SNAPSHOT * mvcc_snapshot)
|
| void |
heap_scanrange_end (THREAD_ENTRY * thread_p, HEAP_SCANRANGE * scan_range)
|
| SCAN_CODE |
heap_scanrange_first (THREAD_ENTRY * thread_p, OID * first_oid, RECDES * recdes, HEAP_SCANRANGE * scan_range, int ispeeking)
|
| SCAN_CODE |
heap_scanrange_last (THREAD_ENTRY * thread_p, OID * last_oid, RECDES * recdes, HEAP_SCANRANGE * scan_range, int ispeeking)
|
| SCAN_CODE |
heap_scanrange_next (THREAD_ENTRY * thread_p, OID * next_oid, RECDES * recdes, HEAP_SCANRANGE * scan_range, int ispeeking)
|
| SCAN_CODE |
heap_scanrange_prev (THREAD_ENTRY * thread_p, OID * prev_oid, RECDES * recdes, HEAP_SCANRANGE * scan_range, int ispeeking)
|
| int |
heap_scanrange_start (THREAD_ENTRY * thread_p, HEAP_SCANRANGE * scan_range, const HFID * hfid, const OID * class_oid, MVCC_SNAPSHOT * mvcc_snapshot)
|
| SCAN_CODE |
heap_scanrange_to_following (THREAD_ENTRY * thread_p, HEAP_SCANRANGE * scan_range, OID * start_oid)
|
| SCAN_CODE |
heap_scanrange_to_prior (THREAD_ENTRY * thread_p, HEAP_SCANRANGE * scan_range, OID * last_oid)
|
| int |
heap_set_autoincrement_value (THREAD_ENTRY * thread_p, HEAP_CACHE_ATTRINFO * attr_info, HEAP_SCANCACHE * scan_cache, int * is_set)
|
| int |
heap_set_mvcc_rec_header_on_overflow (PAGE_PTR ovf_page, MVCC_REC_HEADER * mvcc_header)
|
| bool |
heap_should_try_update_stat (const int current_freespace, const int prev_freespace)
|
| void |
heap_stats_update (THREAD_ENTRY * thread_p, PAGE_PTR pgptr, const HFID * hfid, int prev_freespace)
|
| int |
heap_update_logical (THREAD_ENTRY * thread_p, HEAP_OPERATION_CONTEXT * context)
|
| int |
heap_vacuum_all_objects (THREAD_ENTRY * thread_p, HEAP_SCANCACHE * upd_scancache, MVCCID threshold_mvccid)
|
| int |
heap_vpid_next (THREAD_ENTRY * thread_p, const HFID * hfid, PAGE_PTR pgptr, VPID * next_vpid)
|
| int |
heap_vpid_prev (THREAD_ENTRY * thread_p, const HFID * hfid, PAGE_PTR pgptr, VPID * prev_vpid)
|
| int |
heap_vpid_skip_next (THREAD_ENTRY * thread_p, const HFID * hfid, PGBUF_WATCHER * curr_page_watcher, PGBUF_WATCHER * old_page_watcher, int skip_cnt, VPID * vpid, HEAP_SCANCACHE * scan_cache)
|
| int |
xheap_create (THREAD_ENTRY * thread_p, HFID * hfid, const OID * class_oid, bool reuse_oid)
|
| int |
xheap_destroy (THREAD_ENTRY * thread_p, const HFID * hfid, const OID * class_oid)
|
| int |
xheap_destroy_newly_created (THREAD_ENTRY * thread_p, const HFID * hfid, const OID * class_oid, const bool force)
|
| int |
xheap_get_class_num_objects_pages (THREAD_ENTRY * thread_p, const HFID * hfid, int approximation, int * nobjs, int * npages)
|
| int |
xheap_get_maxslotted_reclength (int & maxslotted_reclength)
|
| int |
xheap_has_instance (THREAD_ENTRY * thread_p, const HFID * hfid, OID * class_oid, int has_visible_instance)
|
| int |
xheap_reclaim_addresses (THREAD_ENTRY * thread_p, const HFID * hfid)
|
Public Static Functions
| Type |
Name |
| bool |
check_supplemental_log (THREAD_ENTRY * thread_p, OID * classoid)
|
| int |
fill_string_to_buffer (char ** start, char * end, const char * str)
|
| int |
heap_add_chain_links (THREAD_ENTRY * thread_p, const HFID * hfid, const VPID * vpid, const VPID * next_link, const VPID * prev_link, PGBUF_WATCHER * page_watcher, bool keep_page_fixed, bool is_page_watcher_inited)
|
| int |
heap_attrinfo_check (const OID * inst_oid, HEAP_CACHE_ATTRINFO * attr_info)
|
| size_t |
heap_attrinfo_determine_disksize (HEAP_CACHE_ATTRINFO * attr_info, bool is_mvcc_class, size_t * offset_size_ptr)
|
| int |
heap_attrinfo_get_record_header_size (HEAP_CACHE_ATTRINFO * attr_info, int payload_size, bool is_mvcc_class, size_t * offset_size_ptr)
|
| int |
heap_attrinfo_get_record_payload_size (HEAP_CACHE_ATTRINFO * attr_info)
|
| int |
heap_attrinfo_recache (THREAD_ENTRY * thread_p, REPR_ID reprid, HEAP_CACHE_ATTRINFO * attr_info)
|
| int |
heap_attrinfo_recache_attrepr (HEAP_CACHE_ATTRINFO * attr_info, bool islast_reset)
|
| int |
heap_attrinfo_set_uninitialized (THREAD_ENTRY * thread_p, OID * inst_oid, RECDES * recdes, HEAP_CACHE_ATTRINFO * attr_info)
|
| int |
heap_attrinfo_start_refoids (THREAD_ENTRY * thread_p, OID * class_oid, HEAP_CACHE_ATTRINFO * attr_info)
|
| SCAN_CODE |
heap_attrinfo_transform_columns_to_disk (THREAD_ENTRY * thread_p, HEAP_CACHE_ATTRINFO * attr_info, OR_BUF * buf, std::set< int > * incremented_attrids, int offset_size, int header_size, size_t mvcc_extra, int lob_create_flag, size_t * record_size)
|
| SCAN_CODE |
heap_attrinfo_transform_fixed_to_disk (THREAD_ENTRY * thread_p, HEAP_CACHE_ATTRINFO * attr_info, OR_BUF * buf, int index, std::set< int > * incremented_attrids, char * bitmap_bound)
|
| SCAN_CODE |
heap_attrinfo_transform_header_to_disk (THREAD_ENTRY * thread_p, HEAP_CACHE_ATTRINFO * attr_info, OR_BUF * buf, int offset_size, bool is_mvcc_class, bool is_update)
|
| SCAN_CODE |
heap_attrinfo_transform_to_disk_internal (THREAD_ENTRY * thread_p, HEAP_CACHE_ATTRINFO * attr_info, RECDES * old_recdes, record_descriptor * new_recdes, int lob_create_flag)
|
| SCAN_CODE |
heap_attrinfo_transform_variable_to_disk (THREAD_ENTRY * thread_p, HEAP_CACHE_ATTRINFO * attr_info, OR_BUF * buf, char ** ptr_varvals, int index, int offset_size, int header_size, int lob_create_flag)
|
| void |
heap_attrvalue_point_fixed (RECDES * recdes, HEAP_CACHE_ATTRINFO * attr_info, OR_ATTRIBUTE * attrepr, RECDES * raw)
|
| void |
heap_attrvalue_point_variable (RECDES * recdes, HEAP_CACHE_ATTRINFO * attr_info, OR_ATTRIBUTE * attrepr, RECDES * raw)
|
| int |
heap_attrvalue_read (RECDES * recdes, HEAP_ATTRVALUE * value, HEAP_CACHE_ATTRINFO * attr_info)
|
| int |
heap_attrvalue_transform_to_dbvalue (HEAP_ATTRVALUE * value, OR_ATTRIBUTE * attrepr, RECDES * raw)
|
| char * |
heap_bestspace_to_string (char * buf, int buf_size, const HEAP_BESTSPACE * hb)
|
| void |
heap_build_forwarding_recdes (RECDES * recdes_p, INT16 rec_type, OID * forward_oid)
|
| DISK_ISVALID |
heap_check_all_pages_by_file_table (THREAD_ENTRY * thread_p, HFID * hfid, HEAP_CHKALL_RELOCOIDS * chk_objs)
|
| DISK_ISVALID |
heap_check_all_pages_by_heapchain (THREAD_ENTRY * thread_p, HFID * hfid, HEAP_CHKALL_RELOCOIDS * chk_objs, INT32 * num_checked)
|
| DISK_ISVALID |
heap_chkreloc_end (HEAP_CHKALL_RELOCOIDS * chk)
|
| DISK_ISVALID |
heap_chkreloc_next (THREAD_ENTRY * thread_p, HEAP_CHKALL_RELOCOIDS * chk, PAGE_PTR pgptr)
|
| int |
heap_chkreloc_print_notfound (const void * ignore_reloc_oid, void * ent, void * xchk)
|
| DISK_ISVALID |
heap_chkreloc_start (HEAP_CHKALL_RELOCOIDS * chk)
|
| int |
heap_chnguess_decache (const OID * oid)
|
| int |
heap_chnguess_finalize (void)
|
| int |
heap_chnguess_initialize (void)
|
| int |
heap_chnguess_realloc (void)
|
| int |
heap_chnguess_remove_entry (const void * oid_key, void * ent, void * xignore)
|
| int |
heap_class_get_partition_info (THREAD_ENTRY * thread_p, const OID * class_oid, OR_PARTITION * partition_info, HFID * class_hfid, REPR_ID * repr_id, int * has_partition_info)
|
| int |
heap_classrepr_decache_guessed_last (const OID * class_oid)
|
| int |
heap_classrepr_dump (THREAD_ENTRY * thread_p, FILE * fp, const OID * class_oid, const OR_CLASSREP * repr)
|
| HEAP_CLASSREPR_ENTRY * |
heap_classrepr_entry_alloc (void)
|
| int |
heap_classrepr_entry_free (HEAP_CLASSREPR_ENTRY * cache_entry)
|
| int |
heap_classrepr_entry_remove_from_LRU (HEAP_CLASSREPR_ENTRY * cache_entry)
|
| int |
heap_classrepr_entry_reset (HEAP_CLASSREPR_ENTRY * cache_entry)
|
| int |
heap_classrepr_finalize_cache (void)
|
| OR_CLASSREP * |
heap_classrepr_get_from_record (THREAD_ENTRY * thread_p, REPR_ID * last_reprid, const OID * class_oid, RECDES * class_recdes, REPR_ID reprid)
|
| int |
heap_classrepr_initialize_cache (void)
|
| int |
heap_classrepr_lock_class (THREAD_ENTRY * thread_p, HEAP_CLASSREPR_HASH * hash_anchor, const OID * class_oid)
|
| int |
heap_classrepr_unlock_class (HEAP_CLASSREPR_HASH * hash_anchor, const OID * class_oid, int need_hash_mutex)
|
| void |
heap_clear_operation_context (HEAP_OPERATION_CONTEXT * context, HFID * hfid_p)
|
| int |
heap_compare_hfid (const void * key_hfid1, const void * key_hfid2)
|
| int |
heap_compare_vpid (const void * key_vpid1, const void * key_vpid2)
|
| int |
heap_copy_chain (THREAD_ENTRY * thread_p, PAGE_PTR page_heap, HEAP_CHAIN * chain)
|
| int |
heap_copy_header_stats (THREAD_ENTRY * thread_p, PAGE_PTR page_header, HEAP_HDR_STATS * header_stats)
|
| int |
heap_create_internal (THREAD_ENTRY * thread_p, HFID * hfid, const OID * class_oid, const bool reuse_oid)
|
| void |
heap_delete_adjust_header (MVCC_REC_HEADER * header_p, MVCCID mvcc_id, bool need_mvcc_header_max_size)
|
| bool |
heap_delete_all_page_records (THREAD_ENTRY * thread_p, const VPID * vpid, PAGE_PTR pgptr)
|
| int |
heap_delete_bigone (THREAD_ENTRY * thread_p, HEAP_OPERATION_CONTEXT * context, bool is_mvcc_op)
|
| int |
heap_delete_home (THREAD_ENTRY * thread_p, HEAP_OPERATION_CONTEXT * context, bool is_mvcc_op)
|
| int |
heap_delete_physical (THREAD_ENTRY * thread_p, HFID * hfid_p, PAGE_PTR page_p, OID * oid_p)
|
| int |
heap_delete_relocation (THREAD_ENTRY * thread_p, HEAP_OPERATION_CONTEXT * context, bool is_mvcc_op)
|
| int |
heap_dump_hdr (FILE * fp, HEAP_HDR_STATS * heap_hdr)
|
| int |
heap_estimate_avg_length (THREAD_ENTRY * thread_p, const HFID * hfid, int & avg_reclen)
|
| int |
heap_eval_function_index (THREAD_ENTRY * thread_p, FUNCTION_INDEX_INFO * func_index_info, int n_atts, int * att_ids, HEAP_CACHE_ATTRINFO * attr_info, RECDES * recdes, int btid_index, DB_VALUE * result, FUNC_PRED_UNPACK_INFO * func_pred, TP_DOMAIN ** fi_domain)
|
| int |
heap_file_map_chkreloc (THREAD_ENTRY * thread_p, PAGE_PTR * page, bool * stop, void * args)
|
| int |
heap_find_location_and_insert_rec_newhome (THREAD_ENTRY * thread_p, HEAP_OPERATION_CONTEXT * context)
|
| int |
heap_fix_forward_page (THREAD_ENTRY * thread_p, HEAP_OPERATION_CONTEXT * context, OID * forward_oid_hint)
|
| int |
heap_fix_header_page (THREAD_ENTRY * thread_p, HEAP_OPERATION_CONTEXT * context)
|
| SCAN_CODE |
heap_get_bigone_content (THREAD_ENTRY * thread_p, HEAP_SCANCACHE * scan_cache, bool ispeeking, OID * forward_oid, RECDES * recdes)
|
| int |
heap_get_capacity (THREAD_ENTRY * thread_p, const HFID * hfid, INT64 * num_recs, INT64 * num_recs_relocated, INT64 * num_recs_inovf, INT64 * num_pages, int * avg_freespace, int * avg_freespace_nolast, int * avg_reclength, int * avg_overhead)
|
| HEAP_CHAIN * |
heap_get_chain_ptr (THREAD_ENTRY * thread_p, PAGE_PTR page_heap)
|
| int |
heap_get_class_info_from_record (THREAD_ENTRY * thread_p, const OID * class_oid, HFID * hfid, char ** classname_out)
|
| int |
heap_get_class_subclasses (THREAD_ENTRY * thread_p, const OID * class_oid, int * count, OID ** subclasses)
|
| FILE_TYPE |
heap_get_file_type (THREAD_ENTRY * thread_p, HEAP_OPERATION_CONTEXT * context)
|
| int |
heap_get_header_page (THREAD_ENTRY * thread_p, const HFID * hfid, VPID * header_vpid)
|
| HEAP_HDR_STATS * |
heap_get_header_stats_ptr (THREAD_ENTRY * thread_p, PAGE_PTR page_header)
|
| SCAN_CODE |
heap_get_if_diff_chn (THREAD_ENTRY * thread_p, PAGE_PTR pgptr, INT16 slotid, RECDES * recdes, bool ispeeking, int chn, MVCC_SNAPSHOT * mvcc_snapshot)
|
| int |
heap_get_insert_location_with_lock (THREAD_ENTRY * thread_p, HEAP_OPERATION_CONTEXT * context, PGBUF_WATCHER * home_hint_p)
|
| int |
heap_get_last_page (THREAD_ENTRY * thread_p, const HFID * hfid, HEAP_HDR_STATS * heap_hdr, HEAP_SCANCACHE * scan_cache, VPID * last_vpid, PGBUF_WATCHER * pg_watcher)
|
| int |
heap_get_last_vpid (THREAD_ENTRY * thread_p, const HFID * hfid, VPID * last_vpid)
|
| SCAN_CODE |
heap_get_page_info (THREAD_ENTRY * thread_p, const OID * cls_oid, const HFID * hfid, const VPID * vpid, const PAGE_PTR pgptr, DB_VALUE ** page_info)
|
| int |
heap_get_page_with_watcher (THREAD_ENTRY * thread_p, const VPID * page_vpid, PGBUF_WATCHER * pg_watcher)
|
| int |
heap_get_partition_attributes (THREAD_ENTRY * thread_p, const OID * cls_oid, ATTR_ID * type_id, ATTR_ID * values_id)
|
| int |
heap_get_partitions_from_subclasses (THREAD_ENTRY * thread_p, const OID * subclasses, int * parts_count, OR_PARTITION * partitions)
|
| SCAN_CODE |
heap_get_record_info (THREAD_ENTRY * thread_p, const OID oid, RECDES * recdes, RECDES forward_recdes, PGBUF_WATCHER * page_watcher, HEAP_SCANCACHE * scan_cache, bool ispeeking, DB_VALUE ** record_info)
|
| int |
heap_get_record_location (THREAD_ENTRY * thread_p, HEAP_OPERATION_CONTEXT * context)
|
| int |
heap_get_spage_type (void)
|
| SCAN_CODE |
heap_get_visible_version_from_log (THREAD_ENTRY * thread_p, RECDES * recdes, LOG_LSA * previous_version_lsa, HEAP_SCANCACHE * scan_cache, int has_chn)
|
| unsigned int |
heap_hash_hfid (const void * key_hfid, unsigned int htsize)
|
| unsigned int |
heap_hash_vpid (const void * key_vpid, unsigned int htsize)
|
| int |
heap_hfid_cache_get (THREAD_ENTRY * thread_p, const OID * class_oid, HFID * hfid, FILE_TYPE * ftype_out, char ** classname_out)
|
| DISK_ISVALID |
heap_hfid_isvalid (HFID * hfid)
|
| void * |
heap_hfid_table_entry_alloc (void)
|
| int |
heap_hfid_table_entry_free (void * unique_stat)
|
| int |
heap_hfid_table_entry_init (void * unique_stat)
|
| int |
heap_hfid_table_entry_key_compare (void * k1, void * k2)
|
| int |
heap_hfid_table_entry_key_copy (void * src, void * dest)
|
| unsigned int |
heap_hfid_table_entry_key_hash (void * key, int hash_table_size)
|
| int |
heap_hfid_table_entry_uninit (void * entry)
|
| int |
heap_insert_adjust_recdes_header (THREAD_ENTRY * thread_p, HEAP_OPERATION_CONTEXT * context, bool is_mvcc_class)
|
| int |
heap_insert_handle_multipage_record (THREAD_ENTRY * thread_p, HEAP_OPERATION_CONTEXT * context)
|
| int |
heap_insert_newhome (THREAD_ENTRY * thread_p, HEAP_OPERATION_CONTEXT * parent_context, RECDES * recdes_p, OID * out_oid_p, PGBUF_WATCHER * newhome_pg_watcher)
|
| int |
heap_insert_physical (THREAD_ENTRY * thread_p, HEAP_OPERATION_CONTEXT * context)
|
| bool |
heap_is_reusable_oid (const FILE_TYPE file_type)
|
| int |
heap_is_valid_oid (THREAD_ENTRY * thread_p, OID * oid)
|
| void |
heap_link_watchers (HEAP_OPERATION_CONTEXT * child, HEAP_OPERATION_CONTEXT * parent)
|
| OR_ATTRIBUTE * |
heap_locate_attribute (ATTR_ID attrid, HEAP_CACHE_ATTRINFO * attr_info)
|
| void |
heap_log_delete_physical (THREAD_ENTRY * thread_p, PAGE_PTR page_p, VFID * vfid_p, OID * oid_p, RECDES * recdes_p, bool mark_reusable, LOG_LSA * undo_lsa)
|
| void |
heap_log_insert_physical (THREAD_ENTRY * thread_p, PAGE_PTR page_p, VFID * vfid_p, OID * oid_p, RECDES * recdes_p, bool is_mvcc_op, bool is_redistribute_op)
|
| void |
heap_log_update_physical (THREAD_ENTRY * thread_p, PAGE_PTR page_p, VFID * vfid_p, OID * oid_p, RECDES * old_recdes_p, RECDES * new_recdes_p, LOG_RCVINDEX rcvindex)
|
| int |
heap_mark_class_as_modified (THREAD_ENTRY * thread_p, OID * oid_p, int chn, bool decache)
|
| int |
heap_midxkey_get_value (RECDES * recdes, OR_ATTRIBUTE * att, DB_VALUE * value, HEAP_CACHE_ATTRINFO * attr_info)
|
| DB_MIDXKEY * |
heap_midxkey_key_generate (THREAD_ENTRY * thread_p, RECDES * recdes, DB_MIDXKEY * midxkey, int * att_ids, HEAP_CACHE_ATTRINFO * attrinfo, DB_VALUE * func_res, int func_col_id, int func_attr_index_start, TP_DOMAIN * midxkey_domain, OID * rec_oid)
|
| DB_MIDXKEY * |
heap_midxkey_key_get (RECDES * recdes, DB_MIDXKEY * midxkey, OR_INDEX * index, HEAP_CACHE_ATTRINFO * attrinfo, DB_VALUE * func_res, TP_DOMAIN * func_domain, TP_DOMAIN ** key_domain, OID * rec_oid, bool is_check_foreign)
|
| void |
heap_mvcc_log_delete (THREAD_ENTRY * thread_p, LOG_DATA_ADDR * p_addr, LOG_RCVINDEX rcvindex)
|
| void |
heap_mvcc_log_home_change_on_delete (THREAD_ENTRY * thread_p, RECDES * old_recdes, RECDES * new_recdes, LOG_DATA_ADDR * p_addr)
|
| void |
heap_mvcc_log_home_no_change (THREAD_ENTRY * thread_p, LOG_DATA_ADDR * p_addr)
|
| void |
heap_mvcc_log_insert (THREAD_ENTRY * thread_p, RECDES * p_recdes, LOG_DATA_ADDR * p_addr)
|
| void |
heap_mvcc_log_redistribute (THREAD_ENTRY * thread_p, RECDES * p_recdes, LOG_DATA_ADDR * p_addr)
|
| SCAN_CODE |
heap_next_internal (THREAD_ENTRY * thread_p, const HFID * hfid, OID * class_oid, OID * next_oid, RECDES * recdes, HEAP_SCANCACHE * scan_cache, bool ispeeking, bool reversed_direction, DB_VALUE ** cache_recordinfo, sampling_info * sampling)
|
| int |
heap_ovf_flush (THREAD_ENTRY * thread_p, const OID * ovf_oid)
|
| SCAN_CODE |
heap_ovf_get (THREAD_ENTRY * thread_p, const OID * ovf_oid, RECDES * recdes, int chn, MVCC_SNAPSHOT * mvcc_snapshot)
|
| int |
heap_ovf_get_capacity (THREAD_ENTRY * thread_p, const OID * ovf_oid, int * ovf_len, int * ovf_num_pages, int * ovf_overhead, int * ovf_free_space)
|
| int |
heap_ovf_get_length (THREAD_ENTRY * thread_p, const OID * ovf_oid)
|
| OID * |
heap_ovf_insert (THREAD_ENTRY * thread_p, const HFID * hfid, OID * ovf_oid, RECDES * recdes)
|
| const OID * |
heap_ovf_update (THREAD_ENTRY * thread_p, const HFID * hfid, const OID * ovf_oid, RECDES * recdes)
|
| void |
heap_page_rv_chain_update (THREAD_ENTRY * thread_p, PAGE_PTR heap_page, MVCCID mvccid, bool vacuum_status_change)
|
| void |
heap_page_update_chain_after_mvcc_op (THREAD_ENTRY * thread_p, PAGE_PTR heap_page, MVCCID mvccid)
|
| int |
heap_reinitialize_page (THREAD_ENTRY * thread_p, PAGE_PTR pgptr, const bool is_header_page)
|
| const HFID * |
heap_reuse (THREAD_ENTRY * thread_p, const HFID * hfid, const OID * class_oid, const bool reuse_oid)
|
| int |
heap_rv_mvcc_redo_delete_internal (THREAD_ENTRY * thread_p, PAGE_PTR page, PGSLOTID slotid, MVCCID mvccid)
|
| int |
heap_scan_cache_allocate_recdes_data (THREAD_ENTRY * thread_p, HEAP_SCANCACHE * scan_cache_p, RECDES * recdes_p, int size)
|
| PAGE_PTR |
heap_scan_pb_lock_and_fetch_debug (THREAD_ENTRY * thread_p, const VPID * vpid_ptr, PAGE_FETCH_MODE fetch_mode, LOCK lock, HEAP_SCANCACHE * scan_cache, PGBUF_WATCHER * pg_watcher, const char * caller_file, const int caller_line, const char * caller_func)
|
| int |
heap_scancache_add_partition_node (THREAD_ENTRY * thread_p, HEAP_SCANCACHE * scan_cache, OID * partition_oid)
|
| void |
heap_scancache_block_allocate (cubmem::block & b, size_t size)
|
| void |
heap_scancache_block_deallocate (cubmem::block & b)
|
| int |
heap_scancache_check_with_hfid (THREAD_ENTRY * thread_p, HFID * hfid, OID * class_oid, HEAP_SCANCACHE ** scan_cache)
|
| int |
heap_scancache_end_internal (THREAD_ENTRY * thread_p, HEAP_SCANCACHE * scan_cache, bool scan_state)
|
| int |
heap_scancache_force_modify (THREAD_ENTRY * thread_p, HEAP_SCANCACHE * scan_cache)
|
| int |
heap_scancache_quick_end (THREAD_ENTRY * thread_p, HEAP_SCANCACHE * scan_cache)
|
| int |
heap_scancache_quick_start_internal (HEAP_SCANCACHE * scan_cache, const HFID * hfid)
|
| int |
heap_scancache_reset_modify (THREAD_ENTRY * thread_p, HEAP_SCANCACHE * scan_cache, const HFID * hfid, const OID * class_oid)
|
| int |
heap_scancache_start_internal (THREAD_ENTRY * thread_p, HEAP_SCANCACHE * scan_cache, const HFID * hfid, const OID * class_oid, int cache_last_fix_page, bool is_queryscan, MVCC_SNAPSHOT * mvcc_snapshot)
|
| DISK_ISVALID |
heap_scanrange_isvalid (HEAP_SCANRANGE * scan_range)
|
| HEAP_STATS_ENTRY * |
heap_stats_add_bestspace (THREAD_ENTRY * thread_p, const HFID * hfid, VPID * vpid, int freespace)
|
| int |
heap_stats_bestspace_finalize (void)
|
| int |
heap_stats_bestspace_initialize (void)
|
| int |
heap_stats_del_bestspace_by_hfid (THREAD_ENTRY * thread_p, const HFID * hfid)
|
| int |
heap_stats_del_bestspace_by_vpid (THREAD_ENTRY * thread_p, VPID * vpid)
|
| int |
heap_stats_entry_free (THREAD_ENTRY * thread_p, void * data, void * args)
|
| PAGE_PTR |
heap_stats_find_best_page (THREAD_ENTRY * thread_p, const HFID * hfid, int needed_space, bool isnew_rec, HEAP_SCANCACHE * space_cache, PGBUF_WATCHER * pg_watcher)
|
| HEAP_FINDSPACE |
heap_stats_find_page_in_bestspace (THREAD_ENTRY * thread_p, const HFID * hfid, HEAP_BESTSPACE * bestspace, int * idx_badspace, int record_length, int needed_space, HEAP_SCANCACHE * scan_cache, PGBUF_WATCHER * pg_watcher)
|
| HEAP_BESTSPACE |
heap_stats_get_bestspace_by_vpid (THREAD_ENTRY * thread_p, VPID * vpid)
|
| int |
heap_stats_get_min_freespace (HEAP_HDR_STATS * heap_hdr)
|
| int |
heap_stats_get_second_best (HEAP_HDR_STATS * heap_hdr, VPID * vpid)
|
| void |
heap_stats_put_second_best (HEAP_HDR_STATS * heap_hdr, VPID * vpid)
|
| int |
heap_stats_quick_num_fit_in_bestspace (HEAP_BESTSPACE * bestspace, int num_entries, int unit_size, int unfill_space)
|
| int |
heap_stats_sync_bestspace (THREAD_ENTRY * thread_p, const HFID * hfid, HEAP_HDR_STATS * heap_hdr, VPID * hdr_vpid, bool scan_all, bool can_cycle)
|
| int |
heap_stats_update_internal (THREAD_ENTRY * thread_p, const HFID * hfid, VPID * lotspace_vpid, int free_space)
|
| int |
heap_try_fetch_forward_page (THREAD_ENTRY * thread_p, PAGE_PTR * home_pgptr_p, const VPID * home_vpid_p, const OID * oid_p, PAGE_PTR * fwd_pgptr_p, const VPID * fwd_vpid_p, const OID * fwd_oid_p, HEAP_SCANCACHE * scan_cache, int * again_count, int again_max)
|
| int |
heap_try_fetch_header_page (THREAD_ENTRY * thread_p, PAGE_PTR * home_pgptr_p, const VPID * home_vpid_p, const OID * oid_p, PAGE_PTR * hdr_pgptr_p, const VPID * hdr_vpid_p, HEAP_SCANCACHE * scan_cache, int * again_count, int again_max)
|
| int |
heap_try_fetch_header_with_forward_page (THREAD_ENTRY * thread_p, PAGE_PTR * home_pgptr_p, const VPID * home_vpid_p, const OID * oid_p, PAGE_PTR * hdr_pgptr_p, const VPID * hdr_vpid_p, PAGE_PTR * fwd_pgptr_p, const VPID * fwd_vpid_p, const OID * fwd_oid_p, HEAP_SCANCACHE * scan_cache, int * again_count, int again_max)
|
| void |
heap_unfix_watchers (THREAD_ENTRY * thread_p, HEAP_OPERATION_CONTEXT * context)
|
| int |
heap_update_adjust_recdes_header (THREAD_ENTRY * thread_p, HEAP_OPERATION_CONTEXT * update_context, bool is_mvcc_class)
|
| int |
heap_update_and_log_header (THREAD_ENTRY * thread_p, const HFID * hfid, const PGBUF_WATCHER heap_header_watcher, HEAP_HDR_STATS * heap_hdr, const VPID new_next_vpid, const VPID new_last_vpid, const int new_num_pages)
|
| int |
heap_update_bigone (THREAD_ENTRY * thread_p, HEAP_OPERATION_CONTEXT * context, bool is_mvcc_op)
|
| int |
heap_update_home (THREAD_ENTRY * thread_p, HEAP_OPERATION_CONTEXT * context, bool is_mvcc_op)
|
| int |
heap_update_physical (THREAD_ENTRY * thread_p, PAGE_PTR page_p, short slot_id, RECDES * recdes_p)
|
| int |
heap_update_relocation (THREAD_ENTRY * thread_p, HEAP_OPERATION_CONTEXT * context, bool is_mvcc_op)
|
| int |
heap_update_set_prev_version (THREAD_ENTRY * thread_p, const OID * oid, PGBUF_WATCHER * home_pg_watcher, PGBUF_WATCHER * fwd_pg_watcher, LOG_LSA * prev_version_lsa)
|
| int |
heap_vpid_alloc (THREAD_ENTRY * thread_p, const HFID * hfid, PAGE_PTR hdr_pgptr, HEAP_HDR_STATS * heap_hdr, HEAP_SCANCACHE * scan_cache, PGBUF_WATCHER * new_pg_watcher)
|
| int |
heap_vpid_init_new (THREAD_ENTRY * thread_p, PAGE_PTR page, void * args)
|
| VPID * |
heap_vpid_remove (THREAD_ENTRY * thread_p, const HFID * hfid, HEAP_HDR_STATS * heap_hdr, VPID * rm_vpid)
|
Macros
| Type |
Name |
| define |
BEST_PAGE_SEARCH_MAX_COUNT 100
|
| define |
CLASSREPR_HASH_SIZE (heap\_Classrepr\_cache.num\_entries \* 2)
|
| define |
CLASSREPR_REPR_INCREMENT 10
|
| define |
DEFAULT_REPR_INCREMENT 16
|
| define |
HEAP_BESTSPACE_SYNC_THRESHOLD (0.1f)
|
| define |
HEAP_BITMASK ([**HEAP\_NBITS\_IN\_BYTE**](heap__file_8c.md#define-heap_nbits_in_byte) - 1)
|
| define |
HEAP_BITMASK_INBYTE (bit_num) (1 << (([**unsigned**](broker__monitor_8c.md#function-timeout) [**int**](broker__monitor_8c.md#function-timeout))([**bit\_num**](broker__monitor_8c.md#function-timeout)) & [**HEAP\_BITMASK**](heap__file_8c.md#define-heap_bitmask)))
|
| define |
HEAP_BIT_CLEAR (byte_ptr, bit_num) /* multi line expression */
|
| define |
HEAP_BIT_GET (byte_ptr, bit_num) (\*[**HEAP\_BYTEGET**](heap__file_8c.md#define-heap_byteget)([**byte\_ptr**](broker__monitor_8c.md#function-timeout), [**bit\_num**](broker__monitor_8c.md#function-timeout)) & [**HEAP\_BITMASK\_INBYTE**](heap__file_8c.md#define-heap_bitmask_inbyte)([**bit\_num**](broker__monitor_8c.md#function-timeout)))
|
| define |
HEAP_BIT_SET (byte_ptr, bit_num) /* multi line expression */
|
| define |
HEAP_BYTEGET (byte_ptr, bit_num) (([**unsigned**](broker__monitor_8c.md#function-timeout) [**char**](broker__monitor_8c.md#function-timeout) \*)([**byte\_ptr**](broker__monitor_8c.md#function-timeout)) + [**HEAP\_BYTEOFFSET\_OFBIT**](heap__file_8c.md#define-heap_byteoffset_ofbit)([**bit\_num**](broker__monitor_8c.md#function-timeout)))
|
| define |
HEAP_BYTEOFFSET_OFBIT (bit_num) (([**unsigned**](broker__monitor_8c.md#function-timeout) [**int**](broker__monitor_8c.md#function-timeout))([**bit\_num**](broker__monitor_8c.md#function-timeout)) >> [**HEAP\_NSHIFTS**](heap__file_8c.md#define-heap_nshifts))
|
| define |
HEAP_CHKRELOC_UNFOUND_SHORT 5
|
| define |
HEAP_CHK_ADD_UNFOUND_RELOCOIDS 100
|
| define |
HEAP_CHNGUESS_FUDGE_MININDICES (100)
|
| define |
HEAP_CLASSREPR_MAXCACHE 1024
|
| define |
HEAP_DEBUG_ISVALID_SCANRANGE (scan_range) [**heap\_scanrange\_isvalid**](heap__file_8c.md#function-heap_scanrange_isvalid)(scan\_range)
|
| define |
HEAP_DEBUG_SCANCACHE_INITPATTERN (12345)
|
| define |
HEAP_GUESS_NUM_ATTRS_REFOIDS 100
|
| define |
HEAP_GUESS_NUM_INDEXED_ATTRS 100
|
| define |
HEAP_IS_PAGE_OF_OID (thread_p, pgptr, oid) /* multi line expression */
|
| define |
HEAP_LOG_MVCC_INSERT_MAX_REDO_CRUMBS 4
|
| define |
HEAP_LOG_MVCC_REDISTRIBUTE_MAX_REDO_CRUMBS 4
|
| define |
HEAP_MAX_FIRSTSLOTID_LENGTH ([**sizeof**](broker__monitor_8c.md#function-timeout) ([**HEAP\_HDR\_STATS**](heap__file_8c.md#typedef-heap_hdr_stats)))
|
| define |
HEAP_MAYNEED_DECACHE_GUESSED_LASTREPRS (class_oid, hfid) /* multi line expression */
|
| define |
HEAP_MVCC_SET_HEADER_MAXIMUM_SIZE (mvcc_rec_header_p) /* multi line expression */
|
| define |
HEAP_NBITS_IN_BYTE (8)
|
| define |
HEAP_NBITS_TO_NBYTES (bit_cnt) (([**unsigned**](broker__monitor_8c.md#function-timeout) [**int**](broker__monitor_8c.md#function-timeout))(([**bit\_cnt**](broker__monitor_8c.md#function-timeout)) + [**HEAP\_BITMASK**](heap__file_8c.md#define-heap_bitmask)) >> [**HEAP\_NSHIFTS**](heap__file_8c.md#define-heap_nshifts))
|
| define |
HEAP_NBYTES_CLEARED (byte_ptr, byte_cnt) [**memset**](broker__monitor_8c.md#function-timeout)(([**byte\_ptr**](broker__monitor_8c.md#function-timeout)), '\0', ([**byte\_cnt**](broker__monitor_8c.md#function-timeout)))
|
| define |
HEAP_NBYTES_TO_NBITS (byte_cnt) (([**unsigned**](broker__monitor_8c.md#function-timeout) [**int**](broker__monitor_8c.md#function-timeout))([**byte\_cnt**](broker__monitor_8c.md#function-timeout)) << [**HEAP\_NSHIFTS**](heap__file_8c.md#define-heap_nshifts))
|
| define |
HEAP_NSHIFTS (3) /\* [**For**](broker__monitor_8c.md#function-timeout) [**multiplication**](broker__monitor_8c.md#function-timeout)/[**division**](broker__monitor_8c.md#function-timeout) [**by**](broker__monitor_8c.md#function-timeout) 8 \*/
|
| define |
HEAP_NUM_BEST_SPACESTATS 10
|
| define |
HEAP_PAGE_FLAG_VACUUM_ONCE 0x80000000
|
| define |
HEAP_PAGE_FLAG_VACUUM_STATUS_MASK 0xC0000000
|
| define |
HEAP_PAGE_FLAG_VACUUM_UNKNOWN 0x40000000
|
| define |
HEAP_PAGE_GET_VACUUM_STATUS (chain) /* multi line expression */
|
| define |
HEAP_PAGE_SET_VACUUM_STATUS (chain, status) /* multi line expression */
|
| define |
HEAP_PERF_START (thread_p, context) [**PERF\_UTIME\_TRACKER\_START**](perf__monitor_8h.md#define-perf_utime_tracker_start) (thread\_p, (context)->time\_track)
|
| define |
HEAP_PERF_TRACK_EXECUTE (thread_p, context) /* multi line expression */
|
| define |
HEAP_PERF_TRACK_LOGGING (thread_p, context) /* multi line expression */
|
| define |
HEAP_PERF_TRACK_PREPARE (thread_p, context) /* multi line expression */
|
| define |
HEAP_RV_FLAG_VACUUM_STATUS_CHANGE 0x8000
|
| define |
HEAP_SCAN_ORDERED_HFID (scan) (((scan) != [**NULL**](freelistheap_8h.md#define-null)) ? (&(scan)->node.hfid) : ([**PGBUF\_ORDERED\_NULL\_HFID**](page__buffer_8h.md#define-pgbuf_ordered_null_hfid)))
|
| define |
HEAP_STATS_ENTRY_FREELIST_SIZE 1000
|
| define |
HEAP_STATS_ENTRY_MHT_EST_SIZE 1000
|
| define |
HEAP_STATS_NEXT_BEST_INDEX (i) ((([**i**](dynamic__load_8c.md#variable-i)) + 1) % [**HEAP\_NUM\_BEST\_SPACESTATS**](heap__file_8c.md#define-heap_num_best_spacestats))
|
| define |
HEAP_STATS_PREV_BEST_INDEX (i) ((([**i**](dynamic__load_8c.md#variable-i)) == 0) ? ([**HEAP\_NUM\_BEST\_SPACESTATS**](heap__file_8c.md#define-heap_num_best_spacestats) - 1) : (([**i**](dynamic__load_8c.md#variable-i)) - 1));
|
| define |
HEAP_UPDATE_IS_MVCC_OP (is_mvcc_class, update_style) (([**is\_mvcc\_class**](broker__monitor_8c.md#function-timeout)) && ( ([**update\_style**](broker__monitor_8c.md#function-timeout))) ? ([**true**](broker__monitor_8c.md#function-timeout)) : ([**false**](broker__monitor_8c.md#function-timeout)))
|
| define |
MVCC_SET_DELETE_INFO (mvcc_delete_info_p, row_delete_id, satisfies_del_result) /* multi line expression */
|
| define |
OR_FIXED_ATTRIBUTES_OFFSET_BY_OBJ (obj, nvars) ([**OR\_HEADER\_SIZE**](object__representation_8h.md#define-or_header_size)(obj) + [**OR\_VAR\_TABLE\_SIZE\_INTERNAL**](object__representation_8h.md#define-or_var_table_size_internal)([**nvars**](broker__monitor_8c.md#function-timeout), [**OR\_GET\_OFFSET\_SIZE**](object__representation_8h.md#define-or_get_offset_size)(obj)))
|
| define |
REPR_HASH (class_oid) ([**OID\_PSEUDO\_KEY**](oid_8h.md#define-oid_pseudo_key)(class\_oid)%[**CLASSREPR\_HASH\_SIZE**](heap__file_8c.md#define-classrepr_hash_size))
|
| define |
__STDC_FORMAT_MACROS
|
| define |
heap_bestspace_log (...) [**if**](dynamic__load_8c.md#function-if) ([**prm\_get\_bool\_value**](system__parameter_8h.md#function-prm_get_bool_value) (PRM\_ID\_DEBUG\_BESTSPACE)) [**\_er\_log\_debug**](error__manager_8c.md#function-_er_log_debug) ([**ARG\_FILE\_LINE**](error__manager_8h.md#define-arg_file_line), [**\_\_VA\_ARGS\_\_**](broker__monitor_8c.md#function-timeout))
|
| define |
heap_classrepr_log_er (msg, ...) /* multi line expression */
|
| define |
heap_classrepr_log_stack (msg, ...) /* multi line expression */
|
| define |
heap_hfid_table_log (thp, oidp, msg, ...) /* multi line expression */
|
| define |
heap_scan_pb_lock_and_fetch (...) [**heap\_scan\_pb\_lock\_and\_fetch\_debug**](heap__file_8c.md#function-heap_scan_pb_lock_and_fetch_debug) ([**\_\_VA\_ARGS\_\_**](broker__monitor_8c.md#function-timeout), [**ARG\_FILE\_LINE\_FUNC**](error__manager_8h.md#define-arg_file_line_func))
|
Public Types Documentation
typedef HEAP_CHAIN
typedef struct heap_chain HEAP_CHAIN;
typedef HEAP_CHKALL_RELOCOIDS
typedef struct heap_chkall_relocoids HEAP_CHKALL_RELOCOIDS;
typedef HEAP_CHK_RELOCOID
typedef struct heap_chk_relocoid HEAP_CHK_RELOCOID;
typedef HEAP_CHNGUESS
typedef struct heap_chnguess HEAP_CHNGUESS;
typedef HEAP_CHNGUESS_ENTRY
typedef struct heap_chnguess_entry HEAP_CHNGUESS_ENTRY;
typedef HEAP_CLASSREPR_CACHE
typedef struct heap_classrepr_cache HEAP_CLASSREPR_CACHE;
typedef HEAP_CLASSREPR_ENTRY
typedef struct heap_classrepr_entry HEAP_CLASSREPR_ENTRY;
typedef HEAP_CLASSREPR_FREE_LIST
typedef struct heap_classrepr_free_list HEAP_CLASSREPR_FREE_LIST;
typedef HEAP_CLASSREPR_HASH
typedef struct heap_classrepr_hash HEAP_CLASSREPR_HASH;
typedef HEAP_CLASSREPR_LOCK
typedef struct heap_classrepr_lock HEAP_CLASSREPR_LOCK;
typedef HEAP_CLASSREPR_LRU_LIST
typedef struct heap_classrepr_LRU_list HEAP_CLASSREPR_LRU_LIST;
enum HEAP_DIRECTION
enum HEAP_DIRECTION {
HEAP_DIRECTION_NONE,
HEAP_DIRECTION_LEFT,
HEAP_DIRECTION_RIGHT,
HEAP_DIRECTION_BOTH
};
enum HEAP_FINDSPACE
enum HEAP_FINDSPACE {
HEAP_FINDSPACE_FOUND,
HEAP_FINDSPACE_NOTFOUND,
HEAP_FINDSPACE_ERROR
};
typedef HEAP_HDR_STATS
typedef struct heap_hdr_stats HEAP_HDR_STATS;
typedef HEAP_SHOW_SCAN_CTX
typedef struct heap_show_scan_ctx HEAP_SHOW_SCAN_CTX;
typedef HEAP_STATS_BESTSPACE_CACHE
typedef struct heap_stats_bestspace_cache HEAP_STATS_BESTSPACE_CACHE;
typedef HEAP_STATS_ENTRY
typedef struct heap_stats_entry HEAP_STATS_ENTRY;
enum heap__file_8c_1a425be5f49e9c31d8d13d53190a3e7bc2
enum heap__file_8c_1a425be5f49e9c31d8d13d53190a3e7bc2 {
NEED_TO_RETRY = 0,
LOCK_ACQUIRED
};
enum heap__file_8c_1ac72f7803394f05658258f8a2b76f53aa
enum heap__file_8c_1ac72f7803394f05658258f8a2b76f53aa {
ZONE_VOID = 1,
ZONE_FREE = 2,
ZONE_LRU = 3
};
Public Static Attributes Documentation
variable HEAP_SCANCACHE_BLOCK_ALLOCATOR
const cubmem::block_allocator HEAP_SCANCACHE_BLOCK_ALLOCATOR;
variable heap_Bestspace
HEAP_STATS_BESTSPACE_CACHE* heap_Bestspace;
variable heap_Bestspace_cache_area
HEAP_STATS_BESTSPACE_CACHE heap_Bestspace_cache_area;
variable heap_Classrepr
HEAP_CLASSREPR_CACHE* heap_Classrepr;
variable heap_Classrepr_cache
HEAP_CLASSREPR_CACHE heap_Classrepr_cache;
variable heap_Find_best_page_limit
const int heap_Find_best_page_limit;
variable heap_Guesschn
HEAP_CHNGUESS* heap_Guesschn;
variable heap_Guesschn_area
HEAP_CHNGUESS heap_Guesschn_area;
variable heap_Hfid_table
HEAP_HFID_TABLE* heap_Hfid_table;
variable heap_Hfid_table_area
HEAP_HFID_TABLE heap_Hfid_table_area;
variable heap_Maxslotted_reclength
int heap_Maxslotted_reclength;
variable heap_Slotted_overhead
int heap_Slotted_overhead;
Public Functions Documentation
function heap_alloc_new_page
int heap_alloc_new_page (
THREAD_ENTRY * thread_p,
HFID * hfid,
OID class_oid,
PGBUF_WATCHER * home_hint_p,
VPID * new_page_vpid
)
function heap_assign_address
int heap_assign_address (
THREAD_ENTRY * thread_p,
const HFID * hfid,
OID * class_oid,
OID * oid,
int expected_length
)
function heap_attrinfo_access
DB_VALUE * heap_attrinfo_access (
ATTR_ID attrid,
HEAP_CACHE_ATTRINFO * attr_info
)
function heap_attrinfo_check_unique_index
bool heap_attrinfo_check_unique_index (
THREAD_ENTRY * thread_p,
HEAP_CACHE_ATTRINFO * attr_info,
ATTR_ID * att_id,
int n_att_id
)
function heap_attrinfo_clear_dbvalues
int heap_attrinfo_clear_dbvalues (
HEAP_CACHE_ATTRINFO * attr_info
)
function heap_attrinfo_delete_lob
int heap_attrinfo_delete_lob (
THREAD_ENTRY * thread_p,
RECDES * recdes,
HEAP_CACHE_ATTRINFO * attr_info
)
function heap_attrinfo_dump
void heap_attrinfo_dump (
THREAD_ENTRY * thread_p,
FILE * fp,
HEAP_CACHE_ATTRINFO * attr_info,
bool dump_schema
)
function heap_attrinfo_end
void heap_attrinfo_end (
THREAD_ENTRY * thread_p,
HEAP_CACHE_ATTRINFO * attr_info
)
function heap_attrinfo_generate_key
DB_VALUE * heap_attrinfo_generate_key (
THREAD_ENTRY * thread_p,
int n_atts,
int * att_ids,
int * atts_prefix_length,
HEAP_CACHE_ATTRINFO * attr_info,
RECDES * recdes,
DB_VALUE * db_valuep,
char * buf,
FUNCTION_INDEX_INFO * func_index_info,
TP_DOMAIN * midxkey_domain,
OID * cur_oid
)
function heap_attrinfo_read_dbvalues
int heap_attrinfo_read_dbvalues (
THREAD_ENTRY * thread_p,
const OID * inst_oid,
RECDES * recdes,
HEAP_CACHE_ATTRINFO * attr_info
)
function heap_attrinfo_read_dbvalues_without_oid
int heap_attrinfo_read_dbvalues_without_oid (
THREAD_ENTRY * thread_p,
RECDES * recdes,
HEAP_CACHE_ATTRINFO * attr_info
)
function heap_attrinfo_set
int heap_attrinfo_set (
const OID * inst_oid,
ATTR_ID attrid,
DB_VALUE * attr_val,
HEAP_CACHE_ATTRINFO * attr_info
)
function heap_attrinfo_set_uninitialized_global
int heap_attrinfo_set_uninitialized_global (
THREAD_ENTRY * thread_p,
OID * inst_oid,
RECDES * recdes,
HEAP_CACHE_ATTRINFO * attr_info
)
function heap_attrinfo_start
int heap_attrinfo_start (
THREAD_ENTRY * thread_p,
const OID * class_oid,
int requested_num_attrs,
const ATTR_ID * attrids,
HEAP_CACHE_ATTRINFO * attr_info
)
function heap_attrinfo_start_with_btid
int heap_attrinfo_start_with_btid (
THREAD_ENTRY * thread_p,
OID * class_oid,
BTID * btid,
HEAP_CACHE_ATTRINFO * attr_info
)
function heap_attrinfo_start_with_index
int heap_attrinfo_start_with_index (
THREAD_ENTRY * thread_p,
OID * class_oid,
RECDES * class_recdes,
HEAP_CACHE_ATTRINFO * attr_info,
HEAP_IDX_ELEMENTS_INFO * idx_info,
bool is_check_foreign
)
SCAN_CODE heap_attrinfo_transform_to_disk (
THREAD_ENTRY * thread_p,
HEAP_CACHE_ATTRINFO * attr_info,
RECDES * old_recdes,
record_descriptor * new_recdes
)
SCAN_CODE heap_attrinfo_transform_to_disk_except_lob (
THREAD_ENTRY * thread_p,
HEAP_CACHE_ATTRINFO * attr_info,
RECDES * old_recdes,
record_descriptor * new_recdes
)
function heap_attrvalue_get_index
DB_VALUE * heap_attrvalue_get_index (
int value_index,
ATTR_ID * attrid,
int * n_btids,
BTID ** btids,
HEAP_CACHE_ATTRINFO * idx_attrinfo
)
function heap_attrvalue_get_key
DB_VALUE * heap_attrvalue_get_key (
THREAD_ENTRY * thread_p,
int btid_index,
HEAP_CACHE_ATTRINFO * idx_attrinfo,
RECDES * recdes,
BTID * btid,
DB_VALUE * db_value,
char * buf,
FUNC_PRED_UNPACK_INFO * func_indx_pred,
TP_DOMAIN ** key_domain,
OID * rec_oid,
bool is_check_foreign
)
function heap_attrvalue_locate
HEAP_ATTRVALUE * heap_attrvalue_locate (
ATTR_ID attrid,
HEAP_CACHE_ATTRINFO * attr_info
)
function heap_cache_class_info
int heap_cache_class_info (
THREAD_ENTRY * thread_p,
const OID * class_oid,
HFID * hfid,
FILE_TYPE ftype,
const char * classname_in
)
function heap_capacity_next_scan
SCAN_CODE heap_capacity_next_scan (
THREAD_ENTRY * thread_p,
int cursor,
DB_VALUE ** out_values,
int out_cnt,
void * ptr
)
function heap_check_all_heaps
DISK_ISVALID heap_check_all_heaps (
THREAD_ENTRY * thread_p
)
function heap_check_all_pages
DISK_ISVALID heap_check_all_pages (
THREAD_ENTRY * thread_p,
HFID * hfid
)
function heap_check_heap_file
DISK_ISVALID heap_check_heap_file (
THREAD_ENTRY * thread_p,
HFID * hfid
)
function heap_chnguess_clear
void heap_chnguess_clear (
THREAD_ENTRY * thread_p,
int tran_index
)
function heap_chnguess_dump
void heap_chnguess_dump (
FILE * fp
)
function heap_chnguess_get
int heap_chnguess_get (
THREAD_ENTRY * thread_p,
const OID * oid,
int tran_index
)
function heap_chnguess_put
int heap_chnguess_put (
THREAD_ENTRY * thread_p,
const OID * oid,
int tran_index,
int chn
)
function heap_classrepr_decache
int heap_classrepr_decache (
THREAD_ENTRY * thread_p,
const OID * class_oid
)
function heap_classrepr_dump_all
void heap_classrepr_dump_all (
THREAD_ENTRY * thread_p,
FILE * fp,
OID * class_oid
)
function heap_classrepr_find_index_id
int heap_classrepr_find_index_id (
OR_CLASSREP * classrepr,
const BTID * btid
)
function heap_classrepr_free
int heap_classrepr_free (
OR_CLASSREP * classrep,
int * idx_incache
)
function heap_classrepr_get
OR_CLASSREP * heap_classrepr_get (
THREAD_ENTRY * thread_p,
const OID * class_oid,
RECDES * class_recdes,
REPR_ID reprid,
int * idx_incache
)
function heap_classrepr_logging_template
template<typename ErF, typename ... Args>
void heap_classrepr_logging_template (
const char * filename,
const int line,
ErF && er_f,
const char * msg,
Args &&... args
)
function heap_classrepr_restart_cache
int heap_classrepr_restart_cache (
void
)
function heap_clean_get_context
void heap_clean_get_context (
THREAD_ENTRY * thread_p,
HEAP_GET_CONTEXT * context
)
function heap_clear_partition_info
void heap_clear_partition_info (
THREAD_ENTRY * thread_p,
OR_PARTITION * parts,
int parts_count
)
function heap_cmp
int heap_cmp (
THREAD_ENTRY * thread_p,
const OID * oid,
RECDES * recdes
)
function heap_compact_pages
int heap_compact_pages (
THREAD_ENTRY * thread_p,
OID * class_oid
)
function heap_create_delete_context
void heap_create_delete_context (
HEAP_OPERATION_CONTEXT * context,
HFID * hfid_p,
OID * oid_p,
OID * class_oid_p,
HEAP_SCANCACHE * scancache_p
)
function heap_create_insert_context
void heap_create_insert_context (
HEAP_OPERATION_CONTEXT * context,
HFID * hfid_p,
OID * class_oid_p,
RECDES * recdes_p,
HEAP_SCANCACHE * scancache_p
)
function heap_create_update_context
void heap_create_update_context (
HEAP_OPERATION_CONTEXT * context,
HFID * hfid_p,
OID * oid_p,
OID * class_oid_p,
RECDES * recdes_p,
HEAP_SCANCACHE * scancache_p,
UPDATE_INPLACE_STYLE in_place
)
function heap_delete_hfid_from_cache
int heap_delete_hfid_from_cache (
THREAD_ENTRY * thread_p,
OID * class_oid
)
function heap_delete_logical
int heap_delete_logical (
THREAD_ENTRY * thread_p,
HEAP_OPERATION_CONTEXT * context
)
function heap_does_exist
bool heap_does_exist (
THREAD_ENTRY * thread_p,
OID * class_oid,
const OID * oid
)
function heap_dump
void heap_dump (
THREAD_ENTRY * thread_p,
FILE * fp,
HFID * hfid,
bool dump_records
)
function heap_dump_capacity
int heap_dump_capacity (
THREAD_ENTRY * thread_p,
FILE * fp,
const HFID * hfid
)
function heap_dump_heap_file
int heap_dump_heap_file (
THREAD_ENTRY * thread_p,
FILE * fp,
bool dump_records,
const char * class_name
)
function heap_estimate
int heap_estimate (
THREAD_ENTRY * thread_p,
const HFID * hfid,
int * npages,
int * nobjs,
int * avg_length
)
function heap_estimate_num_objects
int heap_estimate_num_objects (
THREAD_ENTRY * thread_p,
const HFID * hfid
)
function heap_finalize_hfid_table
void heap_finalize_hfid_table (
void
)
function heap_first
SCAN_CODE heap_first (
THREAD_ENTRY * thread_p,
const HFID * hfid,
OID * class_oid,
OID * oid,
RECDES * recdes,
HEAP_SCANCACHE * scan_cache,
int ispeeking
)
function heap_flush
void heap_flush (
THREAD_ENTRY * thread_p,
const OID * oid
)
function heap_free_func_pred_unpack_info
void heap_free_func_pred_unpack_info (
THREAD_ENTRY * thread_p,
int n_indexes,
FUNC_PRED_UNPACK_INFO * func_indx_preds,
int * attr_info_started
)
function heap_get_best_space_num_stats_entries
int heap_get_best_space_num_stats_entries (
void
)
function heap_get_btid_from_index_name
int heap_get_btid_from_index_name (
THREAD_ENTRY * thread_p,
const OID * p_class_oid,
const char * index_name,
BTID * p_found_btid
)
function heap_get_class_info
int heap_get_class_info (
THREAD_ENTRY * thread_p,
const OID * class_oid,
HFID * hfid_out,
FILE_TYPE * ftype_out,
char ** classname_out
)
function heap_get_class_name
int heap_get_class_name (
THREAD_ENTRY * thread_p,
const OID * class_oid,
char ** class_name
)
function heap_get_class_name_alloc_if_diff
int heap_get_class_name_alloc_if_diff (
THREAD_ENTRY * thread_p,
const OID * class_oid,
char * guess_classname,
char ** classname_out
)
function heap_get_class_oid
SCAN_CODE heap_get_class_oid (
THREAD_ENTRY * thread_p,
const OID * oid,
OID * class_oid
)
function heap_get_class_oid_from_page
int heap_get_class_oid_from_page (
THREAD_ENTRY * thread_p,
PAGE_PTR page_p,
OID * class_oid
)
function heap_get_class_partitions
int heap_get_class_partitions (
THREAD_ENTRY * thread_p,
const OID * class_oid,
OR_PARTITION ** parts,
int * parts_count
)
function heap_get_class_record
SCAN_CODE heap_get_class_record (
THREAD_ENTRY * thread_p,
const OID * class_oid,
RECDES * recdes_p,
HEAP_SCANCACHE * scan_cache,
int ispeeking
)
function heap_get_class_repr_id
REPR_ID heap_get_class_repr_id (
THREAD_ENTRY * thread_p,
OID * class_oid
)
function heap_get_class_supers
int heap_get_class_supers (
THREAD_ENTRY * thread_p,
const OID * class_oid,
OID ** super_oids,
int * count
)
function heap_get_class_tde_algorithm
int heap_get_class_tde_algorithm (
THREAD_ENTRY * thread_p,
const OID * class_oid,
TDE_ALGORITHM * tde_algo
)
function heap_get_compress_attr_by_btid
int heap_get_compress_attr_by_btid (
THREAD_ENTRY * thread_p,
OID * class_oid,
BTID * btid,
ATTR_ID * last_attrid,
int * last_asc_desc,
TP_DOMAIN ** tpdomain
)
function heap_get_hfid_from_vfid
int heap_get_hfid_from_vfid (
THREAD_ENTRY * thread_p,
const VFID * vfid,
HFID * hfid
)
function heap_get_hfid_if_cached
int heap_get_hfid_if_cached (
THREAD_ENTRY * thread_p,
const OID * class_oid,
HFID * hfid_out,
FILE_TYPE * ftype_out,
char ** classname_out,
bool * success
)
function heap_get_index_with_name
int heap_get_index_with_name (
THREAD_ENTRY * thread_p,
OID * class_oid,
const char * index_name,
BTID * btid
)
function heap_get_indexinfo_of_btid
int heap_get_indexinfo_of_btid (
THREAD_ENTRY * thread_p,
const OID * class_oid,
const BTID * btid,
BTREE_TYPE * type,
int * num_attrs,
ATTR_ID ** attr_ids,
int ** attrs_prefix_length,
char ** btnamepp,
int * func_index_col_id
)
function heap_get_last_version
SCAN_CODE heap_get_last_version (
THREAD_ENTRY * thread_p,
HEAP_GET_CONTEXT * context
)
SCAN_CODE heap_get_mvcc_header (
THREAD_ENTRY * thread_p,
HEAP_GET_CONTEXT * context,
MVCC_REC_HEADER * mvcc_header
)
int heap_get_mvcc_rec_header_from_overflow (
PAGE_PTR ovf_page,
MVCC_REC_HEADER * mvcc_header,
RECDES * peek_recdes
)
function heap_get_num_objects
int heap_get_num_objects (
THREAD_ENTRY * thread_p,
const HFID * hfid,
int * npages,
int * nobjs,
int * avg_length
)
function heap_get_record_data_when_all_ready
SCAN_CODE heap_get_record_data_when_all_ready (
THREAD_ENTRY * thread_p,
HEAP_GET_CONTEXT * context
)
function heap_get_referenced_by
int heap_get_referenced_by (
THREAD_ENTRY * thread_p,
OID * class_oid,
const OID * obj_oid,
RECDES * recdes,
int * max_oid_cnt,
OID ** oid_list
)
function heap_get_visible_version
SCAN_CODE heap_get_visible_version (
THREAD_ENTRY * thread_p,
const OID * oid,
OID * class_oid,
RECDES * recdes,
HEAP_SCANCACHE * scan_cache,
int ispeeking,
int old_chn
)
function heap_get_visible_version_internal
SCAN_CODE heap_get_visible_version_internal (
THREAD_ENTRY * thread_p,
HEAP_GET_CONTEXT * context,
bool is_heap_scan
)
int heap_header_capacity_end_scan (
THREAD_ENTRY * thread_p,
void ** ptr
)
int heap_header_capacity_start_scan (
THREAD_ENTRY * thread_p,
int show_type,
DB_VALUE ** arg_values,
int arg_cnt,
void ** ptr
)
SCAN_CODE heap_header_next_scan (
THREAD_ENTRY * thread_p,
int cursor,
DB_VALUE ** out_values,
int out_cnt,
void * ptr
)
function heap_indexinfo_get_attrids
int heap_indexinfo_get_attrids (
int btid_index,
HEAP_CACHE_ATTRINFO * attrinfo,
ATTR_ID * attrids
)
function heap_indexinfo_get_attrs_prefix_length
int heap_indexinfo_get_attrs_prefix_length (
int btid_index,
HEAP_CACHE_ATTRINFO * attrinfo,
int * attrs_prefix_length,
int len_attrs_prefix_length
)
function heap_indexinfo_get_btid
BTID * heap_indexinfo_get_btid (
int btid_index,
HEAP_CACHE_ATTRINFO * attrinfo
)
function heap_indexinfo_get_num_attrs
int heap_indexinfo_get_num_attrs (
int btid_index,
HEAP_CACHE_ATTRINFO * attrinfo
)
function heap_init_func_pred_unpack_info
int heap_init_func_pred_unpack_info (
THREAD_ENTRY * thread_p,
HEAP_CACHE_ATTRINFO * attr_info,
const OID * class_oid,
FUNC_PRED_UNPACK_INFO ** func_indx_preds
)
function heap_init_get_context
void heap_init_get_context (
THREAD_ENTRY * thread_p,
HEAP_GET_CONTEXT * context,
const OID * oid,
OID * class_oid,
RECDES * recdes,
HEAP_SCANCACHE * scan_cache,
int ispeeking,
int old_chn
)
function heap_initialize_hfid_table
int heap_initialize_hfid_table (
void
)
function heap_insert_logical
int heap_insert_logical (
THREAD_ENTRY * thread_p,
HEAP_OPERATION_CONTEXT * context,
PGBUF_WATCHER * home_hint_p
)
function heap_is_big_length
bool heap_is_big_length (
int length
)
function heap_is_object_not_null
bool heap_is_object_not_null (
THREAD_ENTRY * thread_p,
OID * class_oid,
const OID * oid
)
bool heap_is_page_header (
THREAD_ENTRY * thread_p,
PAGE_PTR page
)
function heap_last
SCAN_CODE heap_last (
THREAD_ENTRY * thread_p,
const HFID * hfid,
OID * class_oid,
OID * oid,
RECDES * recdes,
HEAP_SCANCACHE * scan_cache,
int ispeeking
)
function heap_locate_last_attrepr
OR_ATTRIBUTE * heap_locate_last_attrepr (
ATTR_ID attrid,
HEAP_CACHE_ATTRINFO * attr_info
)
function heap_log_postpone_heap_append_pages
void heap_log_postpone_heap_append_pages (
THREAD_ENTRY * thread_p,
const HFID * hfid,
const OID * class_oid,
const std::vector< VPID > & heap_pages_array
)
function heap_manager_finalize
int heap_manager_finalize (
void
)
function heap_manager_initialize
int heap_manager_initialize (
void
)
function heap_next
SCAN_CODE heap_next (
THREAD_ENTRY * thread_p,
const HFID * hfid,
OID * class_oid,
OID * next_oid,
RECDES * recdes,
HEAP_SCANCACHE * scan_cache,
int ispeeking
)
function heap_next_1page
SCAN_CODE heap_next_1page (
THREAD_ENTRY * thread_p,
const HFID * hfid,
const VPID * vpid,
OID * class_oid,
OID * next_oid,
RECDES * recdes,
HEAP_SCANCACHE * scan_cache,
int ispeeking
)
function heap_next_record_info
SCAN_CODE heap_next_record_info (
THREAD_ENTRY * thread_p,
const HFID * hfid,
OID * class_oid,
OID * next_oid,
RECDES * recdes,
HEAP_SCANCACHE * scan_cache,
int ispeeking,
DB_VALUE ** cache_recordinfo
)
function heap_next_sampling
SCAN_CODE heap_next_sampling (
THREAD_ENTRY * thread_p,
const HFID * hfid,
OID * class_oid,
OID * next_oid,
RECDES * recdes,
HEAP_SCANCACHE * scan_cache,
int ispeeking,
sampling_info * sampling
)
int heap_nonheader_page_capacity ()
function heap_object_upgrade_domain
int heap_object_upgrade_domain (
THREAD_ENTRY * thread_p,
HEAP_SCANCACHE * upd_scancache,
HEAP_CACHE_ATTRINFO * attr_info,
OID * oid,
const ATTR_ID att_id
)
function heap_ovf_delete
const OID * heap_ovf_delete (
THREAD_ENTRY * thread_p,
const HFID * hfid,
const OID * ovf_oid,
VFID * ovf_vfid_p
)
function heap_ovf_find_vfid
VFID * heap_ovf_find_vfid (
THREAD_ENTRY * thread_p,
const HFID * hfid,
VFID * ovf_vfid,
bool docreate,
PGBUF_LATCH_CONDITION latch_cond
)
function heap_page_get_max_mvccid
MVCCID heap_page_get_max_mvccid (
THREAD_ENTRY * thread_p,
PAGE_PTR heap_page
)
function heap_page_get_vacuum_status
HEAP_PAGE_VACUUM_STATUS heap_page_get_vacuum_status (
THREAD_ENTRY * thread_p,
PAGE_PTR heap_page
)
function heap_page_next
SCAN_CODE heap_page_next (
THREAD_ENTRY * thread_p,
const OID * class_oid,
const HFID * hfid,
VPID * next_vpid,
DB_VALUE ** cache_pageinfo
)
function heap_page_next_fix_old
SCAN_CODE heap_page_next_fix_old (
THREAD_ENTRY * thread_p,
HFID * hfid,
VPID * curr_vpid,
HEAP_SCANCACHE * scan_cache
)
function heap_page_prev
SCAN_CODE heap_page_prev (
THREAD_ENTRY * thread_p,
const OID * class_oid,
const HFID * hfid,
VPID * prev_vpid,
DB_VALUE ** cache_pageinfo
)
function heap_page_set_vacuum_status_none
void heap_page_set_vacuum_status_none (
THREAD_ENTRY * thread_p,
PAGE_PTR heap_page
)
function heap_prefetch
int heap_prefetch (
THREAD_ENTRY * thread_p,
OID * class_oid,
const OID * oid,
LC_COPYAREA_DESC * prefetch
)
function heap_prepare_get_context
SCAN_CODE heap_prepare_get_context (
THREAD_ENTRY * thread_p,
HEAP_GET_CONTEXT * context,
bool is_heap_scan,
NON_EXISTENT_HANDLING non_ex_handling_type
)
function heap_prepare_object_page
int heap_prepare_object_page (
THREAD_ENTRY * thread_p,
const OID * oid,
PGBUF_WATCHER * page_watcher_p,
PGBUF_LATCH_MODE latch_mode
)
function heap_prev
SCAN_CODE heap_prev (
THREAD_ENTRY * thread_p,
const HFID * hfid,
OID * class_oid,
OID * next_oid,
RECDES * recdes,
HEAP_SCANCACHE * scan_cache,
int ispeeking
)
function heap_prev_record_info
SCAN_CODE heap_prev_record_info (
THREAD_ENTRY * thread_p,
const HFID * hfid,
OID * class_oid,
OID * next_oid,
RECDES * recdes,
HEAP_SCANCACHE * scan_cache,
int ispeeking,
DB_VALUE ** cache_recordinfo
)
function heap_remove_page_on_vacuum
bool heap_remove_page_on_vacuum (
THREAD_ENTRY * thread_p,
PAGE_PTR * page_ptr,
HFID * hfid
)
function heap_rv_dump_append_pages_to_heap
void heap_rv_dump_append_pages_to_heap (
FILE * fp,
int length,
void * data
)
function heap_rv_dump_chain
void heap_rv_dump_chain (
FILE * fp,
int ignore_length,
void * data
)
function heap_rv_dump_reuse_page
void heap_rv_dump_reuse_page (
FILE * fp,
int ignore_length,
void * ignore_data
)
function heap_rv_dump_statistics
void heap_rv_dump_statistics (
FILE * fp,
int ignore_length,
void * data
)
function heap_rv_lob_remove_dir
int heap_rv_lob_remove_dir (
THREAD_ENTRY * thread_p,
LOG_RCV * rcv
)
function heap_rv_mark_deleted_on_postpone
int heap_rv_mark_deleted_on_postpone (
THREAD_ENTRY * thread_p,
LOG_RCV * rcv
)
function heap_rv_mark_deleted_on_undo
int heap_rv_mark_deleted_on_undo (
THREAD_ENTRY * thread_p,
LOG_RCV * rcv
)
function heap_rv_mvcc_redo_delete_home
int heap_rv_mvcc_redo_delete_home (
THREAD_ENTRY * thread_p,
LOG_RCV * rcv
)
function heap_rv_mvcc_redo_delete_newhome
int heap_rv_mvcc_redo_delete_newhome (
THREAD_ENTRY * thread_p,
LOG_RCV * rcv
)
function heap_rv_mvcc_redo_delete_overflow
int heap_rv_mvcc_redo_delete_overflow (
THREAD_ENTRY * thread_p,
LOG_RCV * rcv
)
function heap_rv_mvcc_redo_insert
int heap_rv_mvcc_redo_insert (
THREAD_ENTRY * thread_p,
LOG_RCV * rcv
)
function heap_rv_mvcc_redo_redistribute
int heap_rv_mvcc_redo_redistribute (
THREAD_ENTRY * thread_p,
LOG_RCV * rcv
)
function heap_rv_mvcc_undo_delete
int heap_rv_mvcc_undo_delete (
THREAD_ENTRY * thread_p,
LOG_RCV * rcv
)
function heap_rv_mvcc_undo_delete_overflow
int heap_rv_mvcc_undo_delete_overflow (
THREAD_ENTRY * thread_p,
LOG_RCV * rcv
)
function heap_rv_nop
int heap_rv_nop (
THREAD_ENTRY * thread_p,
LOG_RCV * rcv
)
function heap_rv_postpone_append_pages_to_heap
int heap_rv_postpone_append_pages_to_heap (
THREAD_ENTRY * thread_p,
LOG_RCV * recv
)
function heap_rv_redo_delete
int heap_rv_redo_delete (
THREAD_ENTRY * thread_p,
LOG_RCV * rcv
)
function heap_rv_redo_insert
int heap_rv_redo_insert (
THREAD_ENTRY * thread_p,
LOG_RCV * rcv
)
function heap_rv_redo_mark_reusable_slot
int heap_rv_redo_mark_reusable_slot (
THREAD_ENTRY * thread_p,
LOG_RCV * rcv
)
function heap_rv_redo_newpage
int heap_rv_redo_newpage (
THREAD_ENTRY * thread_p,
LOG_RCV * rcv
)
function heap_rv_redo_reuse_page
int heap_rv_redo_reuse_page (
THREAD_ENTRY * thread_p,
LOG_RCV * rcv
)
function heap_rv_redo_reuse_page_reuse_oid
int heap_rv_redo_reuse_page_reuse_oid (
THREAD_ENTRY * thread_p,
LOG_RCV * rcv
)
function heap_rv_redo_update
int heap_rv_redo_update (
THREAD_ENTRY * thread_p,
LOG_RCV * rcv
)
function heap_rv_redo_update_and_update_chain
int heap_rv_redo_update_and_update_chain (
THREAD_ENTRY * thread_p,
LOG_RCV * rcv
)
function heap_rv_remove_flags_from_offset
INT16 heap_rv_remove_flags_from_offset (
INT16 offset
)
function heap_rv_undo_delete
int heap_rv_undo_delete (
THREAD_ENTRY * thread_p,
LOG_RCV * rcv
)
function heap_rv_undo_insert
int heap_rv_undo_insert (
THREAD_ENTRY * thread_p,
LOG_RCV * rcv
)
function heap_rv_undo_ovf_update
int heap_rv_undo_ovf_update (
THREAD_ENTRY * thread_p,
LOG_RCV * rcv
)
function heap_rv_undo_update
int heap_rv_undo_update (
THREAD_ENTRY * thread_p,
LOG_RCV * rcv
)
function heap_rv_undoredo_pagehdr
int heap_rv_undoredo_pagehdr (
THREAD_ENTRY * thread_p,
LOG_RCV * rcv
)
function heap_rv_undoredo_update
int heap_rv_undoredo_update (
THREAD_ENTRY * thread_p,
LOG_RCV * rcv
)
function heap_rv_update_chain_after_mvcc_op
int heap_rv_update_chain_after_mvcc_op (
THREAD_ENTRY * thread_p,
LOG_RCV * rcv
)
function heap_scan_cache_allocate_area
int heap_scan_cache_allocate_area (
THREAD_ENTRY * thread_p,
HEAP_SCANCACHE * scan_cache_p,
int size
)
function heap_scan_get_visible_version
SCAN_CODE heap_scan_get_visible_version (
THREAD_ENTRY * thread_p,
const OID * oid,
OID * class_oid,
RECDES * recdes,
RECDES * peeked_recdes,
HEAP_SCANCACHE * scan_cache,
int ispeeking,
int old_chn
)
function heap_scancache_end
int heap_scancache_end (
THREAD_ENTRY * thread_p,
HEAP_SCANCACHE * scan_cache
)
function heap_scancache_end_modify
void heap_scancache_end_modify (
THREAD_ENTRY * thread_p,
HEAP_SCANCACHE * scan_cache
)
function heap_scancache_end_when_scan_will_resume
int heap_scancache_end_when_scan_will_resume (
THREAD_ENTRY * thread_p,
HEAP_SCANCACHE * scan_cache
)
function heap_scancache_quick_start
int heap_scancache_quick_start (
HEAP_SCANCACHE * scan_cache
)
function heap_scancache_quick_start_modify
int heap_scancache_quick_start_modify (
HEAP_SCANCACHE * scan_cache
)
function heap_scancache_quick_start_modify_with_class_oid
int heap_scancache_quick_start_modify_with_class_oid (
THREAD_ENTRY * thread_p,
HEAP_SCANCACHE * scan_cache,
OID * class_oid
)
function heap_scancache_quick_start_root_hfid
int heap_scancache_quick_start_root_hfid (
THREAD_ENTRY * thread_p,
HEAP_SCANCACHE * scan_cache
)
function heap_scancache_quick_start_with_class_hfid
int heap_scancache_quick_start_with_class_hfid (
THREAD_ENTRY * thread_p,
HEAP_SCANCACHE * scan_cache,
const HFID * hfid
)
function heap_scancache_quick_start_with_class_oid
int heap_scancache_quick_start_with_class_oid (
THREAD_ENTRY * thread_p,
HEAP_SCANCACHE * scan_cache,
OID * class_oid
)
function heap_scancache_start
int heap_scancache_start (
THREAD_ENTRY * thread_p,
HEAP_SCANCACHE * scan_cache,
const HFID * hfid,
const OID * class_oid,
int cache_last_fix_page,
MVCC_SNAPSHOT * mvcc_snapshot
)
function heap_scancache_start_modify
int heap_scancache_start_modify (
THREAD_ENTRY * thread_p,
HEAP_SCANCACHE * scan_cache,
const HFID * hfid,
const OID * class_oid,
int op_type,
MVCC_SNAPSHOT * mvcc_snapshot
)
function heap_scanrange_end
void heap_scanrange_end (
THREAD_ENTRY * thread_p,
HEAP_SCANRANGE * scan_range
)
function heap_scanrange_first
SCAN_CODE heap_scanrange_first (
THREAD_ENTRY * thread_p,
OID * first_oid,
RECDES * recdes,
HEAP_SCANRANGE * scan_range,
int ispeeking
)
function heap_scanrange_last
SCAN_CODE heap_scanrange_last (
THREAD_ENTRY * thread_p,
OID * last_oid,
RECDES * recdes,
HEAP_SCANRANGE * scan_range,
int ispeeking
)
function heap_scanrange_next
SCAN_CODE heap_scanrange_next (
THREAD_ENTRY * thread_p,
OID * next_oid,
RECDES * recdes,
HEAP_SCANRANGE * scan_range,
int ispeeking
)
function heap_scanrange_prev
SCAN_CODE heap_scanrange_prev (
THREAD_ENTRY * thread_p,
OID * prev_oid,
RECDES * recdes,
HEAP_SCANRANGE * scan_range,
int ispeeking
)
function heap_scanrange_start
int heap_scanrange_start (
THREAD_ENTRY * thread_p,
HEAP_SCANRANGE * scan_range,
const HFID * hfid,
const OID * class_oid,
MVCC_SNAPSHOT * mvcc_snapshot
)
function heap_scanrange_to_following
SCAN_CODE heap_scanrange_to_following (
THREAD_ENTRY * thread_p,
HEAP_SCANRANGE * scan_range,
OID * start_oid
)
function heap_scanrange_to_prior
SCAN_CODE heap_scanrange_to_prior (
THREAD_ENTRY * thread_p,
HEAP_SCANRANGE * scan_range,
OID * last_oid
)
function heap_set_autoincrement_value
int heap_set_autoincrement_value (
THREAD_ENTRY * thread_p,
HEAP_CACHE_ATTRINFO * attr_info,
HEAP_SCANCACHE * scan_cache,
int * is_set
)
int heap_set_mvcc_rec_header_on_overflow (
PAGE_PTR ovf_page,
MVCC_REC_HEADER * mvcc_header
)
function heap_should_try_update_stat
bool heap_should_try_update_stat (
const int current_freespace,
const int prev_freespace
)
function heap_stats_update
void heap_stats_update (
THREAD_ENTRY * thread_p,
PAGE_PTR pgptr,
const HFID * hfid,
int prev_freespace
)
function heap_update_logical
int heap_update_logical (
THREAD_ENTRY * thread_p,
HEAP_OPERATION_CONTEXT * context
)
function heap_vacuum_all_objects
int heap_vacuum_all_objects (
THREAD_ENTRY * thread_p,
HEAP_SCANCACHE * upd_scancache,
MVCCID threshold_mvccid
)
function heap_vpid_next
int heap_vpid_next (
THREAD_ENTRY * thread_p,
const HFID * hfid,
PAGE_PTR pgptr,
VPID * next_vpid
)
function heap_vpid_prev
int heap_vpid_prev (
THREAD_ENTRY * thread_p,
const HFID * hfid,
PAGE_PTR pgptr,
VPID * prev_vpid
)
function heap_vpid_skip_next
int heap_vpid_skip_next (
THREAD_ENTRY * thread_p,
const HFID * hfid,
PGBUF_WATCHER * curr_page_watcher,
PGBUF_WATCHER * old_page_watcher,
int skip_cnt,
VPID * vpid,
HEAP_SCANCACHE * scan_cache
)
function xheap_create
int xheap_create (
THREAD_ENTRY * thread_p,
HFID * hfid,
const OID * class_oid,
bool reuse_oid
)
function xheap_destroy
int xheap_destroy (
THREAD_ENTRY * thread_p,
const HFID * hfid,
const OID * class_oid
)
function xheap_destroy_newly_created
int xheap_destroy_newly_created (
THREAD_ENTRY * thread_p,
const HFID * hfid,
const OID * class_oid,
const bool force
)
function xheap_get_class_num_objects_pages
int xheap_get_class_num_objects_pages (
THREAD_ENTRY * thread_p,
const HFID * hfid,
int approximation,
int * nobjs,
int * npages
)
function xheap_get_maxslotted_reclength
int xheap_get_maxslotted_reclength (
int & maxslotted_reclength
)
function xheap_has_instance
int xheap_has_instance (
THREAD_ENTRY * thread_p,
const HFID * hfid,
OID * class_oid,
int has_visible_instance
)
function xheap_reclaim_addresses
int xheap_reclaim_addresses (
THREAD_ENTRY * thread_p,
const HFID * hfid
)
Public Static Functions Documentation
function check_supplemental_log
static bool check_supplemental_log (
THREAD_ENTRY * thread_p,
OID * classoid
)
function fill_string_to_buffer
static int fill_string_to_buffer (
char ** start,
char * end,
const char * str
)
function heap_add_chain_links
static int heap_add_chain_links (
THREAD_ENTRY * thread_p,
const HFID * hfid,
const VPID * vpid,
const VPID * next_link,
const VPID * prev_link,
PGBUF_WATCHER * page_watcher,
bool keep_page_fixed,
bool is_page_watcher_inited
)
function heap_attrinfo_check
static int heap_attrinfo_check (
const OID * inst_oid,
HEAP_CACHE_ATTRINFO * attr_info
)
function heap_attrinfo_determine_disksize
static size_t heap_attrinfo_determine_disksize (
HEAP_CACHE_ATTRINFO * attr_info,
bool is_mvcc_class,
size_t * offset_size_ptr
)
static int heap_attrinfo_get_record_header_size (
HEAP_CACHE_ATTRINFO * attr_info,
int payload_size,
bool is_mvcc_class,
size_t * offset_size_ptr
)
function heap_attrinfo_get_record_payload_size
static int heap_attrinfo_get_record_payload_size (
HEAP_CACHE_ATTRINFO * attr_info
)
function heap_attrinfo_recache
static int heap_attrinfo_recache (
THREAD_ENTRY * thread_p,
REPR_ID reprid,
HEAP_CACHE_ATTRINFO * attr_info
)
function heap_attrinfo_recache_attrepr
static int heap_attrinfo_recache_attrepr (
HEAP_CACHE_ATTRINFO * attr_info,
bool islast_reset
)
function heap_attrinfo_set_uninitialized
static int heap_attrinfo_set_uninitialized (
THREAD_ENTRY * thread_p,
OID * inst_oid,
RECDES * recdes,
HEAP_CACHE_ATTRINFO * attr_info
)
function heap_attrinfo_start_refoids
static int heap_attrinfo_start_refoids (
THREAD_ENTRY * thread_p,
OID * class_oid,
HEAP_CACHE_ATTRINFO * attr_info
)
static SCAN_CODE heap_attrinfo_transform_columns_to_disk (
THREAD_ENTRY * thread_p,
HEAP_CACHE_ATTRINFO * attr_info,
OR_BUF * buf,
std::set< int > * incremented_attrids,
int offset_size,
int header_size,
size_t mvcc_extra,
int lob_create_flag,
size_t * record_size
)
static SCAN_CODE heap_attrinfo_transform_fixed_to_disk (
THREAD_ENTRY * thread_p,
HEAP_CACHE_ATTRINFO * attr_info,
OR_BUF * buf,
int index,
std::set< int > * incremented_attrids,
char * bitmap_bound
)
static SCAN_CODE heap_attrinfo_transform_header_to_disk (
THREAD_ENTRY * thread_p,
HEAP_CACHE_ATTRINFO * attr_info,
OR_BUF * buf,
int offset_size,
bool is_mvcc_class,
bool is_update
)
static SCAN_CODE heap_attrinfo_transform_to_disk_internal (
THREAD_ENTRY * thread_p,
HEAP_CACHE_ATTRINFO * attr_info,
RECDES * old_recdes,
record_descriptor * new_recdes,
int lob_create_flag
)
static SCAN_CODE heap_attrinfo_transform_variable_to_disk (
THREAD_ENTRY * thread_p,
HEAP_CACHE_ATTRINFO * attr_info,
OR_BUF * buf,
char ** ptr_varvals,
int index,
int offset_size,
int header_size,
int lob_create_flag
)
function heap_attrvalue_point_fixed
static void heap_attrvalue_point_fixed (
RECDES * recdes,
HEAP_CACHE_ATTRINFO * attr_info,
OR_ATTRIBUTE * attrepr,
RECDES * raw
)
function heap_attrvalue_point_variable
static void heap_attrvalue_point_variable (
RECDES * recdes,
HEAP_CACHE_ATTRINFO * attr_info,
OR_ATTRIBUTE * attrepr,
RECDES * raw
)
function heap_attrvalue_read
static int heap_attrvalue_read (
RECDES * recdes,
HEAP_ATTRVALUE * value,
HEAP_CACHE_ATTRINFO * attr_info
)
static int heap_attrvalue_transform_to_dbvalue (
HEAP_ATTRVALUE * value,
OR_ATTRIBUTE * attrepr,
RECDES * raw
)
function heap_bestspace_to_string
static char * heap_bestspace_to_string (
char * buf,
int buf_size,
const HEAP_BESTSPACE * hb
)
function heap_build_forwarding_recdes
static void heap_build_forwarding_recdes (
RECDES * recdes_p,
INT16 rec_type,
OID * forward_oid
)
function heap_check_all_pages_by_file_table
static DISK_ISVALID heap_check_all_pages_by_file_table (
THREAD_ENTRY * thread_p,
HFID * hfid,
HEAP_CHKALL_RELOCOIDS * chk_objs
)
function heap_check_all_pages_by_heapchain
static DISK_ISVALID heap_check_all_pages_by_heapchain (
THREAD_ENTRY * thread_p,
HFID * hfid,
HEAP_CHKALL_RELOCOIDS * chk_objs,
INT32 * num_checked
)
function heap_chkreloc_end
static DISK_ISVALID heap_chkreloc_end (
HEAP_CHKALL_RELOCOIDS * chk
)
function heap_chkreloc_next
static DISK_ISVALID heap_chkreloc_next (
THREAD_ENTRY * thread_p,
HEAP_CHKALL_RELOCOIDS * chk,
PAGE_PTR pgptr
)
function heap_chkreloc_print_notfound
static int heap_chkreloc_print_notfound (
const void * ignore_reloc_oid,
void * ent,
void * xchk
)
function heap_chkreloc_start
static DISK_ISVALID heap_chkreloc_start (
HEAP_CHKALL_RELOCOIDS * chk
)
function heap_chnguess_decache
static int heap_chnguess_decache (
const OID * oid
)
function heap_chnguess_finalize
static int heap_chnguess_finalize (
void
)
function heap_chnguess_initialize
static int heap_chnguess_initialize (
void
)
function heap_chnguess_realloc
static int heap_chnguess_realloc (
void
)
function heap_chnguess_remove_entry
static int heap_chnguess_remove_entry (
const void * oid_key,
void * ent,
void * xignore
)
function heap_class_get_partition_info
static int heap_class_get_partition_info (
THREAD_ENTRY * thread_p,
const OID * class_oid,
OR_PARTITION * partition_info,
HFID * class_hfid,
REPR_ID * repr_id,
int * has_partition_info
)
function heap_classrepr_decache_guessed_last
static int heap_classrepr_decache_guessed_last (
const OID * class_oid
)
function heap_classrepr_dump
static int heap_classrepr_dump (
THREAD_ENTRY * thread_p,
FILE * fp,
const OID * class_oid,
const OR_CLASSREP * repr
)
function heap_classrepr_entry_alloc
static HEAP_CLASSREPR_ENTRY * heap_classrepr_entry_alloc (
void
)
function heap_classrepr_entry_free
static int heap_classrepr_entry_free (
HEAP_CLASSREPR_ENTRY * cache_entry
)
function heap_classrepr_entry_remove_from_LRU
static int heap_classrepr_entry_remove_from_LRU (
HEAP_CLASSREPR_ENTRY * cache_entry
)
function heap_classrepr_entry_reset
static int heap_classrepr_entry_reset (
HEAP_CLASSREPR_ENTRY * cache_entry
)
function heap_classrepr_finalize_cache
static int heap_classrepr_finalize_cache (
void
)
function heap_classrepr_get_from_record
static OR_CLASSREP * heap_classrepr_get_from_record (
THREAD_ENTRY * thread_p,
REPR_ID * last_reprid,
const OID * class_oid,
RECDES * class_recdes,
REPR_ID reprid
)
function heap_classrepr_initialize_cache
static int heap_classrepr_initialize_cache (
void
)
function heap_classrepr_lock_class
static int heap_classrepr_lock_class (
THREAD_ENTRY * thread_p,
HEAP_CLASSREPR_HASH * hash_anchor,
const OID * class_oid
)
function heap_classrepr_unlock_class
static int heap_classrepr_unlock_class (
HEAP_CLASSREPR_HASH * hash_anchor,
const OID * class_oid,
int need_hash_mutex
)
function heap_clear_operation_context
static void heap_clear_operation_context (
HEAP_OPERATION_CONTEXT * context,
HFID * hfid_p
)
function heap_compare_hfid
static int heap_compare_hfid (
const void * key_hfid1,
const void * key_hfid2
)
function heap_compare_vpid
static int heap_compare_vpid (
const void * key_vpid1,
const void * key_vpid2
)
function heap_copy_chain
static int heap_copy_chain (
THREAD_ENTRY * thread_p,
PAGE_PTR page_heap,
HEAP_CHAIN * chain
)
static int heap_copy_header_stats (
THREAD_ENTRY * thread_p,
PAGE_PTR page_header,
HEAP_HDR_STATS * header_stats
)
function heap_create_internal
static int heap_create_internal (
THREAD_ENTRY * thread_p,
HFID * hfid,
const OID * class_oid,
const bool reuse_oid
)
static void heap_delete_adjust_header (
MVCC_REC_HEADER * header_p,
MVCCID mvcc_id,
bool need_mvcc_header_max_size
)
function heap_delete_all_page_records
static bool heap_delete_all_page_records (
THREAD_ENTRY * thread_p,
const VPID * vpid,
PAGE_PTR pgptr
)
function heap_delete_bigone
static int heap_delete_bigone (
THREAD_ENTRY * thread_p,
HEAP_OPERATION_CONTEXT * context,
bool is_mvcc_op
)
function heap_delete_home
static int heap_delete_home (
THREAD_ENTRY * thread_p,
HEAP_OPERATION_CONTEXT * context,
bool is_mvcc_op
)
function heap_delete_physical
static int heap_delete_physical (
THREAD_ENTRY * thread_p,
HFID * hfid_p,
PAGE_PTR page_p,
OID * oid_p
)
function heap_delete_relocation
static int heap_delete_relocation (
THREAD_ENTRY * thread_p,
HEAP_OPERATION_CONTEXT * context,
bool is_mvcc_op
)
function heap_dump_hdr
static int heap_dump_hdr (
FILE * fp,
HEAP_HDR_STATS * heap_hdr
)
function heap_estimate_avg_length
static int heap_estimate_avg_length (
THREAD_ENTRY * thread_p,
const HFID * hfid,
int & avg_reclen
)
function heap_eval_function_index
static int heap_eval_function_index (
THREAD_ENTRY * thread_p,
FUNCTION_INDEX_INFO * func_index_info,
int n_atts,
int * att_ids,
HEAP_CACHE_ATTRINFO * attr_info,
RECDES * recdes,
int btid_index,
DB_VALUE * result,
FUNC_PRED_UNPACK_INFO * func_pred,
TP_DOMAIN ** fi_domain
)
function heap_file_map_chkreloc
static int heap_file_map_chkreloc (
THREAD_ENTRY * thread_p,
PAGE_PTR * page,
bool * stop,
void * args
)
function heap_find_location_and_insert_rec_newhome
static int heap_find_location_and_insert_rec_newhome (
THREAD_ENTRY * thread_p,
HEAP_OPERATION_CONTEXT * context
)
function heap_fix_forward_page
static int heap_fix_forward_page (
THREAD_ENTRY * thread_p,
HEAP_OPERATION_CONTEXT * context,
OID * forward_oid_hint
)
static int heap_fix_header_page (
THREAD_ENTRY * thread_p,
HEAP_OPERATION_CONTEXT * context
)
function heap_get_bigone_content
static SCAN_CODE heap_get_bigone_content (
THREAD_ENTRY * thread_p,
HEAP_SCANCACHE * scan_cache,
bool ispeeking,
OID * forward_oid,
RECDES * recdes
)
function heap_get_capacity
static int heap_get_capacity (
THREAD_ENTRY * thread_p,
const HFID * hfid,
INT64 * num_recs,
INT64 * num_recs_relocated,
INT64 * num_recs_inovf,
INT64 * num_pages,
int * avg_freespace,
int * avg_freespace_nolast,
int * avg_reclength,
int * avg_overhead
)
function heap_get_chain_ptr
static HEAP_CHAIN * heap_get_chain_ptr (
THREAD_ENTRY * thread_p,
PAGE_PTR page_heap
)
function heap_get_class_info_from_record
static int heap_get_class_info_from_record (
THREAD_ENTRY * thread_p,
const OID * class_oid,
HFID * hfid,
char ** classname_out
)
function heap_get_class_subclasses
static int heap_get_class_subclasses (
THREAD_ENTRY * thread_p,
const OID * class_oid,
int * count,
OID ** subclasses
)
function heap_get_file_type
static FILE_TYPE heap_get_file_type (
THREAD_ENTRY * thread_p,
HEAP_OPERATION_CONTEXT * context
)
static int heap_get_header_page (
THREAD_ENTRY * thread_p,
const HFID * hfid,
VPID * header_vpid
)
static HEAP_HDR_STATS * heap_get_header_stats_ptr (
THREAD_ENTRY * thread_p,
PAGE_PTR page_header
)
function heap_get_if_diff_chn
static SCAN_CODE heap_get_if_diff_chn (
THREAD_ENTRY * thread_p,
PAGE_PTR pgptr,
INT16 slotid,
RECDES * recdes,
bool ispeeking,
int chn,
MVCC_SNAPSHOT * mvcc_snapshot
)
function heap_get_insert_location_with_lock
static int heap_get_insert_location_with_lock (
THREAD_ENTRY * thread_p,
HEAP_OPERATION_CONTEXT * context,
PGBUF_WATCHER * home_hint_p
)
function heap_get_last_page
static int heap_get_last_page (
THREAD_ENTRY * thread_p,
const HFID * hfid,
HEAP_HDR_STATS * heap_hdr,
HEAP_SCANCACHE * scan_cache,
VPID * last_vpid,
PGBUF_WATCHER * pg_watcher
)
function heap_get_last_vpid
static int heap_get_last_vpid (
THREAD_ENTRY * thread_p,
const HFID * hfid,
VPID * last_vpid
)
function heap_get_page_info
static SCAN_CODE heap_get_page_info (
THREAD_ENTRY * thread_p,
const OID * cls_oid,
const HFID * hfid,
const VPID * vpid,
const PAGE_PTR pgptr,
DB_VALUE ** page_info
)
function heap_get_page_with_watcher
static int heap_get_page_with_watcher (
THREAD_ENTRY * thread_p,
const VPID * page_vpid,
PGBUF_WATCHER * pg_watcher
)
function heap_get_partition_attributes
static int heap_get_partition_attributes (
THREAD_ENTRY * thread_p,
const OID * cls_oid,
ATTR_ID * type_id,
ATTR_ID * values_id
)
function heap_get_partitions_from_subclasses
static int heap_get_partitions_from_subclasses (
THREAD_ENTRY * thread_p,
const OID * subclasses,
int * parts_count,
OR_PARTITION * partitions
)
function heap_get_record_info
static SCAN_CODE heap_get_record_info (
THREAD_ENTRY * thread_p,
const OID oid,
RECDES * recdes,
RECDES forward_recdes,
PGBUF_WATCHER * page_watcher,
HEAP_SCANCACHE * scan_cache,
bool ispeeking,
DB_VALUE ** record_info
)
function heap_get_record_location
static int heap_get_record_location (
THREAD_ENTRY * thread_p,
HEAP_OPERATION_CONTEXT * context
)
function heap_get_spage_type
static int heap_get_spage_type (
void
)
function heap_get_visible_version_from_log
static SCAN_CODE heap_get_visible_version_from_log (
THREAD_ENTRY * thread_p,
RECDES * recdes,
LOG_LSA * previous_version_lsa,
HEAP_SCANCACHE * scan_cache,
int has_chn
)
function heap_hash_hfid
static unsigned int heap_hash_hfid (
const void * key_hfid,
unsigned int htsize
)
function heap_hash_vpid
static unsigned int heap_hash_vpid (
const void * key_vpid,
unsigned int htsize
)
function heap_hfid_cache_get
static int heap_hfid_cache_get (
THREAD_ENTRY * thread_p,
const OID * class_oid,
HFID * hfid,
FILE_TYPE * ftype_out,
char ** classname_out
)
function heap_hfid_isvalid
static DISK_ISVALID heap_hfid_isvalid (
HFID * hfid
)
function heap_hfid_table_entry_alloc
static void * heap_hfid_table_entry_alloc (
void
)
function heap_hfid_table_entry_free
static int heap_hfid_table_entry_free (
void * unique_stat
)
function heap_hfid_table_entry_init
static int heap_hfid_table_entry_init (
void * unique_stat
)
function heap_hfid_table_entry_key_compare
static int heap_hfid_table_entry_key_compare (
void * k1,
void * k2
)
function heap_hfid_table_entry_key_copy
static int heap_hfid_table_entry_key_copy (
void * src,
void * dest
)
function heap_hfid_table_entry_key_hash
static unsigned int heap_hfid_table_entry_key_hash (
void * key,
int hash_table_size
)
function heap_hfid_table_entry_uninit
static int heap_hfid_table_entry_uninit (
void * entry
)
static int heap_insert_adjust_recdes_header (
THREAD_ENTRY * thread_p,
HEAP_OPERATION_CONTEXT * context,
bool is_mvcc_class
)
function heap_insert_handle_multipage_record
static int heap_insert_handle_multipage_record (
THREAD_ENTRY * thread_p,
HEAP_OPERATION_CONTEXT * context
)
function heap_insert_newhome
static int heap_insert_newhome (
THREAD_ENTRY * thread_p,
HEAP_OPERATION_CONTEXT * parent_context,
RECDES * recdes_p,
OID * out_oid_p,
PGBUF_WATCHER * newhome_pg_watcher
)
function heap_insert_physical
static int heap_insert_physical (
THREAD_ENTRY * thread_p,
HEAP_OPERATION_CONTEXT * context
)
function heap_is_reusable_oid
static bool heap_is_reusable_oid (
const FILE_TYPE file_type
)
function heap_is_valid_oid
static int heap_is_valid_oid (
THREAD_ENTRY * thread_p,
OID * oid
)
function heap_link_watchers
static void heap_link_watchers (
HEAP_OPERATION_CONTEXT * child,
HEAP_OPERATION_CONTEXT * parent
)
function heap_locate_attribute
static OR_ATTRIBUTE * heap_locate_attribute (
ATTR_ID attrid,
HEAP_CACHE_ATTRINFO * attr_info
)
function heap_log_delete_physical
static void heap_log_delete_physical (
THREAD_ENTRY * thread_p,
PAGE_PTR page_p,
VFID * vfid_p,
OID * oid_p,
RECDES * recdes_p,
bool mark_reusable,
LOG_LSA * undo_lsa
)
function heap_log_insert_physical
static void heap_log_insert_physical (
THREAD_ENTRY * thread_p,
PAGE_PTR page_p,
VFID * vfid_p,
OID * oid_p,
RECDES * recdes_p,
bool is_mvcc_op,
bool is_redistribute_op
)
function heap_log_update_physical
static void heap_log_update_physical (
THREAD_ENTRY * thread_p,
PAGE_PTR page_p,
VFID * vfid_p,
OID * oid_p,
RECDES * old_recdes_p,
RECDES * new_recdes_p,
LOG_RCVINDEX rcvindex
)
function heap_mark_class_as_modified
static int heap_mark_class_as_modified (
THREAD_ENTRY * thread_p,
OID * oid_p,
int chn,
bool decache
)
function heap_midxkey_get_value
static int heap_midxkey_get_value (
RECDES * recdes,
OR_ATTRIBUTE * att,
DB_VALUE * value,
HEAP_CACHE_ATTRINFO * attr_info
)
function heap_midxkey_key_generate
static DB_MIDXKEY * heap_midxkey_key_generate (
THREAD_ENTRY * thread_p,
RECDES * recdes,
DB_MIDXKEY * midxkey,
int * att_ids,
HEAP_CACHE_ATTRINFO * attrinfo,
DB_VALUE * func_res,
int func_col_id,
int func_attr_index_start,
TP_DOMAIN * midxkey_domain,
OID * rec_oid
)
function heap_midxkey_key_get
static DB_MIDXKEY * heap_midxkey_key_get (
RECDES * recdes,
DB_MIDXKEY * midxkey,
OR_INDEX * index,
HEAP_CACHE_ATTRINFO * attrinfo,
DB_VALUE * func_res,
TP_DOMAIN * func_domain,
TP_DOMAIN ** key_domain,
OID * rec_oid,
bool is_check_foreign
)
function heap_mvcc_log_delete
static void heap_mvcc_log_delete (
THREAD_ENTRY * thread_p,
LOG_DATA_ADDR * p_addr,
LOG_RCVINDEX rcvindex
)
function heap_mvcc_log_home_change_on_delete
static void heap_mvcc_log_home_change_on_delete (
THREAD_ENTRY * thread_p,
RECDES * old_recdes,
RECDES * new_recdes,
LOG_DATA_ADDR * p_addr
)
function heap_mvcc_log_home_no_change
static void heap_mvcc_log_home_no_change (
THREAD_ENTRY * thread_p,
LOG_DATA_ADDR * p_addr
)
function heap_mvcc_log_insert
static void heap_mvcc_log_insert (
THREAD_ENTRY * thread_p,
RECDES * p_recdes,
LOG_DATA_ADDR * p_addr
)
function heap_mvcc_log_redistribute
static void heap_mvcc_log_redistribute (
THREAD_ENTRY * thread_p,
RECDES * p_recdes,
LOG_DATA_ADDR * p_addr
)
function heap_next_internal
static SCAN_CODE heap_next_internal (
THREAD_ENTRY * thread_p,
const HFID * hfid,
OID * class_oid,
OID * next_oid,
RECDES * recdes,
HEAP_SCANCACHE * scan_cache,
bool ispeeking,
bool reversed_direction,
DB_VALUE ** cache_recordinfo,
sampling_info * sampling
)
function heap_ovf_flush
static int heap_ovf_flush (
THREAD_ENTRY * thread_p,
const OID * ovf_oid
)
function heap_ovf_get
static SCAN_CODE heap_ovf_get (
THREAD_ENTRY * thread_p,
const OID * ovf_oid,
RECDES * recdes,
int chn,
MVCC_SNAPSHOT * mvcc_snapshot
)
function heap_ovf_get_capacity
static int heap_ovf_get_capacity (
THREAD_ENTRY * thread_p,
const OID * ovf_oid,
int * ovf_len,
int * ovf_num_pages,
int * ovf_overhead,
int * ovf_free_space
)
function heap_ovf_get_length
static int heap_ovf_get_length (
THREAD_ENTRY * thread_p,
const OID * ovf_oid
)
function heap_ovf_insert
static OID * heap_ovf_insert (
THREAD_ENTRY * thread_p,
const HFID * hfid,
OID * ovf_oid,
RECDES * recdes
)
function heap_ovf_update
static const OID * heap_ovf_update (
THREAD_ENTRY * thread_p,
const HFID * hfid,
const OID * ovf_oid,
RECDES * recdes
)
function heap_page_rv_chain_update
static void heap_page_rv_chain_update (
THREAD_ENTRY * thread_p,
PAGE_PTR heap_page,
MVCCID mvccid,
bool vacuum_status_change
)
function heap_page_update_chain_after_mvcc_op
static void heap_page_update_chain_after_mvcc_op (
THREAD_ENTRY * thread_p,
PAGE_PTR heap_page,
MVCCID mvccid
)
function heap_reinitialize_page
static int heap_reinitialize_page (
THREAD_ENTRY * thread_p,
PAGE_PTR pgptr,
const bool is_header_page
)
function heap_reuse
static const HFID * heap_reuse (
THREAD_ENTRY * thread_p,
const HFID * hfid,
const OID * class_oid,
const bool reuse_oid
)
function heap_rv_mvcc_redo_delete_internal
static int heap_rv_mvcc_redo_delete_internal (
THREAD_ENTRY * thread_p,
PAGE_PTR page,
PGSLOTID slotid,
MVCCID mvccid
)
function heap_scan_cache_allocate_recdes_data
static int heap_scan_cache_allocate_recdes_data (
THREAD_ENTRY * thread_p,
HEAP_SCANCACHE * scan_cache_p,
RECDES * recdes_p,
int size
)
function heap_scan_pb_lock_and_fetch_debug
static PAGE_PTR heap_scan_pb_lock_and_fetch_debug (
THREAD_ENTRY * thread_p,
const VPID * vpid_ptr,
PAGE_FETCH_MODE fetch_mode,
LOCK lock,
HEAP_SCANCACHE * scan_cache,
PGBUF_WATCHER * pg_watcher,
const char * caller_file,
const int caller_line,
const char * caller_func
)
function heap_scancache_add_partition_node
static int heap_scancache_add_partition_node (
THREAD_ENTRY * thread_p,
HEAP_SCANCACHE * scan_cache,
OID * partition_oid
)
function heap_scancache_block_allocate
static void heap_scancache_block_allocate (
cubmem::block & b,
size_t size
)
function heap_scancache_block_deallocate
static void heap_scancache_block_deallocate (
cubmem::block & b
)
function heap_scancache_check_with_hfid
static int heap_scancache_check_with_hfid (
THREAD_ENTRY * thread_p,
HFID * hfid,
OID * class_oid,
HEAP_SCANCACHE ** scan_cache
)
function heap_scancache_end_internal
static int heap_scancache_end_internal (
THREAD_ENTRY * thread_p,
HEAP_SCANCACHE * scan_cache,
bool scan_state
)
function heap_scancache_force_modify
static int heap_scancache_force_modify (
THREAD_ENTRY * thread_p,
HEAP_SCANCACHE * scan_cache
)
function heap_scancache_quick_end
static int heap_scancache_quick_end (
THREAD_ENTRY * thread_p,
HEAP_SCANCACHE * scan_cache
)
function heap_scancache_quick_start_internal
static int heap_scancache_quick_start_internal (
HEAP_SCANCACHE * scan_cache,
const HFID * hfid
)
function heap_scancache_reset_modify
static int heap_scancache_reset_modify (
THREAD_ENTRY * thread_p,
HEAP_SCANCACHE * scan_cache,
const HFID * hfid,
const OID * class_oid
)
function heap_scancache_start_internal
static int heap_scancache_start_internal (
THREAD_ENTRY * thread_p,
HEAP_SCANCACHE * scan_cache,
const HFID * hfid,
const OID * class_oid,
int cache_last_fix_page,
bool is_queryscan,
MVCC_SNAPSHOT * mvcc_snapshot
)
function heap_scanrange_isvalid
static DISK_ISVALID heap_scanrange_isvalid (
HEAP_SCANRANGE * scan_range
)
function heap_stats_add_bestspace
static HEAP_STATS_ENTRY * heap_stats_add_bestspace (
THREAD_ENTRY * thread_p,
const HFID * hfid,
VPID * vpid,
int freespace
)
function heap_stats_bestspace_finalize
static int heap_stats_bestspace_finalize (
void
)
function heap_stats_bestspace_initialize
static int heap_stats_bestspace_initialize (
void
)
function heap_stats_del_bestspace_by_hfid
static int heap_stats_del_bestspace_by_hfid (
THREAD_ENTRY * thread_p,
const HFID * hfid
)
function heap_stats_del_bestspace_by_vpid
static int heap_stats_del_bestspace_by_vpid (
THREAD_ENTRY * thread_p,
VPID * vpid
)
function heap_stats_entry_free
static int heap_stats_entry_free (
THREAD_ENTRY * thread_p,
void * data,
void * args
)
function heap_stats_find_best_page
static PAGE_PTR heap_stats_find_best_page (
THREAD_ENTRY * thread_p,
const HFID * hfid,
int needed_space,
bool isnew_rec,
HEAP_SCANCACHE * space_cache,
PGBUF_WATCHER * pg_watcher
)
function heap_stats_find_page_in_bestspace
static HEAP_FINDSPACE heap_stats_find_page_in_bestspace (
THREAD_ENTRY * thread_p,
const HFID * hfid,
HEAP_BESTSPACE * bestspace,
int * idx_badspace,
int record_length,
int needed_space,
HEAP_SCANCACHE * scan_cache,
PGBUF_WATCHER * pg_watcher
)
function heap_stats_get_bestspace_by_vpid
static HEAP_BESTSPACE heap_stats_get_bestspace_by_vpid (
THREAD_ENTRY * thread_p,
VPID * vpid
)
function heap_stats_get_min_freespace
static int heap_stats_get_min_freespace (
HEAP_HDR_STATS * heap_hdr
)
function heap_stats_get_second_best
static int heap_stats_get_second_best (
HEAP_HDR_STATS * heap_hdr,
VPID * vpid
)
function heap_stats_put_second_best
static void heap_stats_put_second_best (
HEAP_HDR_STATS * heap_hdr,
VPID * vpid
)
function heap_stats_quick_num_fit_in_bestspace
static int heap_stats_quick_num_fit_in_bestspace (
HEAP_BESTSPACE * bestspace,
int num_entries,
int unit_size,
int unfill_space
)
function heap_stats_sync_bestspace
static int heap_stats_sync_bestspace (
THREAD_ENTRY * thread_p,
const HFID * hfid,
HEAP_HDR_STATS * heap_hdr,
VPID * hdr_vpid,
bool scan_all,
bool can_cycle
)
function heap_stats_update_internal
static int heap_stats_update_internal (
THREAD_ENTRY * thread_p,
const HFID * hfid,
VPID * lotspace_vpid,
int free_space
)
function heap_try_fetch_forward_page
static inline int heap_try_fetch_forward_page (
THREAD_ENTRY * thread_p,
PAGE_PTR * home_pgptr_p,
const VPID * home_vpid_p,
const OID * oid_p,
PAGE_PTR * fwd_pgptr_p,
const VPID * fwd_vpid_p,
const OID * fwd_oid_p,
HEAP_SCANCACHE * scan_cache,
int * again_count,
int again_max
)
static inline int heap_try_fetch_header_page (
THREAD_ENTRY * thread_p,
PAGE_PTR * home_pgptr_p,
const VPID * home_vpid_p,
const OID * oid_p,
PAGE_PTR * hdr_pgptr_p,
const VPID * hdr_vpid_p,
HEAP_SCANCACHE * scan_cache,
int * again_count,
int again_max
)
static inline int heap_try_fetch_header_with_forward_page (
THREAD_ENTRY * thread_p,
PAGE_PTR * home_pgptr_p,
const VPID * home_vpid_p,
const OID * oid_p,
PAGE_PTR * hdr_pgptr_p,
const VPID * hdr_vpid_p,
PAGE_PTR * fwd_pgptr_p,
const VPID * fwd_vpid_p,
const OID * fwd_oid_p,
HEAP_SCANCACHE * scan_cache,
int * again_count,
int again_max
)
function heap_unfix_watchers
static void heap_unfix_watchers (
THREAD_ENTRY * thread_p,
HEAP_OPERATION_CONTEXT * context
)
static int heap_update_adjust_recdes_header (
THREAD_ENTRY * thread_p,
HEAP_OPERATION_CONTEXT * update_context,
bool is_mvcc_class
)
function heap_update_and_log_header
static int heap_update_and_log_header (
THREAD_ENTRY * thread_p,
const HFID * hfid,
const PGBUF_WATCHER heap_header_watcher,
HEAP_HDR_STATS * heap_hdr,
const VPID new_next_vpid,
const VPID new_last_vpid,
const int new_num_pages
)
function heap_update_bigone
static int heap_update_bigone (
THREAD_ENTRY * thread_p,
HEAP_OPERATION_CONTEXT * context,
bool is_mvcc_op
)
function heap_update_home
static int heap_update_home (
THREAD_ENTRY * thread_p,
HEAP_OPERATION_CONTEXT * context,
bool is_mvcc_op
)
function heap_update_physical
static int heap_update_physical (
THREAD_ENTRY * thread_p,
PAGE_PTR page_p,
short slot_id,
RECDES * recdes_p
)
function heap_update_relocation
static int heap_update_relocation (
THREAD_ENTRY * thread_p,
HEAP_OPERATION_CONTEXT * context,
bool is_mvcc_op
)
function heap_update_set_prev_version
static int heap_update_set_prev_version (
THREAD_ENTRY * thread_p,
const OID * oid,
PGBUF_WATCHER * home_pg_watcher,
PGBUF_WATCHER * fwd_pg_watcher,
LOG_LSA * prev_version_lsa
)
function heap_vpid_alloc
static int heap_vpid_alloc (
THREAD_ENTRY * thread_p,
const HFID * hfid,
PAGE_PTR hdr_pgptr,
HEAP_HDR_STATS * heap_hdr,
HEAP_SCANCACHE * scan_cache,
PGBUF_WATCHER * new_pg_watcher
)
function heap_vpid_init_new
static int heap_vpid_init_new (
THREAD_ENTRY * thread_p,
PAGE_PTR page,
void * args
)
function heap_vpid_remove
static VPID * heap_vpid_remove (
THREAD_ENTRY * thread_p,
const HFID * hfid,
HEAP_HDR_STATS * heap_hdr,
VPID * rm_vpid
)
Macro Definition Documentation
define BEST_PAGE_SEARCH_MAX_COUNT
#define BEST_PAGE_SEARCH_MAX_COUNT `100`
define CLASSREPR_HASH_SIZE
#define CLASSREPR_HASH_SIZE `(heap_Classrepr_cache.num_entries * 2)`
define CLASSREPR_REPR_INCREMENT
#define CLASSREPR_REPR_INCREMENT `10`
define DEFAULT_REPR_INCREMENT
#define DEFAULT_REPR_INCREMENT `16`
define HEAP_BESTSPACE_SYNC_THRESHOLD
#define HEAP_BESTSPACE_SYNC_THRESHOLD `(0.1f)`
define HEAP_BITMASK
#define HEAP_BITMASK `( HEAP_NBITS_IN_BYTE - 1)`
define HEAP_BITMASK_INBYTE
#define HEAP_BITMASK_INBYTE (
bit_num
) `(1 << (( unsigned int )( bit_num ) & HEAP_BITMASK ))`
define HEAP_BIT_CLEAR
#define HEAP_BIT_CLEAR (
byte_ptr,
bit_num
) `/* multi line expression */`
define HEAP_BIT_GET
#define HEAP_BIT_GET (
byte_ptr,
bit_num
) `(* HEAP_BYTEGET ( byte_ptr , bit_num ) & HEAP_BITMASK_INBYTE ( bit_num ))`
define HEAP_BIT_SET
#define HEAP_BIT_SET (
byte_ptr,
bit_num
) `/* multi line expression */`
define HEAP_BYTEGET
#define HEAP_BYTEGET (
byte_ptr,
bit_num
) `(( unsigned char *)( byte_ptr ) + HEAP_BYTEOFFSET_OFBIT ( bit_num ))`
define HEAP_BYTEOFFSET_OFBIT
#define HEAP_BYTEOFFSET_OFBIT (
bit_num
) `(( unsigned int )( bit_num ) >> HEAP_NSHIFTS )`
define HEAP_CHKRELOC_UNFOUND_SHORT
#define HEAP_CHKRELOC_UNFOUND_SHORT `5`
define HEAP_CHK_ADD_UNFOUND_RELOCOIDS
#define HEAP_CHK_ADD_UNFOUND_RELOCOIDS `100`
define HEAP_CHNGUESS_FUDGE_MININDICES
#define HEAP_CHNGUESS_FUDGE_MININDICES `(100)`
define HEAP_CLASSREPR_MAXCACHE
#define HEAP_CLASSREPR_MAXCACHE `1024`
define HEAP_DEBUG_ISVALID_SCANRANGE
#define HEAP_DEBUG_ISVALID_SCANRANGE (
scan_range
) `heap_scanrange_isvalid (scan_range)`
define HEAP_DEBUG_SCANCACHE_INITPATTERN
#define HEAP_DEBUG_SCANCACHE_INITPATTERN `(12345)`
define HEAP_GUESS_NUM_ATTRS_REFOIDS
#define HEAP_GUESS_NUM_ATTRS_REFOIDS `100`
define HEAP_GUESS_NUM_INDEXED_ATTRS
#define HEAP_GUESS_NUM_INDEXED_ATTRS `100`
define HEAP_IS_PAGE_OF_OID
#define HEAP_IS_PAGE_OF_OID (
thread_p,
pgptr,
oid
) `/* multi line expression */`
define HEAP_LOG_MVCC_INSERT_MAX_REDO_CRUMBS
#define HEAP_LOG_MVCC_INSERT_MAX_REDO_CRUMBS `4`
define HEAP_LOG_MVCC_REDISTRIBUTE_MAX_REDO_CRUMBS
#define HEAP_LOG_MVCC_REDISTRIBUTE_MAX_REDO_CRUMBS `4`
define HEAP_MAX_FIRSTSLOTID_LENGTH
#define HEAP_MAX_FIRSTSLOTID_LENGTH `( sizeof ( HEAP_HDR_STATS ))`
define HEAP_MAYNEED_DECACHE_GUESSED_LASTREPRS
#define HEAP_MAYNEED_DECACHE_GUESSED_LASTREPRS (
class_oid,
hfid
) `/* multi line expression */`
#define HEAP_MVCC_SET_HEADER_MAXIMUM_SIZE (
mvcc_rec_header_p
) `/* multi line expression */`
define HEAP_NBITS_IN_BYTE
#define HEAP_NBITS_IN_BYTE `(8)`
define HEAP_NBITS_TO_NBYTES
#define HEAP_NBITS_TO_NBYTES (
bit_cnt
) `(( unsigned int )(( bit_cnt ) + HEAP_BITMASK ) >> HEAP_NSHIFTS )`
define HEAP_NBYTES_CLEARED
#define HEAP_NBYTES_CLEARED (
byte_ptr,
byte_cnt
) `memset (( byte_ptr ), '\0', ( byte_cnt ))`
define HEAP_NBYTES_TO_NBITS
#define HEAP_NBYTES_TO_NBITS (
byte_cnt
) `(( unsigned int )( byte_cnt ) << HEAP_NSHIFTS )`
define HEAP_NSHIFTS
#define HEAP_NSHIFTS `(3) /* For multiplication / division by 8 */`
define HEAP_NUM_BEST_SPACESTATS
#define HEAP_NUM_BEST_SPACESTATS `10`
define HEAP_PAGE_FLAG_VACUUM_ONCE
#define HEAP_PAGE_FLAG_VACUUM_ONCE `0x80000000`
define HEAP_PAGE_FLAG_VACUUM_STATUS_MASK
#define HEAP_PAGE_FLAG_VACUUM_STATUS_MASK `0xC0000000`
define HEAP_PAGE_FLAG_VACUUM_UNKNOWN
#define HEAP_PAGE_FLAG_VACUUM_UNKNOWN `0x40000000`
define HEAP_PAGE_GET_VACUUM_STATUS
#define HEAP_PAGE_GET_VACUUM_STATUS (
chain
) `/* multi line expression */`
define HEAP_PAGE_SET_VACUUM_STATUS
#define HEAP_PAGE_SET_VACUUM_STATUS (
chain,
status
) `/* multi line expression */`
define HEAP_PERF_START
#define HEAP_PERF_START (
thread_p,
context
) `PERF_UTIME_TRACKER_START (thread_p, (context)->time_track)`
define HEAP_PERF_TRACK_EXECUTE
#define HEAP_PERF_TRACK_EXECUTE (
thread_p,
context
) `/* multi line expression */`
define HEAP_PERF_TRACK_LOGGING
#define HEAP_PERF_TRACK_LOGGING (
thread_p,
context
) `/* multi line expression */`
define HEAP_PERF_TRACK_PREPARE
#define HEAP_PERF_TRACK_PREPARE (
thread_p,
context
) `/* multi line expression */`
define HEAP_RV_FLAG_VACUUM_STATUS_CHANGE
#define HEAP_RV_FLAG_VACUUM_STATUS_CHANGE `0x8000`
define HEAP_SCAN_ORDERED_HFID
#define HEAP_SCAN_ORDERED_HFID (
scan
) `(((scan) != NULL ) ? (&(scan)->node.hfid) : ( PGBUF_ORDERED_NULL_HFID ))`
define HEAP_STATS_ENTRY_FREELIST_SIZE
#define HEAP_STATS_ENTRY_FREELIST_SIZE `1000`
define HEAP_STATS_ENTRY_MHT_EST_SIZE
#define HEAP_STATS_ENTRY_MHT_EST_SIZE `1000`
define HEAP_STATS_NEXT_BEST_INDEX
#define HEAP_STATS_NEXT_BEST_INDEX (
i
) `((( i ) + 1) % HEAP_NUM_BEST_SPACESTATS )`
define HEAP_STATS_PREV_BEST_INDEX
#define HEAP_STATS_PREV_BEST_INDEX (
i
) `((( i ) == 0) ? ( HEAP_NUM_BEST_SPACESTATS - 1) : (( i ) - 1));`
define HEAP_UPDATE_IS_MVCC_OP
#define HEAP_UPDATE_IS_MVCC_OP (
is_mvcc_class,
update_style
) `(( is_mvcc_class ) && (! HEAP_IS_UPDATE_INPLACE ( update_style )) ? ( true ) : ( false ))`
define MVCC_SET_DELETE_INFO
#define MVCC_SET_DELETE_INFO (
mvcc_delete_info_p,
row_delete_id,
satisfies_del_result
) `/* multi line expression */`
define OR_FIXED_ATTRIBUTES_OFFSET_BY_OBJ
#define OR_FIXED_ATTRIBUTES_OFFSET_BY_OBJ (
obj,
nvars
) `( OR_HEADER_SIZE (obj) + OR_VAR_TABLE_SIZE_INTERNAL ( nvars , OR_GET_OFFSET_SIZE (obj)))`
define REPR_HASH
#define REPR_HASH (
class_oid
) `( OID_PSEUDO_KEY (class_oid)% CLASSREPR_HASH_SIZE )`
#define __STDC_FORMAT_MACROS
define heap_bestspace_log
#define heap_bestspace_log (
...
) `if ( prm_get_bool_value ( PRM_ID_DEBUG_BESTSPACE )) _er_log_debug ( ARG_FILE_LINE , __VA_ARGS__ )`
define heap_classrepr_log_er
#define heap_classrepr_log_er (
msg,
...
) `if ( prm_get_bool_value ( PRM_ID_REPR_CACHE_LOG )) \ heap_classrepr_logging_template ( ARG_FILE_LINE , _er_log_debug , msg, __VA_ARGS__ )`
define heap_classrepr_log_stack
#define heap_classrepr_log_stack (
msg,
...
) `if ( prm_get_bool_value ( PRM_ID_REPR_CACHE_LOG )) \ heap_classrepr_logging_template ( ARG_FILE_LINE , er_print_callstack , msg, __VA_ARGS__ )`
define heap_hfid_table_log
#define heap_hfid_table_log (
thp,
oidp,
msg,
...
) `/* multi line expression */`
define heap_scan_pb_lock_and_fetch
#define heap_scan_pb_lock_and_fetch (
...
) `heap_scan_pb_lock_and_fetch_debug ( __VA_ARGS__ , ARG_FILE_LINE_FUNC )`
The documentation for this class was generated from the following file cubrid/src/storage/heap_file.c