Skip to content

File log_manager.c

FileList > cubrid > src > transaction > log_manager.c

Go to the source code of this file

  • #include "config.h"
  • #include <stdio.h>
  • #include <string.h>
  • #include <stddef.h>
  • #include <stdlib.h>
  • #include <time.h>
  • #include <sys/stat.h>
  • #include <assert.h>
  • #include <sys/types.h>
  • #include <fcntl.h>
  • #include <cstdint>
  • #include "log_manager.h"
  • #include "btree.h"
  • #include "elo.h"
  • #include "recovery.h"
  • #include "replication.h"
  • #include "xserver_interface.h"
  • #include "page_buffer.h"
  • #include "porting_inline.hpp"
  • #include "query_manager.h"
  • #include "message_catalog.h"
  • #include "msgcat_set_log.hpp"
  • #include "environment_variable.h"
  • #include "catalog_class.h"
  • #include "server_support.h"
  • #include "log_append.hpp"
  • #include "log_archives.hpp"
  • #include "log_compress.h"
  • #include "log_record.hpp"
  • #include "log_recovery.h"
  • #include "log_system_tran.hpp"
  • #include "log_volids.hpp"
  • #include "log_writer.h"
  • #include "partition_sr.h"
  • #include "filter_pred_cache.h"
  • #include "heap_file.h"
  • #include "slotted_page.h"
  • #include "object_primitive.h"
  • #include "object_representation.h"
  • #include "tz_support.h"
  • #include "db_date.h"
  • #include "fault_injection.h"
  • #include "connection_support.hpp"
  • #include "db_value_printer.hpp"
  • #include "mem_block.hpp"
  • #include "string_buffer.hpp"
  • #include "boot_sr.h"
  • #include "thread_daemon.hpp"
  • #include "thread_entry.hpp"
  • #include "thread_entry_task.hpp"
  • #include "thread_looper.hpp"
  • #include "thread_manager.hpp"
  • #include "transaction_transient.hpp"
  • #include "vacuum.h"
  • #include "xasl_cache.h"
  • #include "overflow_file.h"
  • #include "dbtype.h"
  • #include "cnv.h"
  • #include "flashback.h"
  • #include "memory_wrapper.hpp"

Classes

Type Name
struct actve_log_header_scan_context
struct archive_log_header_scan_context
class log_remove_log_archive_daemon_task

Public Types

Type Name
typedef struct actve_log_header_scan_context ACTIVE_LOG_HEADER_SCAN_CTX
typedef struct archive_log_header_scan_context ARCHIVE_LOG_HEADER_SCAN_CTX

Public Attributes

Type Name
CDC_GLOBAL cdc_Gl
bool cdc_Logging = [**false**](broker__monitor_8c.md#function-timeout)
std::atomic< std::int64_t > log_Clock_msec = {0}

Public Static Attributes

Type Name
const int LOG_REC_UNDO_MAX_ATTEMPTS = 3
cubthread::daemon * cdc_Loginfo_producer_daemon = [**NULL**](freelistheap_8h.md#define-null)
cubthread::daemon * log_Check_ha_delay_info_daemon = [**NULL**](freelistheap_8h.md#define-null)
cubthread::daemon * log_Checkpoint_daemon = [**NULL**](freelistheap_8h.md#define-null)
cubthread::daemon * log_Clock_daemon = [**NULL**](freelistheap_8h.md#define-null)
cubthread::daemon * log_Flush_daemon = [**NULL**](freelistheap_8h.md#define-null)
std::atomic_bool log_Flush_has_been_requested = {[**false**](broker__monitor_8c.md#function-timeout)}
bool log_No_logging = [**false**](broker__monitor_8c.md#function-timeout)
cubthread::daemon * log_Remove_log_archive_daemon = [**NULL**](freelistheap_8h.md#define-null)

Public Functions

Type Name
void LOG_CS_DEMOTE (THREAD_ENTRY * thread_p)
void LOG_CS_ENTER (THREAD_ENTRY * thread_p)
void LOG_CS_ENTER_READ_MODE (THREAD_ENTRY * thread_p)
void LOG_CS_EXIT (THREAD_ENTRY * thread_p)
bool LOG_CS_OWN (THREAD_ENTRY * thread_p)
bool LOG_CS_OWN_WRITE_MODE (THREAD_ENTRY * thread_p)
void LOG_CS_PROMOTE (THREAD_ENTRY * thread_p)
REGISTER_DAEMON (log_checkpoint)
REGISTER_DAEMON (log_remove_log_archive)
REGISTER_DAEMON (log_clock)
REGISTER_DAEMON (ha_delay_check)
REGISTER_DAEMON (log_flush)
REGISTER_DAEMON (cdc_loginfo_producer)
int cdc_cleanup ()
void cdc_cleanup_consumer ()
void cdc_daemons_destroy ()
void cdc_daemons_init ()
int cdc_finalize ()
int cdc_find_lsa (THREAD_ENTRY * thread_p, time_t * extraction_time, LOG_LSA * start_lsa)
int cdc_free_extraction_filter ()
int cdc_get_loginfo_metadata (LOG_LSA * lsa, int * length, int * num_log_info)
int cdc_get_recdes (THREAD_ENTRY * thread_p, LOG_LSA * undo_lsa, RECDES * undo_recdes, LOG_LSA * redo_lsa, RECDES * redo_recdes, bool is_flashback)
SCAN_CODE cdc_get_undo_record (THREAD_ENTRY * thread_p, LOG_PAGE * log_page_p, LOG_LSA lsa, RECDES * undo_recdes)
int cdc_initialize ()
void cdc_kill_producer ()
void cdc_loginfo_producer_daemon_init ()
int cdc_make_dml_loginfo (THREAD_ENTRY * thread_p, int trid, char * user, CDC_DML_TYPE dml_type, OID classoid, RECDES * undo_recdes, RECDES * redo_recdes, CDC_LOGINFO_ENTRY * dml_entry, bool is_flashback)
int cdc_make_loginfo (THREAD_ENTRY * thread_p, LOG_LSA * start_lsa)
LOG_PAGEID cdc_min_log_pageid_to_keep ()
void cdc_pause_consumer ()
void cdc_pause_producer ()
void cdc_reinitialize_queue (LOG_LSA * start_lsa)
int cdc_set_configuration (int max_log_item, int timeout, int all_in_cond, char ** user, int num_user, uint64_t * classoids, int num_class)
int cdc_set_extraction_lsa (LOG_LSA * lsa)
int cdc_validate_lsa (THREAD_ENTRY * thread_p, LOG_LSA * lsa)
void cdc_wakeup_consumer ()
void cdc_wakeup_producer ()
int locator_drop_transient_class_name_entries (THREAD_ENTRY * thread_p, LOG_LSA * savep_lsa)
TRAN_STATE log_abort (THREAD_ENTRY * thread_p, int tran_index)
void log_abort_all_active_transaction (THREAD_ENTRY * thread_p)
TRAN_STATE log_abort_local (THREAD_ENTRY * thread_p, LOG_TDES * tdes, bool is_local_tran)
TRAN_STATE log_abort_partial (THREAD_ENTRY * thread_p, const char * savepoint_name, LOG_LSA * savept_lsa)
int log_active_log_header_end_scan (THREAD_ENTRY * thread_p, void ** ptr)
SCAN_CODE log_active_log_header_next_scan (THREAD_ENTRY * thread_p, int cursor, DB_VALUE ** out_values, int out_cnt, void * ptr)
int log_active_log_header_start_scan (THREAD_ENTRY * thread_p, int show_type, DB_VALUE ** arg_values, int arg_cnt, void ** ptr)
int log_add_to_modified_class_list (THREAD_ENTRY * thread_p, const char * classname, const OID * class_oid)
void log_append_compensate (THREAD_ENTRY * thread_p, LOG_RCVINDEX rcvindex, const VPID * vpid, PGLENGTH offset, PAGE_PTR pgptr, int length, const void * data, LOG_TDES * tdes)
void log_append_compensate_with_undo_nxlsa (THREAD_ENTRY * thread_p, LOG_RCVINDEX rcvindex, const VPID * vpid, PGLENGTH offset, PAGE_PTR pgptr, int length, const void * data, LOG_TDES * tdes, const LOG_LSA * undo_nxlsa)
void log_append_dboutside_redo (THREAD_ENTRY * thread_p, LOG_RCVINDEX rcvindex, int length, const void * data)
void log_append_empty_record (THREAD_ENTRY * thread_p, LOG_RECTYPE logrec_type, LOG_DATA_ADDR * addr)
void log_append_ha_server_state (THREAD_ENTRY * thread_p, int state)
void log_append_postpone (THREAD_ENTRY * thread_p, LOG_RCVINDEX rcvindex, LOG_DATA_ADDR * addr, int length, const void * data)
void log_append_redo_crumbs (THREAD_ENTRY * thread_p, LOG_RCVINDEX rcvindex, LOG_DATA_ADDR * addr, int num_crumbs, const LOG_CRUMB * crumbs)
void log_append_redo_data (THREAD_ENTRY * thread_p, LOG_RCVINDEX rcvindex, LOG_DATA_ADDR * addr, int length, const void * data)
void log_append_redo_data2 (THREAD_ENTRY * thread_p, LOG_RCVINDEX rcvindex, const VFID * vfid, PAGE_PTR pgptr, PGLENGTH offset, int length, const void * data)
void log_append_redo_recdes (THREAD_ENTRY * thread_p, LOG_RCVINDEX rcvindex, LOG_DATA_ADDR * addr, const RECDES * recdes)
void log_append_redo_recdes2 (THREAD_ENTRY * thread_p, LOG_RCVINDEX rcvindex, const VFID * vfid, PAGE_PTR pgptr, PGLENGTH offset, const RECDES * recdes)
void log_append_repl_info (THREAD_ENTRY * thread_p, LOG_TDES * tdes, bool is_commit)
void log_append_run_postpone (THREAD_ENTRY * thread_p, LOG_RCVINDEX rcvindex, LOG_DATA_ADDR * addr, const VPID * rcv_vpid, int length, const void * data, const LOG_LSA * ref_lsa)
LOG_LSA * log_append_savepoint (THREAD_ENTRY * thread_p, const char * savept_name)
void log_append_supplemental_info (THREAD_ENTRY * thread_p, SUPPLEMENT_REC_TYPE rec_type, int length, const void * data)
int log_append_supplemental_lsa (THREAD_ENTRY * thread_p, SUPPLEMENT_REC_TYPE rec_type, OID * classoid, LOG_LSA * undo_lsa, LOG_LSA * redo_lsa)
int log_append_supplemental_serial (THREAD_ENTRY * thread_p, const char * serial_name, int cached_num, OID * classoid, const OID * serial_oid)
int log_append_supplemental_undo_record (THREAD_ENTRY * thread_p, RECDES * undo_recdes)
void log_append_undo_crumbs (THREAD_ENTRY * thread_p, LOG_RCVINDEX rcvindex, LOG_DATA_ADDR * addr, int num_crumbs, const LOG_CRUMB * crumbs)
void log_append_undo_data (THREAD_ENTRY * thread_p, LOG_RCVINDEX rcvindex, LOG_DATA_ADDR * addr, int length, const void * data)
void log_append_undo_data2 (THREAD_ENTRY * thread_p, LOG_RCVINDEX rcvindex, const VFID * vfid, PAGE_PTR pgptr, PGLENGTH offset, int length, const void * data)
void log_append_undo_recdes (THREAD_ENTRY * thread_p, LOG_RCVINDEX rcvindex, LOG_DATA_ADDR * addr, const RECDES * recdes)
void log_append_undo_recdes2 (THREAD_ENTRY * thread_p, LOG_RCVINDEX rcvindex, const VFID * vfid, PAGE_PTR pgptr, PGLENGTH offset, const RECDES * recdes)
void log_append_undoredo_crumbs (THREAD_ENTRY * thread_p, LOG_RCVINDEX rcvindex, LOG_DATA_ADDR * addr, int num_undo_crumbs, int num_redo_crumbs, const LOG_CRUMB * undo_crumbs, const LOG_CRUMB * redo_crumbs)
void log_append_undoredo_data (THREAD_ENTRY * thread_p, LOG_RCVINDEX rcvindex, LOG_DATA_ADDR * addr, int undo_length, int redo_length, const void * undo_data, const void * redo_data)
void log_append_undoredo_data2 (THREAD_ENTRY * thread_p, LOG_RCVINDEX rcvindex, const VFID * vfid, PAGE_PTR pgptr, PGLENGTH offset, int undo_length, int redo_length, const void * undo_data, const void * redo_data)
void log_append_undoredo_recdes (THREAD_ENTRY * thread_p, LOG_RCVINDEX rcvindex, LOG_DATA_ADDR * addr, const RECDES * undo_recdes, const RECDES * redo_recdes)
void log_append_undoredo_recdes2 (THREAD_ENTRY * thread_p, LOG_RCVINDEX rcvindex, const VFID * vfid, PAGE_PTR pgptr, PGLENGTH offset, const RECDES * undo_recdes, const RECDES * redo_recdes)
int log_archive_log_header_end_scan (THREAD_ENTRY * thread_p, void ** ptr)
SCAN_CODE log_archive_log_header_next_scan (THREAD_ENTRY * thread_p, int cursor, DB_VALUE ** out_values, int out_cnt, void * ptr)
int log_archive_log_header_start_scan (THREAD_ENTRY * thread_p, int show_type, DB_VALUE ** arg_values, int arg_cnt, void ** ptr)
void log_check_ha_delay_info_daemon_init ()
bool log_check_system_op_is_started (THREAD_ENTRY * thread_p)
void log_checkpoint_daemon_init ()
void log_clock_daemon_init ()
TRAN_STATE log_commit (THREAD_ENTRY * thread_p, int tran_index, bool retain_lock)
TRAN_STATE log_commit_local (THREAD_ENTRY * thread_p, LOG_TDES * tdes, bool retain_lock, bool is_local_tran)
TRAN_STATE log_complete (THREAD_ENTRY * thread_p, LOG_TDES * tdes, LOG_RECTYPE iscommitted, LOG_GETNEWTRID get_newtrid, LOG_WRITE_EOT_LOG wrote_eot_log)
TRAN_STATE log_complete_for_2pc (THREAD_ENTRY * thread_p, LOG_TDES * tdes, LOG_RECTYPE iscommitted, LOG_GETNEWTRID get_newtrid)
int log_create (THREAD_ENTRY * thread_p, const char * db_fullname, const char * logpath, const char * prefix_logname, DKNPAGES npages)
void log_do_postpone (THREAD_ENTRY * thread_p, LOG_TDES * tdes, LOG_LSA * start_postpone_lsa)
int log_execute_run_postpone (THREAD_ENTRY * thread_p, LOG_LSA * log_lsa, LOG_REC_REDO * redo, char * redo_rcv_data)
void log_final (THREAD_ENTRY * thread_p)
void log_flush_daemon_get_stats (UINT64 * statsp)
void log_flush_daemon_init ()
LOG_LSA * log_get_append_lsa (void)
int log_get_charset_from_header_page (THREAD_ENTRY * thread_p, const char * db_fullname, const char * logpath, const char * prefix_logname)
void log_get_checkpoint_interval (bool & is_timed_wait, cubthread::delta_time & period)
INT64 log_get_clock_msec (void)
LOG_LSA * log_get_crash_point_lsa (void)
float log_get_db_compatibility (void)
int log_get_db_start_parameters (INT64 * db_creation, LOG_LSA * chkpt_lsa)
LOG_LSA * log_get_eof_lsa (void)
LOG_LSA * log_get_final_restored_lsa (void)
PGLENGTH log_get_io_page_size (THREAD_ENTRY * thread_p, const char * db_fullname, const char * logpath, const char * prefix_logname)
void log_get_log_group_commit_interval (bool & is_timed_wait, cubthread::delta_time & period)
int log_get_next_nested_top (THREAD_ENTRY * thread_p, LOG_TDES * tdes, LOG_LSA * start_postpone_lsa, LOG_TOPOP_RANGE ** out_nxtop_range_stack)
int log_get_num_pages_for_creation (int db_npages)
LOG_LSA * log_get_parent_lsa_system_op (THREAD_ENTRY * thread_p, LOG_LSA * parent_lsa)
LOG_LSA * log_get_restart_lsa (void)
SCAN_CODE log_get_undo_record (THREAD_ENTRY * thread_p, LOG_PAGE * log_page_p, LOG_LSA process_lsa, RECDES * recdes)
void log_initialize (THREAD_ENTRY * thread_p, const char * db_fullname, const char * logpath, const char * prefix_logname, int ismedia_crash, BO_RESTART_ARG * r_args)
bool log_is_active_log_sane (THREAD_ENTRY * thread_p, const char * db_fullname, const char * logpath, const char * prefix_logname)
bool log_is_class_being_modified (THREAD_ENTRY * thread_p, const OID * class_oid)
bool log_is_in_crash_recovery (void)
bool log_is_in_crash_recovery_and_not_yet_completes_redo (void)
bool log_is_log_flush_daemon_available ()
bool log_is_logged_since_restart (const LOG_LSA * lsa_ptr)
bool log_is_no_logging (void)
bool log_is_tran_in_system_op (THREAD_ENTRY * thread_p)
int log_read_sysop_start_postpone (THREAD_ENTRY * thread_p, LOG_LSA * log_lsa, LOG_PAGE * log_page, bool with_undo_data, LOG_REC_SYSOP_START_POSTPONE * sysop_start_postpone, int * undo_buffer_size, char ** undo_buffer, int * undo_size, char ** undo_data)
int log_recreate (THREAD_ENTRY * thread_p, const char * db_fullname, const char * logpath, const char * prefix_logname, DKNPAGES log_npages, FILE * out_fp)
void log_remove_log_archive_daemon_init ()
void log_restart_emergency (THREAD_ENTRY * thread_p, const char * db_fullname, const char * logpath, const char * prefix_logname)
int log_rv_copy_char (THREAD_ENTRY * thread_p, LOG_RCV * rcv)
void log_rv_dump_char (FILE * fp, int length, void * data)
void log_rv_dump_hexa (FILE * fp, int length, void * data)
int log_rv_outside_noop_redo (THREAD_ENTRY * thread_p, LOG_RCV * rcv)
void log_set_db_restore_time (THREAD_ENTRY * thread_p, INT64 db_restore_time)
void log_set_ha_promotion_time (THREAD_ENTRY * thread_p, INT64 ha_promotion_time)
int log_set_no_logging (void)
void log_simulate_crash (THREAD_ENTRY * thread_p, int flush_log, int flush_data_pages)
void log_skip_logging (THREAD_ENTRY * thread_p, LOG_DATA_ADDR * addr)
void log_skip_logging_set_lsa (THREAD_ENTRY * thread_p, LOG_DATA_ADDR * addr)
void log_stop_ha_delay_registration ()
void log_sysop_abort (THREAD_ENTRY * thread_p)
void log_sysop_attach_to_outer (THREAD_ENTRY * thread_p)
void log_sysop_commit (THREAD_ENTRY * thread_p)
void log_sysop_end_logical_compensate (THREAD_ENTRY * thread_p, LOG_LSA * undo_nxlsa)
void log_sysop_end_logical_run_postpone (THREAD_ENTRY * thread_p, LOG_LSA * posp_lsa)
void log_sysop_end_logical_undo (THREAD_ENTRY * thread_p, LOG_RCVINDEX rcvindex, const VFID * vfid, int undo_size, const char * undo_data)
void log_sysop_end_recovery_postpone (THREAD_ENTRY * thread_p, LOG_REC_SYSOP_END * log_record, int data_size, const char * data)
const char * log_sysop_end_type_string (LOG_SYSOP_END_TYPE end_type)
void log_sysop_start (THREAD_ENTRY * thread_p)
void log_sysop_start_atomic (THREAD_ENTRY * thread_p)
const char * log_to_string (LOG_RECTYPE type)
int log_update_compatibility_and_release (THREAD_ENTRY * thread_p, float compatibility, char release)
void log_update_global_btid_online_index_stats (THREAD_ENTRY * thread_p)
void log_wakeup_checkpoint_daemon ()
void log_wakeup_log_flush_daemon ()
void log_wakeup_remove_log_archive_daemon ()
void xlog_dump (THREAD_ENTRY * thread_p, FILE * out_fp, int isforward, LOG_PAGEID start_logpageid, DKNPAGES dump_npages, TRANID desired_tranid)

Public Static Functions

Type Name
bool cdc_check_if_schema_changed (RECDES * recdes, HEAP_CACHE_ATTRINFO * attr_info)
int cdc_check_log_page (THREAD_ENTRY * thread_p, LOG_PAGE * log_page_p, LOG_LSA * lsa)
int cdc_check_lsa_range (THREAD_ENTRY * thread_p, LOG_LSA * lsa)
int cdc_compare_undoredo_dbvalue (const db_value * new_value, const db_value * old_value)
int cdc_find_primary_key (THREAD_ENTRY * thread_p, OID classoid, int repr_id, int * num_attr, int ** pk_attr_id)
int cdc_find_user (THREAD_ENTRY * thread_p, LOG_LSA lsa, int trid, char ** user)
int cdc_get_attribute_size (DB_VALUE * value)
int cdc_get_lsa_with_start_point (THREAD_ENTRY * thread_p, time_t * time, LOG_LSA * start_lsa)
int cdc_get_overflow_recdes (THREAD_ENTRY * thread_p, LOG_PAGE * log_page_p, RECDES * recdes, LOG_LSA lsa, LOG_RCVINDEX rcvindex, bool is_redo)
int cdc_get_ovfdata_from_log (THREAD_ENTRY * thread_p, LOG_PAGE * log_page_p, LOG_LSA * process_lsa, int * length, char ** data, LOG_RCVINDEX rcvindex, bool is_redo)
int cdc_get_start_point_from_file (THREAD_ENTRY * thread_p, int arv_num, LOG_LSA * ret_lsa, time_t * time)
bool cdc_is_filtered_class (OID classoid)
bool cdc_is_filtered_user (char * user)
int cdc_log_extract (THREAD_ENTRY * thread_p, LOG_LSA * process_lsa, CDC_LOGINFO_ENTRY * log_info_entry)
int cdc_log_read_advance_and_preserve_if_needed (THREAD_ENTRY * thread_p, int size, LOG_LSA * lsa, LOG_PAGE * log_page_p, LOG_PAGE * preserved)
void cdc_loginfo_producer_execute (cubthread::entry & thread_ref)
int cdc_make_dcl_loginfo (time_t at_time, int trid, char * user, int log_type, CDC_LOGINFO_ENTRY * dcl_entry)
int cdc_make_ddl_loginfo (char * supplement_data, int trid, const char * user, CDC_LOGINFO_ENTRY * ddl_entry)
int cdc_make_error_loginfo (int trid, char * user, CDC_DML_TYPE dml_type, OID classoid, CDC_LOGINFO_ENTRY * dml_entry)
int cdc_make_timer_loginfo (time_t at_time, int trid, char * user, CDC_LOGINFO_ENTRY * timer_entry)
int cdc_put_value_to_loginfo (db_value * new_value, char ** ptr)
int log_abort_by_tdes (THREAD_ENTRY * thread_p, LOG_TDES * tdes)
void log_abort_task_execute (cubthread::entry & thread_ref, LOG_TDES & tdes)
void log_append_abort_log (THREAD_ENTRY * thread_p, LOG_TDES * tdes, LOG_LSA * abort_lsa)
void log_append_commit_log (THREAD_ENTRY * thread_p, LOG_TDES * tdes, LOG_LSA * commit_lsa)
void log_append_commit_log_with_lock (THREAD_ENTRY * thread_p, LOG_TDES * tdes, LOG_LSA * commit_lsa)
void log_append_commit_postpone (THREAD_ENTRY * thread_p, LOG_TDES * tdes, LOG_LSA * start_postpone_lsa)
void log_append_commit_postpone_obsolete (THREAD_ENTRY * thread_p, LOG_TDES * tdes, LOG_LSA * start_postpone_lsa)
void log_append_compensate_internal (THREAD_ENTRY * thread_p, LOG_RCVINDEX rcvindex, const VPID * vpid, PGLENGTH offset, PAGE_PTR pgptr, int length, const void * data, LOG_TDES * tdes, const LOG_LSA * undo_nxlsa)
void log_append_donetime_internal (THREAD_ENTRY * thread_p, LOG_TDES * tdes, LOG_LSA * eot_lsa, LOG_RECTYPE iscommitted, enum LOG_PRIOR_LSA_LOCK with_lock)
void log_append_repl_info_and_commit_log (THREAD_ENTRY * thread_p, LOG_TDES * tdes, LOG_LSA * commit_lsa)
void log_append_repl_info_internal (THREAD_ENTRY * thread_p, LOG_TDES * tdes, bool is_commit, int with_lock)
void log_append_repl_info_with_lock (THREAD_ENTRY * thread_p, LOG_TDES * tdes, bool is_commit)
void log_append_sysop_end (THREAD_ENTRY * thread_p, LOG_TDES * tdes, LOG_REC_SYSOP_END * sysop_end, int data_size, const char * data)
void log_append_sysop_start_postpone (THREAD_ENTRY * thread_p, LOG_TDES * tdes, LOG_REC_SYSOP_START_POSTPONE * sysop_start_postpone, int data_size, const char * data)
void log_ascii_dump (FILE * out_fp, int length, void * data)
void log_build_full_path (const char * input_path, char * full_path)
bool log_can_skip_redo_logging (LOG_RCVINDEX rcvindex, const LOG_TDES * ignore_tdes, LOG_DATA_ADDR * addr)
bool log_can_skip_undo_logging (THREAD_ENTRY * thread_p, LOG_RCVINDEX rcvindex, const LOG_TDES * tdes, LOG_DATA_ADDR * addr)
void log_change_tran_as_completed (THREAD_ENTRY * thread_p, LOG_TDES * tdes, LOG_RECTYPE iscommitted, LOG_LSA * lsa)
void log_check_ha_delay_info_execute (cubthread::entry & thread_ref)
void log_checkpoint_execute (cubthread::entry & thread_ref)
void log_cleanup_modified_class (const tx_transient_class_entry & t, bool & stop)
void log_cleanup_modified_class_list (THREAD_ENTRY * thread_p, LOG_TDES * tdes, LOG_LSA * savept_lsa, bool release, bool decache_classrepr)
void log_clock_execute (cubthread::entry & thread_ref)
int log_create_internal (THREAD_ENTRY * thread_p, const char * db_fullname, const char * logpath, const char * prefix_logname, DKNPAGES npages, INT64 * db_creation)
void log_daemons_destroy ()
void log_daemons_init ()
void log_dump_checkpoint_topops (FILE * out_fp, int length, void * data)
void log_dump_data (THREAD_ENTRY * thread_p, FILE * out_fp, int length, LOG_LSA * log_lsa, LOG_PAGE * log_page_p, void(*)(FILE *fp, int, void *) dumpfun, LOG_ZIP * log_dump_ptr)
void log_dump_data (THREAD_ENTRY * thread_p, FILE * out_fp, int length, LOG_LSA * log_lsa, LOG_PAGE * log_page_p, void(*)(FILE *, int, void *) dumpfun, LOG_ZIP * log_dump_ptr)
void log_dump_header (FILE * out_fp, LOG_HEADER * log_header_p)
LOG_PAGE * log_dump_record (THREAD_ENTRY * thread_p, FILE * out_fp, LOG_RECTYPE record_type, LOG_LSA * lsa_p, LOG_PAGE * log_page_p, LOG_ZIP * log_zip_p)
LOG_PAGE * log_dump_record_2pc_acknowledgement (THREAD_ENTRY * thread_p, FILE * out_fp, LOG_LSA * lsa_p, LOG_PAGE * log_page_p)
LOG_PAGE * log_dump_record_2pc_prepare_commit (THREAD_ENTRY * thread_p, FILE * out_fp, LOG_LSA * lsa_p, LOG_PAGE * log_page_p)
LOG_PAGE * log_dump_record_2pc_start (THREAD_ENTRY * thread_p, FILE * out_fp, LOG_LSA * lsa_p, LOG_PAGE * log_page_p)
LOG_PAGE * log_dump_record_checkpoint (THREAD_ENTRY * thread_p, FILE * out_fp, LOG_LSA * lsa_p, LOG_PAGE * log_page_p)
LOG_PAGE * log_dump_record_commit_postpone (THREAD_ENTRY * thread_p, FILE * out_fp, LOG_LSA * lsa_p, LOG_PAGE * log_page_p)
LOG_PAGE * log_dump_record_commit_postpone_obsolete (THREAD_ENTRY * thread_p, FILE * out_fp, LOG_LSA * log_lsa, LOG_PAGE * log_page_p)
LOG_PAGE * log_dump_record_compensate (THREAD_ENTRY * thread_p, FILE * out_fp, LOG_LSA * lsa_p, LOG_PAGE * log_page_p)
LOG_PAGE * log_dump_record_dbout_redo (THREAD_ENTRY * thread_p, FILE * out_fp, LOG_LSA * lsa_p, LOG_PAGE * log_page_p)
LOG_PAGE * log_dump_record_ha_server_state (THREAD_ENTRY * thread_p, FILE * out_fp, LOG_LSA * log_lsa, LOG_PAGE * log_page_p)
void log_dump_record_header_to_string (LOG_RECORD_HEADER * log, char * buf, size_t len)
LOG_PAGE * log_dump_record_mvcc_redo (THREAD_ENTRY * thread_p, FILE * out_fp, LOG_LSA * lsa_p, LOG_PAGE * log_page_p, LOG_ZIP * log_zip_p)
LOG_PAGE * log_dump_record_mvcc_undo (THREAD_ENTRY * thread_p, FILE * out_fp, LOG_LSA * lsa_p, LOG_PAGE * log_page_p, LOG_ZIP * log_zip_p)
LOG_PAGE * log_dump_record_mvcc_undoredo (THREAD_ENTRY * thread_p, FILE * out_fp, LOG_LSA * lsa_p, LOG_PAGE * log_page_p, LOG_ZIP * log_zip_p)
LOG_PAGE * log_dump_record_postpone (THREAD_ENTRY * thread_p, FILE * out_fp, LOG_LSA * lsa_p, LOG_PAGE * log_page_p)
LOG_PAGE * log_dump_record_redo (THREAD_ENTRY * thread_p, FILE * out_fp, LOG_LSA * lsa_p, LOG_PAGE * log_page_p, LOG_ZIP * log_zip_p)
LOG_PAGE * log_dump_record_replication (THREAD_ENTRY * thread_p, FILE * out_fp, LOG_LSA * lsa_p, LOG_PAGE * log_page_p)
LOG_PAGE * log_dump_record_save_point (THREAD_ENTRY * thread_p, FILE * out_fp, LOG_LSA * lsa_p, LOG_PAGE * log_page_p)
LOG_PAGE * log_dump_record_supplemental_info (THREAD_ENTRY * thread_p, FILE * out_fp, LOG_LSA * log_lsa, LOG_PAGE * log_page_p)
LOG_PAGE * log_dump_record_sysop_end (THREAD_ENTRY * thread_p, LOG_LSA * log_lsa, LOG_PAGE * log_page_p, LOG_ZIP * log_zip_p, FILE * out_fp)
LOG_PAGE * log_dump_record_sysop_end_internal (THREAD_ENTRY * thread_p, LOG_REC_SYSOP_END * sysop_end, LOG_LSA * log_lsa, LOG_PAGE * log_page_p, LOG_ZIP * log_zip_p, FILE * out_fp)
LOG_PAGE * log_dump_record_sysop_start_postpone (THREAD_ENTRY * thread_p, FILE * out_fp, LOG_LSA * lsa_p, LOG_PAGE * log_page_p, LOG_ZIP * log_zip_p)
LOG_PAGE * log_dump_record_transaction_finish (THREAD_ENTRY * thread_p, FILE * out_fp, LOG_LSA * lsa_p, LOG_PAGE * log_page_p)
LOG_PAGE * log_dump_record_undo (THREAD_ENTRY * thread_p, FILE * out_fp, LOG_LSA * lsa_p, LOG_PAGE * log_page_p, LOG_ZIP * log_zip_p)
LOG_PAGE * log_dump_record_undoredo (THREAD_ENTRY * thread_p, FILE * out_fp, LOG_LSA * lsa_p, LOG_PAGE * log_page_p, LOG_ZIP * log_zip_p)
void log_find_end_log (THREAD_ENTRY * thread_p, LOG_LSA * end_lsa)
void log_flush_execute (cubthread::entry & thread_ref)
LOG_LSA * log_get_savepoint_lsa (THREAD_ENTRY * thread_p, const char * savept_name, LOG_TDES * tdes, LOG_LSA * savept_lsa)
void log_hexa_dump (FILE * out_fp, int length, void * data)
int log_initialize_internal (THREAD_ENTRY * thread_p, const char * db_fullname, const char * logpath, const char * prefix_logname, bool ismedia_crash, BO_RESTART_ARG * r_args, bool init_emergency)
void log_repl_data_dump (FILE * out_fp, int length, void * data)
void log_repl_schema_dump (FILE * out_fp, int length, void * data)
void log_rollback (THREAD_ENTRY * thread_p, LOG_TDES * tdes, const LOG_LSA * upto_lsa_ptr)
void log_rollback_record (THREAD_ENTRY * thread_p, LOG_LSA * log_lsa, LOG_PAGE * log_page_p, LOG_RCVINDEX rcvindex, VPID * rcv_vpid, LOG_RCV * rcv, LOG_TDES * tdes, LOG_ZIP * log_unzip_ptr)
int log_run_postpone_op (THREAD_ENTRY * thread_p, LOG_LSA * log_lsa, LOG_PAGE * log_pgptr)
void log_sysop_commit_internal (THREAD_ENTRY * thread_p, LOG_REC_SYSOP_END * log_record, int data_size, const char * data, bool is_rv_finish_postpone)
void log_sysop_do_postpone (THREAD_ENTRY * thread_p, LOG_TDES * tdes, LOG_REC_SYSOP_END * sysop_end, int data_size, const char * data)
void log_sysop_end_begin (THREAD_ENTRY * thread_p, int * tran_index_out, LOG_TDES ** tdes_out)
void log_sysop_end_final (THREAD_ENTRY * thread_p, LOG_TDES * tdes)
void log_sysop_end_random_exit (THREAD_ENTRY * thread_p)
void log_sysop_end_unstack (THREAD_ENTRY * thread_p, LOG_TDES * tdes)
int log_sysop_get_level (THREAD_ENTRY * thread_p)
void log_sysop_get_tran_index_and_tdes (THREAD_ENTRY * thread_p, int * tran_index_out, LOG_TDES ** tdes_out)
void log_tran_do_postpone (THREAD_ENTRY * thread_p, LOG_TDES * tdes)
int log_undo_rec_restartable (THREAD_ENTRY * thread_p, LOG_RCVINDEX rcvindex, LOG_RCV * rcv)
bool log_verify_dbcreation (THREAD_ENTRY * thread_p, VOLID volid, const INT64 * log_dbcreation)
int logtb_tran_update_stats_online_index_rb (THREAD_ENTRY * thread_p, void * data, void * args)

Macros

Type Name
define CDC_IS_IGNORE_LOGINFO_ERROR (ERROR) /* multi line expression */
define FLASHBACK_ERROR_HANDLING (is_flashback, e, classoid, classname) /* multi line expression */
define LOG_FLUSH_LOGGING_HAS_BEEN_SKIPPED (thread_p) /* multi line expression */
define LOG_ISCHECKPOINT_TIME () /* multi line expression */
define LOG_ISUNSAFE_TO_SKIP_RCVINDEX (RCVI) (([**RCVI**](broker__monitor_8c.md#function-timeout)) == RVDK\_LINK\_PERM\_VOLEXT)
define LOG_NEED_TO_SET_LSA (RCVI, PGPTR) /* multi line expression */
define LOG_TDES_LAST_SYSOP (tdes) (&([**tdes**](broker__monitor_8c.md#function-timeout))-&gt;topops.stack[([**tdes**](broker__monitor_8c.md#function-timeout))-&gt;topops.last])
define LOG_TDES_LAST_SYSOP_PARENT_LSA (tdes) (&[**LOG\_TDES\_LAST\_SYSOP**](log__manager_8c.md#define-log_tdes_last_sysop)([**tdes**](broker__monitor_8c.md#function-timeout))-&gt;lastparent\_lsa)
define LOG_TDES_LAST_SYSOP_POSP_LSA (tdes) (&[**LOG\_TDES\_LAST\_SYSOP**](log__manager_8c.md#define-log_tdes_last_sysop)([**tdes**](broker__monitor_8c.md#function-timeout))-&gt;posp\_lsa)
define TOO_BIG_TO_MATTER 1024

Public Types Documentation

typedef ACTIVE_LOG_HEADER_SCAN_CTX

typedef struct actve_log_header_scan_context ACTIVE_LOG_HEADER_SCAN_CTX;

typedef ARCHIVE_LOG_HEADER_SCAN_CTX

typedef struct archive_log_header_scan_context ARCHIVE_LOG_HEADER_SCAN_CTX;

Public Attributes Documentation

variable cdc_Gl

CDC_GLOBAL cdc_Gl;

variable cdc_Logging

bool cdc_Logging;

variable log_Clock_msec

std::atomic<std::int64_t> log_Clock_msec;

Public Static Attributes Documentation

variable LOG_REC_UNDO_MAX_ATTEMPTS

const int LOG_REC_UNDO_MAX_ATTEMPTS;

variable cdc_Loginfo_producer_daemon

cubthread::daemon* cdc_Loginfo_producer_daemon;

variable log_Check_ha_delay_info_daemon

cubthread::daemon* log_Check_ha_delay_info_daemon;

variable log_Checkpoint_daemon

cubthread::daemon* log_Checkpoint_daemon;

variable log_Clock_daemon

cubthread::daemon* log_Clock_daemon;

variable log_Flush_daemon

cubthread::daemon* log_Flush_daemon;

variable log_Flush_has_been_requested

std::atomic_bool log_Flush_has_been_requested;

variable log_No_logging

bool log_No_logging;

variable log_Remove_log_archive_daemon

cubthread::daemon* log_Remove_log_archive_daemon;

Public Functions Documentation

function LOG_CS_DEMOTE

void LOG_CS_DEMOTE (
    THREAD_ENTRY * thread_p
) 

function LOG_CS_ENTER

void LOG_CS_ENTER (
    THREAD_ENTRY * thread_p
) 

function LOG_CS_ENTER_READ_MODE

void LOG_CS_ENTER_READ_MODE (
    THREAD_ENTRY * thread_p
) 

function LOG_CS_EXIT

void LOG_CS_EXIT (
    THREAD_ENTRY * thread_p
) 

function LOG_CS_OWN

bool LOG_CS_OWN (
    THREAD_ENTRY * thread_p
) 

function LOG_CS_OWN_WRITE_MODE

bool LOG_CS_OWN_WRITE_MODE (
    THREAD_ENTRY * thread_p
) 

function LOG_CS_PROMOTE

void LOG_CS_PROMOTE (
    THREAD_ENTRY * thread_p
) 

function REGISTER_DAEMON

REGISTER_DAEMON (
    log_checkpoint
) 

function REGISTER_DAEMON

REGISTER_DAEMON (
    log_remove_log_archive
) 

function REGISTER_DAEMON

REGISTER_DAEMON (
    log_clock
) 

function REGISTER_DAEMON

REGISTER_DAEMON (
    ha_delay_check
) 

function REGISTER_DAEMON

REGISTER_DAEMON (
    log_flush
) 

function REGISTER_DAEMON

REGISTER_DAEMON (
    cdc_loginfo_producer
) 

function cdc_cleanup

int cdc_cleanup () 

function cdc_cleanup_consumer

void cdc_cleanup_consumer () 

function cdc_daemons_destroy

void cdc_daemons_destroy () 

function cdc_daemons_init

void cdc_daemons_init () 

function cdc_finalize

int cdc_finalize () 

function cdc_find_lsa

int cdc_find_lsa (
    THREAD_ENTRY * thread_p,
    time_t * extraction_time,
    LOG_LSA * start_lsa
) 

function cdc_free_extraction_filter

int cdc_free_extraction_filter () 

function cdc_get_loginfo_metadata

int cdc_get_loginfo_metadata (
    LOG_LSA * lsa,
    int * length,
    int * num_log_info
) 

function cdc_get_recdes

int cdc_get_recdes (
    THREAD_ENTRY * thread_p,
    LOG_LSA * undo_lsa,
    RECDES * undo_recdes,
    LOG_LSA * redo_lsa,
    RECDES * redo_recdes,
    bool is_flashback
) 

function cdc_get_undo_record

SCAN_CODE cdc_get_undo_record (
    THREAD_ENTRY * thread_p,
    LOG_PAGE * log_page_p,
    LOG_LSA lsa,
    RECDES * undo_recdes
) 

function cdc_initialize

int cdc_initialize () 

function cdc_kill_producer

void cdc_kill_producer () 

function cdc_loginfo_producer_daemon_init

void cdc_loginfo_producer_daemon_init () 

function cdc_make_dml_loginfo

int cdc_make_dml_loginfo (
    THREAD_ENTRY * thread_p,
    int trid,
    char * user,
    CDC_DML_TYPE dml_type,
    OID classoid,
    RECDES * undo_recdes,
    RECDES * redo_recdes,
    CDC_LOGINFO_ENTRY * dml_entry,
    bool is_flashback
) 

function cdc_make_loginfo

int cdc_make_loginfo (
    THREAD_ENTRY * thread_p,
    LOG_LSA * start_lsa
) 

function cdc_min_log_pageid_to_keep

LOG_PAGEID cdc_min_log_pageid_to_keep () 

function cdc_pause_consumer

void cdc_pause_consumer () 

function cdc_pause_producer

void cdc_pause_producer () 

function cdc_reinitialize_queue

void cdc_reinitialize_queue (
    LOG_LSA * start_lsa
) 

function cdc_set_configuration

int cdc_set_configuration (
    int max_log_item,
    int timeout,
    int all_in_cond,
    char ** user,
    int num_user,
    uint64_t * classoids,
    int num_class
) 

function cdc_set_extraction_lsa

int cdc_set_extraction_lsa (
    LOG_LSA * lsa
) 

function cdc_validate_lsa

int cdc_validate_lsa (
    THREAD_ENTRY * thread_p,
    LOG_LSA * lsa
) 

function cdc_wakeup_consumer

void cdc_wakeup_consumer () 

function cdc_wakeup_producer

void cdc_wakeup_producer () 

function locator_drop_transient_class_name_entries

int locator_drop_transient_class_name_entries (
    THREAD_ENTRY * thread_p,
    LOG_LSA * savep_lsa
) 

function log_abort

TRAN_STATE log_abort (
    THREAD_ENTRY * thread_p,
    int tran_index
) 

function log_abort_all_active_transaction

void log_abort_all_active_transaction (
    THREAD_ENTRY * thread_p
) 

function log_abort_local

TRAN_STATE log_abort_local (
    THREAD_ENTRY * thread_p,
    LOG_TDES * tdes,
    bool is_local_tran
) 

function log_abort_partial

TRAN_STATE log_abort_partial (
    THREAD_ENTRY * thread_p,
    const  char * savepoint_name,
    LOG_LSA * savept_lsa
) 

function log_active_log_header_end_scan

int log_active_log_header_end_scan (
    THREAD_ENTRY * thread_p,
    void ** ptr
) 

function log_active_log_header_next_scan

SCAN_CODE log_active_log_header_next_scan (
    THREAD_ENTRY * thread_p,
    int cursor,
    DB_VALUE ** out_values,
    int out_cnt,
    void * ptr
) 

function log_active_log_header_start_scan

int log_active_log_header_start_scan (
    THREAD_ENTRY * thread_p,
    int show_type,
    DB_VALUE ** arg_values,
    int arg_cnt,
    void ** ptr
) 

function log_add_to_modified_class_list

int log_add_to_modified_class_list (
    THREAD_ENTRY * thread_p,
    const  char * classname,
    const  OID * class_oid
) 

function log_append_compensate

void log_append_compensate (
    THREAD_ENTRY * thread_p,
    LOG_RCVINDEX rcvindex,
    const  VPID * vpid,
    PGLENGTH offset,
    PAGE_PTR pgptr,
    int length,
    const  void * data,
    LOG_TDES * tdes
) 

function log_append_compensate_with_undo_nxlsa

void log_append_compensate_with_undo_nxlsa (
    THREAD_ENTRY * thread_p,
    LOG_RCVINDEX rcvindex,
    const  VPID * vpid,
    PGLENGTH offset,
    PAGE_PTR pgptr,
    int length,
    const  void * data,
    LOG_TDES * tdes,
    const  LOG_LSA * undo_nxlsa
) 

function log_append_dboutside_redo

void log_append_dboutside_redo (
    THREAD_ENTRY * thread_p,
    LOG_RCVINDEX rcvindex,
    int length,
    const  void * data
) 

function log_append_empty_record

void log_append_empty_record (
    THREAD_ENTRY * thread_p,
    LOG_RECTYPE logrec_type,
    LOG_DATA_ADDR * addr
) 

function log_append_ha_server_state

void log_append_ha_server_state (
    THREAD_ENTRY * thread_p,
    int state
) 

function log_append_postpone

void log_append_postpone (
    THREAD_ENTRY * thread_p,
    LOG_RCVINDEX rcvindex,
    LOG_DATA_ADDR * addr,
    int length,
    const  void * data
) 

function log_append_redo_crumbs

void log_append_redo_crumbs (
    THREAD_ENTRY * thread_p,
    LOG_RCVINDEX rcvindex,
    LOG_DATA_ADDR * addr,
    int num_crumbs,
    const  LOG_CRUMB * crumbs
) 

function log_append_redo_data

void log_append_redo_data (
    THREAD_ENTRY * thread_p,
    LOG_RCVINDEX rcvindex,
    LOG_DATA_ADDR * addr,
    int length,
    const  void * data
) 

function log_append_redo_data2

void log_append_redo_data2 (
    THREAD_ENTRY * thread_p,
    LOG_RCVINDEX rcvindex,
    const  VFID * vfid,
    PAGE_PTR pgptr,
    PGLENGTH offset,
    int length,
    const  void * data
) 

function log_append_redo_recdes

void log_append_redo_recdes (
    THREAD_ENTRY * thread_p,
    LOG_RCVINDEX rcvindex,
    LOG_DATA_ADDR * addr,
    const  RECDES * recdes
) 

function log_append_redo_recdes2

void log_append_redo_recdes2 (
    THREAD_ENTRY * thread_p,
    LOG_RCVINDEX rcvindex,
    const  VFID * vfid,
    PAGE_PTR pgptr,
    PGLENGTH offset,
    const  RECDES * recdes
) 

function log_append_repl_info

void log_append_repl_info (
    THREAD_ENTRY * thread_p,
    LOG_TDES * tdes,
    bool is_commit
) 

function log_append_run_postpone

void log_append_run_postpone (
    THREAD_ENTRY * thread_p,
    LOG_RCVINDEX rcvindex,
    LOG_DATA_ADDR * addr,
    const  VPID * rcv_vpid,
    int length,
    const  void * data,
    const  LOG_LSA * ref_lsa
) 

function log_append_savepoint

LOG_LSA * log_append_savepoint (
    THREAD_ENTRY * thread_p,
    const  char * savept_name
) 

function log_append_supplemental_info

void log_append_supplemental_info (
    THREAD_ENTRY * thread_p,
    SUPPLEMENT_REC_TYPE rec_type,
    int length,
    const  void * data
) 

function log_append_supplemental_lsa

int log_append_supplemental_lsa (
    THREAD_ENTRY * thread_p,
    SUPPLEMENT_REC_TYPE rec_type,
    OID * classoid,
    LOG_LSA * undo_lsa,
    LOG_LSA * redo_lsa
) 

function log_append_supplemental_serial

int log_append_supplemental_serial (
    THREAD_ENTRY * thread_p,
    const  char * serial_name,
    int cached_num,
    OID * classoid,
    const  OID * serial_oid
) 

function log_append_supplemental_undo_record

int log_append_supplemental_undo_record (
    THREAD_ENTRY * thread_p,
    RECDES * undo_recdes
) 

function log_append_undo_crumbs

void log_append_undo_crumbs (
    THREAD_ENTRY * thread_p,
    LOG_RCVINDEX rcvindex,
    LOG_DATA_ADDR * addr,
    int num_crumbs,
    const  LOG_CRUMB * crumbs
) 

function log_append_undo_data

void log_append_undo_data (
    THREAD_ENTRY * thread_p,
    LOG_RCVINDEX rcvindex,
    LOG_DATA_ADDR * addr,
    int length,
    const  void * data
) 

function log_append_undo_data2

void log_append_undo_data2 (
    THREAD_ENTRY * thread_p,
    LOG_RCVINDEX rcvindex,
    const  VFID * vfid,
    PAGE_PTR pgptr,
    PGLENGTH offset,
    int length,
    const  void * data
) 

function log_append_undo_recdes

void log_append_undo_recdes (
    THREAD_ENTRY * thread_p,
    LOG_RCVINDEX rcvindex,
    LOG_DATA_ADDR * addr,
    const  RECDES * recdes
) 

function log_append_undo_recdes2

void log_append_undo_recdes2 (
    THREAD_ENTRY * thread_p,
    LOG_RCVINDEX rcvindex,
    const  VFID * vfid,
    PAGE_PTR pgptr,
    PGLENGTH offset,
    const  RECDES * recdes
) 

function log_append_undoredo_crumbs

void log_append_undoredo_crumbs (
    THREAD_ENTRY * thread_p,
    LOG_RCVINDEX rcvindex,
    LOG_DATA_ADDR * addr,
    int num_undo_crumbs,
    int num_redo_crumbs,
    const  LOG_CRUMB * undo_crumbs,
    const  LOG_CRUMB * redo_crumbs
) 

function log_append_undoredo_data

void log_append_undoredo_data (
    THREAD_ENTRY * thread_p,
    LOG_RCVINDEX rcvindex,
    LOG_DATA_ADDR * addr,
    int undo_length,
    int redo_length,
    const  void * undo_data,
    const  void * redo_data
) 

function log_append_undoredo_data2

void log_append_undoredo_data2 (
    THREAD_ENTRY * thread_p,
    LOG_RCVINDEX rcvindex,
    const  VFID * vfid,
    PAGE_PTR pgptr,
    PGLENGTH offset,
    int undo_length,
    int redo_length,
    const  void * undo_data,
    const  void * redo_data
) 

function log_append_undoredo_recdes

void log_append_undoredo_recdes (
    THREAD_ENTRY * thread_p,
    LOG_RCVINDEX rcvindex,
    LOG_DATA_ADDR * addr,
    const  RECDES * undo_recdes,
    const  RECDES * redo_recdes
) 

function log_append_undoredo_recdes2

void log_append_undoredo_recdes2 (
    THREAD_ENTRY * thread_p,
    LOG_RCVINDEX rcvindex,
    const  VFID * vfid,
    PAGE_PTR pgptr,
    PGLENGTH offset,
    const  RECDES * undo_recdes,
    const  RECDES * redo_recdes
) 

function log_archive_log_header_end_scan

int log_archive_log_header_end_scan (
    THREAD_ENTRY * thread_p,
    void ** ptr
) 

function log_archive_log_header_next_scan

SCAN_CODE log_archive_log_header_next_scan (
    THREAD_ENTRY * thread_p,
    int cursor,
    DB_VALUE ** out_values,
    int out_cnt,
    void * ptr
) 

function log_archive_log_header_start_scan

int log_archive_log_header_start_scan (
    THREAD_ENTRY * thread_p,
    int show_type,
    DB_VALUE ** arg_values,
    int arg_cnt,
    void ** ptr
) 

function log_check_ha_delay_info_daemon_init

void log_check_ha_delay_info_daemon_init () 

function log_check_system_op_is_started

bool log_check_system_op_is_started (
    THREAD_ENTRY * thread_p
) 

function log_checkpoint_daemon_init

void log_checkpoint_daemon_init () 

function log_clock_daemon_init

void log_clock_daemon_init () 

function log_commit

TRAN_STATE log_commit (
    THREAD_ENTRY * thread_p,
    int tran_index,
    bool retain_lock
) 

function log_commit_local

TRAN_STATE log_commit_local (
    THREAD_ENTRY * thread_p,
    LOG_TDES * tdes,
    bool retain_lock,
    bool is_local_tran
) 

function log_complete

TRAN_STATE log_complete (
    THREAD_ENTRY * thread_p,
    LOG_TDES * tdes,
    LOG_RECTYPE iscommitted,
    LOG_GETNEWTRID get_newtrid,
    LOG_WRITE_EOT_LOG wrote_eot_log
) 

function log_complete_for_2pc

TRAN_STATE log_complete_for_2pc (
    THREAD_ENTRY * thread_p,
    LOG_TDES * tdes,
    LOG_RECTYPE iscommitted,
    LOG_GETNEWTRID get_newtrid
) 

function log_create

int log_create (
    THREAD_ENTRY * thread_p,
    const  char * db_fullname,
    const  char * logpath,
    const  char * prefix_logname,
    DKNPAGES npages
) 

function log_do_postpone

void log_do_postpone (
    THREAD_ENTRY * thread_p,
    LOG_TDES * tdes,
    LOG_LSA * start_postpone_lsa
) 

function log_execute_run_postpone

int log_execute_run_postpone (
    THREAD_ENTRY * thread_p,
    LOG_LSA * log_lsa,
    LOG_REC_REDO * redo,
    char * redo_rcv_data
) 

function log_final

void log_final (
    THREAD_ENTRY * thread_p
) 

function log_flush_daemon_get_stats

void log_flush_daemon_get_stats (
    UINT64 * statsp
) 

function log_flush_daemon_init

void log_flush_daemon_init () 

function log_get_append_lsa

LOG_LSA * log_get_append_lsa (
    void
) 

function log_get_charset_from_header_page

int log_get_charset_from_header_page (
    THREAD_ENTRY * thread_p,
    const  char * db_fullname,
    const  char * logpath,
    const  char * prefix_logname
) 

function log_get_checkpoint_interval

void log_get_checkpoint_interval (
    bool & is_timed_wait,
    cubthread::delta_time & period
) 

function log_get_clock_msec

INT64 log_get_clock_msec (
    void
) 

function log_get_crash_point_lsa

LOG_LSA * log_get_crash_point_lsa (
    void
) 

function log_get_db_compatibility

float log_get_db_compatibility (
    void
) 

function log_get_db_start_parameters

int log_get_db_start_parameters (
    INT64 * db_creation,
    LOG_LSA * chkpt_lsa
) 

function log_get_eof_lsa

LOG_LSA * log_get_eof_lsa (
    void
) 

function log_get_final_restored_lsa

LOG_LSA * log_get_final_restored_lsa (
    void
) 

function log_get_io_page_size

PGLENGTH log_get_io_page_size (
    THREAD_ENTRY * thread_p,
    const  char * db_fullname,
    const  char * logpath,
    const  char * prefix_logname
) 

function log_get_log_group_commit_interval

void log_get_log_group_commit_interval (
    bool & is_timed_wait,
    cubthread::delta_time & period
) 

function log_get_next_nested_top

int log_get_next_nested_top (
    THREAD_ENTRY * thread_p,
    LOG_TDES * tdes,
    LOG_LSA * start_postpone_lsa,
    LOG_TOPOP_RANGE ** out_nxtop_range_stack
) 

function log_get_num_pages_for_creation

int log_get_num_pages_for_creation (
    int db_npages
) 

function log_get_parent_lsa_system_op

LOG_LSA * log_get_parent_lsa_system_op (
    THREAD_ENTRY * thread_p,
    LOG_LSA * parent_lsa
) 

function log_get_restart_lsa

LOG_LSA * log_get_restart_lsa (
    void
) 

function log_get_undo_record

SCAN_CODE log_get_undo_record (
    THREAD_ENTRY * thread_p,
    LOG_PAGE * log_page_p,
    LOG_LSA process_lsa,
    RECDES * recdes
) 

function log_initialize

void log_initialize (
    THREAD_ENTRY * thread_p,
    const  char * db_fullname,
    const  char * logpath,
    const  char * prefix_logname,
    int ismedia_crash,
    BO_RESTART_ARG * r_args
) 

function log_is_active_log_sane

bool log_is_active_log_sane (
    THREAD_ENTRY * thread_p,
    const  char * db_fullname,
    const  char * logpath,
    const  char * prefix_logname
) 

function log_is_class_being_modified

bool log_is_class_being_modified (
    THREAD_ENTRY * thread_p,
    const  OID * class_oid
) 

function log_is_in_crash_recovery

bool log_is_in_crash_recovery (
    void
) 

function log_is_in_crash_recovery_and_not_yet_completes_redo

bool log_is_in_crash_recovery_and_not_yet_completes_redo (
    void
) 

function log_is_log_flush_daemon_available

bool log_is_log_flush_daemon_available () 

function log_is_logged_since_restart

bool log_is_logged_since_restart (
    const  LOG_LSA * lsa_ptr
) 

function log_is_no_logging

bool log_is_no_logging (
    void
) 

function log_is_tran_in_system_op

bool log_is_tran_in_system_op (
    THREAD_ENTRY * thread_p
) 

function log_read_sysop_start_postpone

int log_read_sysop_start_postpone (
    THREAD_ENTRY * thread_p,
    LOG_LSA * log_lsa,
    LOG_PAGE * log_page,
    bool with_undo_data,
    LOG_REC_SYSOP_START_POSTPONE * sysop_start_postpone,
    int * undo_buffer_size,
    char ** undo_buffer,
    int * undo_size,
    char ** undo_data
) 

function log_recreate

int log_recreate (
    THREAD_ENTRY * thread_p,
    const  char * db_fullname,
    const  char * logpath,
    const  char * prefix_logname,
    DKNPAGES log_npages,
    FILE * out_fp
) 

function log_remove_log_archive_daemon_init

void log_remove_log_archive_daemon_init () 

function log_restart_emergency

void log_restart_emergency (
    THREAD_ENTRY * thread_p,
    const  char * db_fullname,
    const  char * logpath,
    const  char * prefix_logname
) 

function log_rv_copy_char

int log_rv_copy_char (
    THREAD_ENTRY * thread_p,
    LOG_RCV * rcv
) 

function log_rv_dump_char

void log_rv_dump_char (
    FILE * fp,
    int length,
    void * data
) 

function log_rv_dump_hexa

void log_rv_dump_hexa (
    FILE * fp,
    int length,
    void * data
) 

function log_rv_outside_noop_redo

int log_rv_outside_noop_redo (
    THREAD_ENTRY * thread_p,
    LOG_RCV * rcv
) 

function log_set_db_restore_time

void log_set_db_restore_time (
    THREAD_ENTRY * thread_p,
    INT64 db_restore_time
) 

function log_set_ha_promotion_time

void log_set_ha_promotion_time (
    THREAD_ENTRY * thread_p,
    INT64 ha_promotion_time
) 

function log_set_no_logging

int log_set_no_logging (
    void
) 

function log_simulate_crash

void log_simulate_crash (
    THREAD_ENTRY * thread_p,
    int flush_log,
    int flush_data_pages
) 

function log_skip_logging

void log_skip_logging (
    THREAD_ENTRY * thread_p,
    LOG_DATA_ADDR * addr
) 

function log_skip_logging_set_lsa

void log_skip_logging_set_lsa (
    THREAD_ENTRY * thread_p,
    LOG_DATA_ADDR * addr
) 

function log_stop_ha_delay_registration

void log_stop_ha_delay_registration () 

function log_sysop_abort

void log_sysop_abort (
    THREAD_ENTRY * thread_p
) 

function log_sysop_attach_to_outer

void log_sysop_attach_to_outer (
    THREAD_ENTRY * thread_p
) 

function log_sysop_commit

void log_sysop_commit (
    THREAD_ENTRY * thread_p
) 

function log_sysop_end_logical_compensate

void log_sysop_end_logical_compensate (
    THREAD_ENTRY * thread_p,
    LOG_LSA * undo_nxlsa
) 

function log_sysop_end_logical_run_postpone

void log_sysop_end_logical_run_postpone (
    THREAD_ENTRY * thread_p,
    LOG_LSA * posp_lsa
) 

function log_sysop_end_logical_undo

void log_sysop_end_logical_undo (
    THREAD_ENTRY * thread_p,
    LOG_RCVINDEX rcvindex,
    const  VFID * vfid,
    int undo_size,
    const  char * undo_data
) 

function log_sysop_end_recovery_postpone

void log_sysop_end_recovery_postpone (
    THREAD_ENTRY * thread_p,
    LOG_REC_SYSOP_END * log_record,
    int data_size,
    const  char * data
) 

function log_sysop_end_type_string

const  char * log_sysop_end_type_string (
    LOG_SYSOP_END_TYPE end_type
) 

function log_sysop_start

void log_sysop_start (
    THREAD_ENTRY * thread_p
) 

function log_sysop_start_atomic

void log_sysop_start_atomic (
    THREAD_ENTRY * thread_p
) 

function log_to_string

const  char * log_to_string (
    LOG_RECTYPE type
) 

function log_update_compatibility_and_release

int log_update_compatibility_and_release (
    THREAD_ENTRY * thread_p,
    float compatibility,
    char release
) 

function log_update_global_btid_online_index_stats

void log_update_global_btid_online_index_stats (
    THREAD_ENTRY * thread_p
) 

function log_wakeup_checkpoint_daemon

void log_wakeup_checkpoint_daemon () 

function log_wakeup_log_flush_daemon

void log_wakeup_log_flush_daemon () 

function log_wakeup_remove_log_archive_daemon

void log_wakeup_remove_log_archive_daemon () 

function xlog_dump

void xlog_dump (
    THREAD_ENTRY * thread_p,
    FILE * out_fp,
    int isforward,
    LOG_PAGEID start_logpageid,
    DKNPAGES dump_npages,
    TRANID desired_tranid
) 

Public Static Functions Documentation

function cdc_check_if_schema_changed

static bool cdc_check_if_schema_changed (
    RECDES * recdes,
    HEAP_CACHE_ATTRINFO * attr_info
) 

function cdc_check_log_page

static int cdc_check_log_page (
    THREAD_ENTRY * thread_p,
    LOG_PAGE * log_page_p,
    LOG_LSA * lsa
) 

function cdc_check_lsa_range

static int cdc_check_lsa_range (
    THREAD_ENTRY * thread_p,
    LOG_LSA * lsa
) 

function cdc_compare_undoredo_dbvalue

static int cdc_compare_undoredo_dbvalue (
    const  db_value * new_value,
    const  db_value * old_value
) 

function cdc_find_primary_key

static int cdc_find_primary_key (
    THREAD_ENTRY * thread_p,
    OID classoid,
    int repr_id,
    int * num_attr,
    int ** pk_attr_id
) 

function cdc_find_user

static int cdc_find_user (
    THREAD_ENTRY * thread_p,
    LOG_LSA lsa,
    int trid,
    char ** user
) 

function cdc_get_attribute_size

static int cdc_get_attribute_size (
    DB_VALUE * value
) 

function cdc_get_lsa_with_start_point

static int cdc_get_lsa_with_start_point (
    THREAD_ENTRY * thread_p,
    time_t * time,
    LOG_LSA * start_lsa
) 

function cdc_get_overflow_recdes

static int cdc_get_overflow_recdes (
    THREAD_ENTRY * thread_p,
    LOG_PAGE * log_page_p,
    RECDES * recdes,
    LOG_LSA lsa,
    LOG_RCVINDEX rcvindex,
    bool is_redo
) 

function cdc_get_ovfdata_from_log

static int cdc_get_ovfdata_from_log (
    THREAD_ENTRY * thread_p,
    LOG_PAGE * log_page_p,
    LOG_LSA * process_lsa,
    int * length,
    char ** data,
    LOG_RCVINDEX rcvindex,
    bool is_redo
) 

function cdc_get_start_point_from_file

static int cdc_get_start_point_from_file (
    THREAD_ENTRY * thread_p,
    int arv_num,
    LOG_LSA * ret_lsa,
    time_t * time
) 

function cdc_is_filtered_class

static bool cdc_is_filtered_class (
    OID classoid
) 

function cdc_is_filtered_user

static bool cdc_is_filtered_user (
    char * user
) 

function cdc_log_extract

static int cdc_log_extract (
    THREAD_ENTRY * thread_p,
    LOG_LSA * process_lsa,
    CDC_LOGINFO_ENTRY * log_info_entry
) 

function cdc_log_read_advance_and_preserve_if_needed

static int cdc_log_read_advance_and_preserve_if_needed (
    THREAD_ENTRY * thread_p,
    int size,
    LOG_LSA * lsa,
    LOG_PAGE * log_page_p,
    LOG_PAGE * preserved
) 

function cdc_loginfo_producer_execute

static void cdc_loginfo_producer_execute (
    cubthread::entry & thread_ref
) 

function cdc_make_dcl_loginfo

static int cdc_make_dcl_loginfo (
    time_t at_time,
    int trid,
    char * user,
    int log_type,
    CDC_LOGINFO_ENTRY * dcl_entry
) 

function cdc_make_ddl_loginfo

static int cdc_make_ddl_loginfo (
    char * supplement_data,
    int trid,
    const  char * user,
    CDC_LOGINFO_ENTRY * ddl_entry
) 

function cdc_make_error_loginfo

static int cdc_make_error_loginfo (
    int trid,
    char * user,
    CDC_DML_TYPE dml_type,
    OID classoid,
    CDC_LOGINFO_ENTRY * dml_entry
) 

function cdc_make_timer_loginfo

static int cdc_make_timer_loginfo (
    time_t at_time,
    int trid,
    char * user,
    CDC_LOGINFO_ENTRY * timer_entry
) 

function cdc_put_value_to_loginfo

static int cdc_put_value_to_loginfo (
    db_value * new_value,
    char ** ptr
) 

function log_abort_by_tdes

static int log_abort_by_tdes (
    THREAD_ENTRY * thread_p,
    LOG_TDES * tdes
) 

function log_abort_task_execute

static void log_abort_task_execute (
    cubthread::entry & thread_ref,
    LOG_TDES & tdes
) 

function log_append_abort_log

static void log_append_abort_log (
    THREAD_ENTRY * thread_p,
    LOG_TDES * tdes,
    LOG_LSA * abort_lsa
) 

function log_append_commit_log

static void log_append_commit_log (
    THREAD_ENTRY * thread_p,
    LOG_TDES * tdes,
    LOG_LSA * commit_lsa
) 

function log_append_commit_log_with_lock

static void log_append_commit_log_with_lock (
    THREAD_ENTRY * thread_p,
    LOG_TDES * tdes,
    LOG_LSA * commit_lsa
) 

function log_append_commit_postpone

static void log_append_commit_postpone (
    THREAD_ENTRY * thread_p,
    LOG_TDES * tdes,
    LOG_LSA * start_postpone_lsa
) 

function log_append_commit_postpone_obsolete

static void log_append_commit_postpone_obsolete (
    THREAD_ENTRY * thread_p,
    LOG_TDES * tdes,
    LOG_LSA * start_postpone_lsa
) 

function log_append_compensate_internal

static void log_append_compensate_internal (
    THREAD_ENTRY * thread_p,
    LOG_RCVINDEX rcvindex,
    const  VPID * vpid,
    PGLENGTH offset,
    PAGE_PTR pgptr,
    int length,
    const  void * data,
    LOG_TDES * tdes,
    const  LOG_LSA * undo_nxlsa
) 

function log_append_donetime_internal

static void log_append_donetime_internal (
    THREAD_ENTRY * thread_p,
    LOG_TDES * tdes,
    LOG_LSA * eot_lsa,
    LOG_RECTYPE iscommitted,
    enum  LOG_PRIOR_LSA_LOCK with_lock
) 

function log_append_repl_info_and_commit_log

static void log_append_repl_info_and_commit_log (
    THREAD_ENTRY * thread_p,
    LOG_TDES * tdes,
    LOG_LSA * commit_lsa
) 

function log_append_repl_info_internal

static void log_append_repl_info_internal (
    THREAD_ENTRY * thread_p,
    LOG_TDES * tdes,
    bool is_commit,
    int with_lock
) 

function log_append_repl_info_with_lock

static void log_append_repl_info_with_lock (
    THREAD_ENTRY * thread_p,
    LOG_TDES * tdes,
    bool is_commit
) 

function log_append_sysop_end

static void log_append_sysop_end (
    THREAD_ENTRY * thread_p,
    LOG_TDES * tdes,
    LOG_REC_SYSOP_END * sysop_end,
    int data_size,
    const  char * data
) 

function log_append_sysop_start_postpone

static void log_append_sysop_start_postpone (
    THREAD_ENTRY * thread_p,
    LOG_TDES * tdes,
    LOG_REC_SYSOP_START_POSTPONE * sysop_start_postpone,
    int data_size,
    const  char * data
) 

function log_ascii_dump

static void log_ascii_dump (
    FILE * out_fp,
    int length,
    void * data
) 

function log_build_full_path

static void log_build_full_path (
    const  char * input_path,
    char * full_path
) 

function log_can_skip_redo_logging

static bool log_can_skip_redo_logging (
    LOG_RCVINDEX rcvindex,
    const  LOG_TDES * ignore_tdes,
    LOG_DATA_ADDR * addr
) 

function log_can_skip_undo_logging

static bool log_can_skip_undo_logging (
    THREAD_ENTRY * thread_p,
    LOG_RCVINDEX rcvindex,
    const  LOG_TDES * tdes,
    LOG_DATA_ADDR * addr
) 

function log_change_tran_as_completed

static void log_change_tran_as_completed (
    THREAD_ENTRY * thread_p,
    LOG_TDES * tdes,
    LOG_RECTYPE iscommitted,
    LOG_LSA * lsa
) 

function log_check_ha_delay_info_execute

static void log_check_ha_delay_info_execute (
    cubthread::entry & thread_ref
) 

function log_checkpoint_execute

static void log_checkpoint_execute (
    cubthread::entry & thread_ref
) 

function log_cleanup_modified_class

static void log_cleanup_modified_class (
    const  tx_transient_class_entry & t,
    bool & stop
) 

function log_cleanup_modified_class_list

static void log_cleanup_modified_class_list (
    THREAD_ENTRY * thread_p,
    LOG_TDES * tdes,
    LOG_LSA * savept_lsa,
    bool release,
    bool decache_classrepr
) 

function log_clock_execute

static void log_clock_execute (
    cubthread::entry & thread_ref
) 

function log_create_internal

static int log_create_internal (
    THREAD_ENTRY * thread_p,
    const  char * db_fullname,
    const  char * logpath,
    const  char * prefix_logname,
    DKNPAGES npages,
    INT64 * db_creation
) 

function log_daemons_destroy

static void log_daemons_destroy () 

function log_daemons_init

static void log_daemons_init () 

function log_dump_checkpoint_topops

static void log_dump_checkpoint_topops (
    FILE * out_fp,
    int length,
    void * data
) 

function log_dump_data

static void log_dump_data (
    THREAD_ENTRY * thread_p,
    FILE * out_fp,
    int length,
    LOG_LSA * log_lsa,
    LOG_PAGE * log_page_p,
    void (*)( FILE *fp, int , void *) dumpfun,
    LOG_ZIP * log_dump_ptr
) 

function log_dump_data

static void log_dump_data (
    THREAD_ENTRY * thread_p,
    FILE * out_fp,
    int length,
    LOG_LSA * log_lsa,
    LOG_PAGE * log_page_p,
    void (*)( FILE *, int , void *) dumpfun,
    LOG_ZIP * log_dump_ptr
) 

function log_dump_header

static void log_dump_header (
    FILE * out_fp,
    LOG_HEADER * log_header_p
) 

function log_dump_record

static LOG_PAGE * log_dump_record (
    THREAD_ENTRY * thread_p,
    FILE * out_fp,
    LOG_RECTYPE record_type,
    LOG_LSA * lsa_p,
    LOG_PAGE * log_page_p,
    LOG_ZIP * log_zip_p
) 

function log_dump_record_2pc_acknowledgement

static LOG_PAGE * log_dump_record_2pc_acknowledgement (
    THREAD_ENTRY * thread_p,
    FILE * out_fp,
    LOG_LSA * lsa_p,
    LOG_PAGE * log_page_p
) 

function log_dump_record_2pc_prepare_commit

static LOG_PAGE * log_dump_record_2pc_prepare_commit (
    THREAD_ENTRY * thread_p,
    FILE * out_fp,
    LOG_LSA * lsa_p,
    LOG_PAGE * log_page_p
) 

function log_dump_record_2pc_start

static LOG_PAGE * log_dump_record_2pc_start (
    THREAD_ENTRY * thread_p,
    FILE * out_fp,
    LOG_LSA * lsa_p,
    LOG_PAGE * log_page_p
) 

function log_dump_record_checkpoint

static LOG_PAGE * log_dump_record_checkpoint (
    THREAD_ENTRY * thread_p,
    FILE * out_fp,
    LOG_LSA * lsa_p,
    LOG_PAGE * log_page_p
) 

function log_dump_record_commit_postpone

static LOG_PAGE * log_dump_record_commit_postpone (
    THREAD_ENTRY * thread_p,
    FILE * out_fp,
    LOG_LSA * lsa_p,
    LOG_PAGE * log_page_p
) 

function log_dump_record_commit_postpone_obsolete

static LOG_PAGE * log_dump_record_commit_postpone_obsolete (
    THREAD_ENTRY * thread_p,
    FILE * out_fp,
    LOG_LSA * log_lsa,
    LOG_PAGE * log_page_p
) 

function log_dump_record_compensate

static LOG_PAGE * log_dump_record_compensate (
    THREAD_ENTRY * thread_p,
    FILE * out_fp,
    LOG_LSA * lsa_p,
    LOG_PAGE * log_page_p
) 

function log_dump_record_dbout_redo

static LOG_PAGE * log_dump_record_dbout_redo (
    THREAD_ENTRY * thread_p,
    FILE * out_fp,
    LOG_LSA * lsa_p,
    LOG_PAGE * log_page_p
) 

function log_dump_record_ha_server_state

static LOG_PAGE * log_dump_record_ha_server_state (
    THREAD_ENTRY * thread_p,
    FILE * out_fp,
    LOG_LSA * log_lsa,
    LOG_PAGE * log_page_p
) 

function log_dump_record_header_to_string

static void log_dump_record_header_to_string (
    LOG_RECORD_HEADER * log,
    char * buf,
    size_t len
) 

function log_dump_record_mvcc_redo

static LOG_PAGE * log_dump_record_mvcc_redo (
    THREAD_ENTRY * thread_p,
    FILE * out_fp,
    LOG_LSA * lsa_p,
    LOG_PAGE * log_page_p,
    LOG_ZIP * log_zip_p
) 

function log_dump_record_mvcc_undo

static LOG_PAGE * log_dump_record_mvcc_undo (
    THREAD_ENTRY * thread_p,
    FILE * out_fp,
    LOG_LSA * lsa_p,
    LOG_PAGE * log_page_p,
    LOG_ZIP * log_zip_p
) 

function log_dump_record_mvcc_undoredo

static LOG_PAGE * log_dump_record_mvcc_undoredo (
    THREAD_ENTRY * thread_p,
    FILE * out_fp,
    LOG_LSA * lsa_p,
    LOG_PAGE * log_page_p,
    LOG_ZIP * log_zip_p
) 

function log_dump_record_postpone

static LOG_PAGE * log_dump_record_postpone (
    THREAD_ENTRY * thread_p,
    FILE * out_fp,
    LOG_LSA * lsa_p,
    LOG_PAGE * log_page_p
) 

function log_dump_record_redo

static LOG_PAGE * log_dump_record_redo (
    THREAD_ENTRY * thread_p,
    FILE * out_fp,
    LOG_LSA * lsa_p,
    LOG_PAGE * log_page_p,
    LOG_ZIP * log_zip_p
) 

function log_dump_record_replication

static LOG_PAGE * log_dump_record_replication (
    THREAD_ENTRY * thread_p,
    FILE * out_fp,
    LOG_LSA * lsa_p,
    LOG_PAGE * log_page_p
) 

function log_dump_record_save_point

static LOG_PAGE * log_dump_record_save_point (
    THREAD_ENTRY * thread_p,
    FILE * out_fp,
    LOG_LSA * lsa_p,
    LOG_PAGE * log_page_p
) 

function log_dump_record_supplemental_info

static LOG_PAGE * log_dump_record_supplemental_info (
    THREAD_ENTRY * thread_p,
    FILE * out_fp,
    LOG_LSA * log_lsa,
    LOG_PAGE * log_page_p
) 

function log_dump_record_sysop_end

static LOG_PAGE * log_dump_record_sysop_end (
    THREAD_ENTRY * thread_p,
    LOG_LSA * log_lsa,
    LOG_PAGE * log_page_p,
    LOG_ZIP * log_zip_p,
    FILE * out_fp
) 

function log_dump_record_sysop_end_internal

static LOG_PAGE * log_dump_record_sysop_end_internal (
    THREAD_ENTRY * thread_p,
    LOG_REC_SYSOP_END * sysop_end,
    LOG_LSA * log_lsa,
    LOG_PAGE * log_page_p,
    LOG_ZIP * log_zip_p,
    FILE * out_fp
) 

function log_dump_record_sysop_start_postpone

static LOG_PAGE * log_dump_record_sysop_start_postpone (
    THREAD_ENTRY * thread_p,
    FILE * out_fp,
    LOG_LSA * lsa_p,
    LOG_PAGE * log_page_p,
    LOG_ZIP * log_zip_p
) 

function log_dump_record_transaction_finish

static LOG_PAGE * log_dump_record_transaction_finish (
    THREAD_ENTRY * thread_p,
    FILE * out_fp,
    LOG_LSA * lsa_p,
    LOG_PAGE * log_page_p
) 

function log_dump_record_undo

static LOG_PAGE * log_dump_record_undo (
    THREAD_ENTRY * thread_p,
    FILE * out_fp,
    LOG_LSA * lsa_p,
    LOG_PAGE * log_page_p,
    LOG_ZIP * log_zip_p
) 

function log_dump_record_undoredo

static LOG_PAGE * log_dump_record_undoredo (
    THREAD_ENTRY * thread_p,
    FILE * out_fp,
    LOG_LSA * lsa_p,
    LOG_PAGE * log_page_p,
    LOG_ZIP * log_zip_p
) 

function log_find_end_log

static void log_find_end_log (
    THREAD_ENTRY * thread_p,
    LOG_LSA * end_lsa
) 

function log_flush_execute

static void log_flush_execute (
    cubthread::entry & thread_ref
) 

function log_get_savepoint_lsa

static LOG_LSA * log_get_savepoint_lsa (
    THREAD_ENTRY * thread_p,
    const  char * savept_name,
    LOG_TDES * tdes,
    LOG_LSA * savept_lsa
) 

function log_hexa_dump

static void log_hexa_dump (
    FILE * out_fp,
    int length,
    void * data
) 

function log_initialize_internal

static int log_initialize_internal (
    THREAD_ENTRY * thread_p,
    const  char * db_fullname,
    const  char * logpath,
    const  char * prefix_logname,
    bool ismedia_crash,
    BO_RESTART_ARG * r_args,
    bool init_emergency
) 

function log_repl_data_dump

static void log_repl_data_dump (
    FILE * out_fp,
    int length,
    void * data
) 

function log_repl_schema_dump

static void log_repl_schema_dump (
    FILE * out_fp,
    int length,
    void * data
) 

function log_rollback

static void log_rollback (
    THREAD_ENTRY * thread_p,
    LOG_TDES * tdes,
    const  LOG_LSA * upto_lsa_ptr
) 

function log_rollback_record

static void log_rollback_record (
    THREAD_ENTRY * thread_p,
    LOG_LSA * log_lsa,
    LOG_PAGE * log_page_p,
    LOG_RCVINDEX rcvindex,
    VPID * rcv_vpid,
    LOG_RCV * rcv,
    LOG_TDES * tdes,
    LOG_ZIP * log_unzip_ptr
) 

function log_run_postpone_op

static int log_run_postpone_op (
    THREAD_ENTRY * thread_p,
    LOG_LSA * log_lsa,
    LOG_PAGE * log_pgptr
) 

function log_sysop_commit_internal

static void log_sysop_commit_internal (
    THREAD_ENTRY * thread_p,
    LOG_REC_SYSOP_END * log_record,
    int data_size,
    const  char * data,
    bool is_rv_finish_postpone
) 

function log_sysop_do_postpone

static void log_sysop_do_postpone (
    THREAD_ENTRY * thread_p,
    LOG_TDES * tdes,
    LOG_REC_SYSOP_END * sysop_end,
    int data_size,
    const  char * data
) 

function log_sysop_end_begin

static void log_sysop_end_begin (
    THREAD_ENTRY * thread_p,
    int * tran_index_out,
    LOG_TDES ** tdes_out
) 

function log_sysop_end_final

static void log_sysop_end_final (
    THREAD_ENTRY * thread_p,
    LOG_TDES * tdes
) 

function log_sysop_end_random_exit

static void log_sysop_end_random_exit (
    THREAD_ENTRY * thread_p
) 

function log_sysop_end_unstack

static void log_sysop_end_unstack (
    THREAD_ENTRY * thread_p,
    LOG_TDES * tdes
) 

function log_sysop_get_level

static int log_sysop_get_level (
    THREAD_ENTRY * thread_p
) 

function log_sysop_get_tran_index_and_tdes

static void log_sysop_get_tran_index_and_tdes (
    THREAD_ENTRY * thread_p,
    int * tran_index_out,
    LOG_TDES ** tdes_out
) 

function log_tran_do_postpone

static void log_tran_do_postpone (
    THREAD_ENTRY * thread_p,
    LOG_TDES * tdes
) 

function log_undo_rec_restartable

static int log_undo_rec_restartable (
    THREAD_ENTRY * thread_p,
    LOG_RCVINDEX rcvindex,
    LOG_RCV * rcv
) 

function log_verify_dbcreation

static bool log_verify_dbcreation (
    THREAD_ENTRY * thread_p,
    VOLID volid,
    const  INT64 * log_dbcreation
) 

function logtb_tran_update_stats_online_index_rb

static int logtb_tran_update_stats_online_index_rb (
    THREAD_ENTRY * thread_p,
    void * data,
    void * args
) 

Macro Definition Documentation

define CDC_IS_IGNORE_LOGINFO_ERROR

#define CDC_IS_IGNORE_LOGINFO_ERROR (
    ERROR
) `/* multi line expression */`

define FLASHBACK_ERROR_HANDLING

#define FLASHBACK_ERROR_HANDLING (
    is_flashback,
    e,
    classoid,
    classname
) `/* multi line expression */`

define LOG_FLUSH_LOGGING_HAS_BEEN_SKIPPED

#define LOG_FLUSH_LOGGING_HAS_BEEN_SKIPPED (
    thread_p
) `/* multi line expression */`

define LOG_ISCHECKPOINT_TIME

#define LOG_ISCHECKPOINT_TIME (

) `/* multi line expression */`

define LOG_ISUNSAFE_TO_SKIP_RCVINDEX

#define LOG_ISUNSAFE_TO_SKIP_RCVINDEX (
    RCVI
) `(( RCVI ) == RVDK_LINK_PERM_VOLEXT )`

define LOG_NEED_TO_SET_LSA

#define LOG_NEED_TO_SET_LSA (
    RCVI,
    PGPTR
) `/* multi line expression */`

define LOG_TDES_LAST_SYSOP

#define LOG_TDES_LAST_SYSOP (
    tdes
) `(&( tdes )->topops.stack[( tdes )->topops.last])`

define LOG_TDES_LAST_SYSOP_PARENT_LSA

#define LOG_TDES_LAST_SYSOP_PARENT_LSA (
    tdes
) `(& LOG_TDES_LAST_SYSOP ( tdes )->lastparent_lsa)`

define LOG_TDES_LAST_SYSOP_POSP_LSA

#define LOG_TDES_LAST_SYSOP_POSP_LSA (
    tdes
) `(& LOG_TDES_LAST_SYSOP ( tdes )->posp_lsa)`

define TOO_BIG_TO_MATTER

#define TOO_BIG_TO_MATTER `1024`


The documentation for this class was generated from the following file cubrid/src/transaction/log_manager.c