CUBRID Engine
latest
|
#include "config.h"
#include <stdio.h>
#include <stddef.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#include <assert.h>
#include "log_2pc.h"
#include "log_append.hpp"
#include "log_impl.h"
#include "log_lsa.hpp"
#include "log_manager.h"
#include "log_record.hpp"
#include "log_system_tran.hpp"
#include "log_volids.hpp"
#include "recovery.h"
#include "error_manager.h"
#include "system_parameter.h"
#include "message_catalog.h"
#include "msgcat_set_log.hpp"
#include "object_representation.h"
#include "slotted_page.h"
#include "boot_sr.h"
#include "locator_sr.h"
#include "page_buffer.h"
#include "porting_inline.hpp"
#include "log_compress.h"
#include "thread_entry.hpp"
#include "thread_manager.hpp"
Go to the source code of this file.
|
static |
Definition at line 2352 of file log_recovery.c.
References assert, log_rec_header::forw_lsa, IO_MAX_PAGE_SIZE, LOG_CS_FORCE_USE, logpb_fetch_page(), LSA_COPY(), LSA_ISNULL(), MAX_ALIGNMENT, NO_ERROR, NULL, log_lsa::offset, log_lsa::pageid, and PTR_ALIGN.
Referenced by log_recovery_analysis().
void log_recovery | ( | THREAD_ENTRY * | thread_p, |
int | ismedia_crash, | ||
time_t * | stopat | ||
) |
Definition at line 648 of file log_recovery.c.
References log_header::append_lsa, ARG_FILE_LINE, assert, log_rec_header::back_lsa, boot_reset_db_parm(), log_header::chkpt_lsa, log_global::chkpt_redo_lsa, ER_FATAL_ERROR_SEVERITY, ER_LOG_CORRUPTED_DB_DUE_CRASH_NOLOGGING, er_log_debug, ER_LOG_RECOVERY_FINISHED, ER_LOG_RECOVERY_STARTED, ER_LOG_UNKNOWN_TRANINDEX, ER_NOTIFICATION_SEVERITY, er_set(), fileio_map_mounted(), fileio_synchronize_all(), log_global::final_restored_lsa, log_header::has_logging_been_skipped, log_global::hdr, heap_classrepr_restart_cache(), locator_initialize(), log_2pc_recovery(), log_append_empty_record(), LOG_APPEND_PTR(), LOG_CS_ENTER(), LOG_CS_EXIT(), LOG_CS_OWN_WRITE_MODE(), LOG_DUMMY_CRASH_RECOVERY, LOG_FIND_TDES(), LOG_FIND_THREAD_TRAN_INDEX, log_Gl, LOG_HAS_LOGGING_BEEN_IGNORED, log_recovery_analysis(), LOG_RECOVERY_ANALYSIS_PHASE, LOG_RECOVERY_FINISH_2PC_PHASE, log_recovery_notpartof_volumes(), log_recovery_redo(), LOG_RECOVERY_REDO_PHASE, log_recovery_undo(), LOG_RECOVERY_UNDO_PHASE, LOG_RESET_PREV_LSA(), log_rv_find_checkpoint(), LOG_SET_CURRENT_TRAN_INDEX, logpb_checkpoint(), logpb_decache_archive_info(), logpb_fatal_error(), logpb_fetch_start_append_page(), logpb_flush_header(), logpb_flush_pages_direct(), logtb_set_num_loose_end_trans(), LSA_AS_ARGS, LSA_COPY(), NO_ERROR, NULL, NULL_VOLID, trantable::num_coord_loose_end_indices, trantable::num_prepared_loose_end_indices, log_lsa::pageid, pgbuf_flush_all(), log_global::rcv_phase, log_global::rcv_phase_lsa, log_system_tdes::rv_final(), log_tdes::state, log_tdes::tail_lsa, TRAN_ACTIVE, TRAN_RECOVERY, log_global::trantable, and vacuum_notify_server_crashed().
Referenced by log_initialize_internal().
|
static |
Definition at line 4394 of file log_recovery.c.
References assert, i, LOG_FIND_TDES(), log_Gl, log_recovery_abort_atomic_sysop(), log_rv_end_simulation(), log_rv_simulate_runtime_worker(), LOG_SYSTEM_TRAN_INDEX, log_system_tdes::map_all_tdes(), NULL, NULL_TRANID, trantable::num_total_indices, thread_get_thread_entry_info(), log_global::trantable, and log_tdes::trid.
Referenced by log_recovery_redo().
|
static |
Definition at line 4431 of file log_recovery.c.
References ARG_FILE_LINE, assert, log_rcv_tdes::atomic_sysop_start_lsa, er_log_debug, IO_MAX_PAGE_SIZE, log_topops_stack::last, log_topops_addresses::lastparent_lsa, LOG_CS_FORCE_USE, LOG_GET_LOG_RECORD_HEADER, log_recovery_finish_sysop_postpone(), log_sysop_abort(), log_sysop_start(), logpb_fatal_error(), logpb_fetch_page(), LSA_AS_ARGS, LSA_COPY(), LSA_EQ(), LSA_GE(), LSA_GT(), LSA_ISNULL(), LSA_SET_NULL(), MAX_ALIGNMENT, NO_ERROR, NULL, NULL_TRANID, log_rec_header::prev_tranlsa, PTR_ALIGN, log_tdes::rcv, log_topops_stack::stack, log_tdes::state, log_rcv_tdes::sysop_start_postpone_lsa, log_tdes::topops, TRAN_UNACTIVE_TOPOPE_COMMITTED_WITH_POSTPONE, log_tdes::trid, and log_tdes::undo_nxlsa.
Referenced by log_recovery_abort_all_atomic_sysops().
|
static |
Definition at line 4075 of file log_recovery.c.
References log_page::area, ARG_FILE_LINE, assert, IO_MAX_PAGE_SIZE, log_topops_stack::last, log_rec_sysop_end::lastparent_lsa, log_topops_addresses::lastparent_lsa, LOG_COMMIT_WITH_POSTPONE, LOG_CS_FORCE_USE, LOG_READ_ADD_ALIGN, LOG_READ_ADVANCE_WHEN_DOESNT_FIT, LOG_RUN_POSTPONE, log_sysop_abort(), LOG_SYSOP_END, LOG_SYSOP_END_LOGICAL_RUN_POSTPONE, log_sysop_start(), LOG_SYSOP_START_POSTPONE, logpb_fatal_error(), logpb_fetch_page(), LSA_EQ(), LSA_GT(), LSA_INITIALIZER, LSA_ISNULL(), LSA_LE(), MAX_ALIGNMENT, NO_ERROR, NULL, log_lsa::offset, log_rec_header::prev_tranlsa, PTR_ALIGN, log_topops_stack::stack, log_tdes::state, log_tdes::topops, TRAN_UNACTIVE_COMMITTED_WITH_POSTPONE, TRAN_UNACTIVE_TOPOPE_COMMITTED_WITH_POSTPONE, log_rec_header::trid, log_tdes::trid, log_rec_header::type, log_rec_sysop_end::type, and log_tdes::undo_nxlsa.
Referenced by log_recovery_finish_postpone(), and log_recovery_finish_sysop_postpone().
|
static |
Definition at line 2413 of file log_recovery.c.
References _er_log_debug(), log_header::append_lsa, log_page::area, ARG_FILE_LINE, assert, assert_release, log_hdrpage::checksum, CTIME_MAX, DB_ALIGN, DOUBLE_ALIGNMENT, er_errid(), er_log_debug, ER_TDE_CIPHER_IS_NOT_LOADED, fileio_page_hexa_dump(), log_rec_header::forw_lsa, free_and_init, log_page::hdr, log_global::hdr, i, if(), IO_MAX_PAGE_SIZE, log_lsa::is_null(), LOG_2PC_PREPARE, log_2pc_recovery_analysis_info(), LOG_2PC_RECV_ACK, LOG_2PC_START, LOG_COMPENSATE, LOG_CS_FORCE_USE, LOG_DBEXTERN_REDO_DATA, LOG_DIFF_UNDOREDO_DATA, LOG_END_OF_LOG, LOG_FIND_TDES(), LOG_GET_LOG_RECORD_HEADER, log_Gl, log_is_page_of_record_broken(), LOG_ISTRAN_2PC, LOG_MVCC_DIFF_UNDOREDO_DATA, LOG_MVCC_REDO_DATA, LOG_MVCC_UNDOREDO_DATA, LOG_PAGE_INIT_VALUE, LOG_PAGESIZE, LOG_READ_ADD_ALIGN, LOG_READ_ADVANCE_WHEN_DOESNT_FIT, log_recovery_resetlog(), LOG_REDO_DATA, LOG_RESET_APPEND_LSA(), LOG_RUN_POSTPONE, log_rv_analysis_record(), log_startof_nxrec(), LOG_UNDOREDO_DATA, LOGAREA_SIZE, log_hdrpage::logical_pageid, logpb_copy_from_log(), logpb_fatal_error(), logpb_fetch_page(), logpb_is_page_in_archive(), logpb_page_check_corruption(), logpb_page_get_first_null_block_lsa(), logpb_write_page_to_disk(), logtb_find_tran_index(), LSA_COPY(), LSA_EQ(), LSA_GT(), LSA_ISNULL(), LSA_SET_NULL(), MAX_ALIGNMENT, MSGCAT_CATALOG_CUBRID, MSGCAT_LOG_INCOMPLTE_MEDIA_RECOVERY, MSGCAT_LOG_STARTS, msgcat_message(), MSGCAT_SET_LOG, log_global::mvcc_table, log_header::next_trid, NO_ERROR, log_rec_chkpt::ntrans, NULL, NULL_OFFSET, NULL_PAGEID, NULL_TRAN_INDEX, log_lsa::offset, log_hdrpage::offset, ONE_K, log_lsa::pageid, log_rec_header::prev_tranlsa, prm_get_bool_value(), PRM_ID_LOG_TRACE_DEBUG, PRM_ID_LOGPB_LOGGING_DEBUG, PTR_ALIGN, mvcctable::reset_start_mvccid(), log_lsa::set_null(), log_tdes::tail_lsa, log_rec_header::trid, log_rec_header::type, and log_tdes::undo_nxlsa.
Referenced by log_recovery().
|
static |
Definition at line 5797 of file log_recovery.c.
References log_page::area, ARG_FILE_LINE, assert, log_topop_range::end_lsa, ER_FAILED, log_rec_header::forw_lsa, free_and_init, log_page::hdr, IO_MAX_PAGE_SIZE, LOG_CS_FORCE_USE, LOG_END_OF_LOG, LOG_GET_LOG_RECORD_HEADER, log_get_next_nested_top(), log_is_in_crash_recovery(), LOG_POSTPONE, LOG_READ_ADD_ALIGN, LOG_READ_ADVANCE_WHEN_DOESNT_FIT, LOG_RUN_POSTPONE, LOG_SYSOP_END, LOG_SYSOP_END_LOGICAL_RUN_POSTPONE, LOG_TOPOP_STACK_INIT_SIZE, logpb_fatal_error(), logpb_fetch_page(), logpb_is_page_in_archive(), LSA_COPY(), LSA_EQ(), LSA_GT(), LSA_ISNULL(), LSA_LT(), LSA_SET_NULL(), MAX_ALIGNMENT, NO_ERROR, NULL, NULL_OFFSET, NULL_PAGEID, log_lsa::offset, log_hdrpage::offset, log_lsa::pageid, PTR_ALIGN, log_rec_run_postpone::ref_lsa, log_rec_sysop_end::run_postpone, log_topop_range::start_lsa, log_tdes::state, log_tdes::tail_lsa, TRAN_UNACTIVE_COMMITTED_WITH_POSTPONE, TRAN_UNACTIVE_TOPOPE_COMMITTED_WITH_POSTPONE, TRAN_UNACTIVE_WILL_COMMIT, log_rec_header::trid, log_tdes::trid, log_rec_header::type, and log_rec_sysop_end::type.
Referenced by log_recovery_finish_postpone(), and log_recovery_finish_sysop_postpone().
|
static |
Definition at line 4357 of file log_recovery.c.
References assert, i, LOG_FIND_TDES(), log_Gl, log_recovery_finish_postpone(), log_rv_end_simulation(), log_rv_simulate_runtime_worker(), LOG_SYSTEM_TRAN_INDEX, log_system_tdes::map_all_tdes(), NULL, NULL_TRANID, trantable::num_total_indices, thread_get_thread_entry_info(), log_global::trantable, and log_tdes::trid.
Referenced by log_recovery_redo().
|
static |
Definition at line 4288 of file log_recovery.c.
References assert, log_tdes::coord, log_topops_stack::last, LOG_COMMIT, log_complete(), log_do_postpone(), LOG_DONT_NEED_NEWTRID, LOG_NEED_TO_WRITE_EOT_LOG, log_recovery_abort_interrupted_sysop(), log_recovery_find_first_postpone(), log_recovery_finish_sysop_postpone(), logtb_free_tran_index(), LSA_ISNULL(), LSA_SET_NULL(), NULL, NULL_TRANID, log_tdes::posp_nxlsa, log_tdes::rcv, log_tdes::state, log_tdes::topops, log_tdes::tran_index, log_rcv_tdes::tran_start_postpone_lsa, TRAN_UNACTIVE_COMMITTED, TRAN_UNACTIVE_COMMITTED_WITH_POSTPONE, TRAN_UNACTIVE_WILL_COMMIT, log_tdes::trid, and log_tdes::undo_nxlsa.
Referenced by log_recovery_finish_all_postpone().
|
static |
Definition at line 4178 of file log_recovery.c.
References assert, assert_release, db_private_free, log_page::hdr, IO_MAX_PAGE_SIZE, log_topops_stack::last, log_rec_sysop_end::lastparent_lsa, log_do_postpone(), log_read_sysop_start_postpone(), log_recovery_abort_interrupted_sysop(), log_recovery_find_first_postpone(), LOG_SYSOP_END_ABORT, LOG_SYSOP_END_LOGICAL_RUN_POSTPONE, log_sysop_end_recovery_postpone(), log_hdrpage::logical_pageid, LSA_ISNULL(), LSA_LE(), LSA_SET_NULL(), MAX_ALIGNMENT, NO_ERROR, NULL, NULL_PAGEID, log_topops_addresses::posp_lsa, log_tdes::posp_nxlsa, PTR_ALIGN, log_tdes::rcv, log_rec_sysop_end::run_postpone, log_topops_stack::stack, log_tdes::state, log_rec_sysop_start_postpone::sysop_end, log_rcv_tdes::sysop_start_postpone_lsa, log_tdes::tail_lsa, log_tdes::topops, log_rcv_tdes::tran_start_postpone_lsa, TRAN_UNACTIVE_COMMITTED_WITH_POSTPONE, TRAN_UNACTIVE_TOPOPE_COMMITTED_WITH_POSTPONE, TRAN_UNACTIVE_UNILATERALLY_ABORTED, log_rec_sysop_end::type, and log_tdes::undo_nxlsa.
Referenced by log_recovery_abort_atomic_sysop(), and log_recovery_finish_postpone().
|
static |
Definition at line 2972 of file log_recovery.c.
References log_rcv_tdes::analysis_last_aborted_sysop_lsa, log_rcv_tdes::analysis_last_aborted_sysop_start_lsa, ARG_FILE_LINE, assert, er_log_debug, LOG_DBEXTERN_REDO_DATA, LOG_FIND_TDES(), logtb_find_tran_index(), LSA_AS_ARGS, LSA_LT(), NULL, NULL_TRAN_INDEX, log_tdes::rcv, and rv_rcvindex_string().
Referenced by log_recovery_redo().
|
static |
Definition at line 5017 of file log_recovery.c.
References log_global::append, ER_LOG_MOUNT_FAIL, fileio_is_volume_exist(), fileio_make_log_archive_name(), fileio_unformat(), log_global::hdr, i, log_header::last_deleted_arv_num, log_Archive_path, log_dump_log_info(), log_Gl, log_Name_info, log_Prefix, logpb_flush_header(), MSGCAT_CATALOG_CUBRID, MSGCAT_LOG_LOGINFO_REMOVE_REASON, msgcat_message(), MSGCAT_SET_LOG, NO_ERROR, NULL, NULL_VOLDES, log_header::nxarv_num, and log_append_info::vdes.
Referenced by log_recovery_resetlog().
|
static |
Definition at line 5152 of file log_recovery.c.
References boot_find_next_permanent_volid(), log_header::db_creation, disk_get_creation_time(), fileio_dismount(), fileio_get_base_file_name(), fileio_get_directory_path(), fileio_is_volume_exist(), fileio_make_volume_ext_name(), fileio_map_mounted(), fileio_mount(), fileio_unformat(), free_and_init, log_global::hdr, log_Db_fullname, log_Gl, LOG_MAX_DBVOLID, log_unformat_ahead_volumes(), logpb_recreate_volume_info(), NO_ERROR, NULL, and NULL_VOLDES.
Referenced by log_recovery().
|
static |
Definition at line 3044 of file log_recovery.c.
References _er_log_debug(), log_2pc_coordinator::ack_received, log_page::area, ARG_FILE_LINE, assert, log_rec_donetime::at_time, log_tdes::client, log_tdes::coord, global_unique_stats_table::curr_rcv_rec_lsa, log_rec_undoredo::data, log_rec_redo::data, log_rec_compensate::data, log_rec_run_postpone::data, log_zip::data_length, ER_ERROR_SEVERITY, er_log_debug, ER_LOG_PAGE_CORRUPTED, er_set(), log_rec_header::forw_lsa, GET_ZIP_LEN, log_rec_2pc_start::gtrid, log_tdes::gtrid, log_page::hdr, log_global::hdr, i, if(), IO_MAX_PAGE_SIZE, log_rec_redo::length, log_rcv::length, log_rec_dbout_redo::length, log_rec_compensate::length, log_rec_run_postpone::length, LOG_2PC_ABORT_DECISION, LOG_2PC_ABORT_INFORM_PARTICPS, log_2pc_alloc_coord_info(), LOG_2PC_COMMIT_DECISION, LOG_2PC_COMMIT_INFORM_PARTICPS, LOG_2PC_DONT_OBTAIN_LOCKS, LOG_2PC_OBTAIN_LOCKS, LOG_2PC_PREPARE, log_2pc_read_prepare(), LOG_2PC_RECV_ACK, LOG_2PC_START, LOG_ABORT, LOG_COMMIT, LOG_COMMIT_WITH_POSTPONE, LOG_COMPENSATE, LOG_CS_FORCE_USE, log_zip::log_data, LOG_DBEXTERN_REDO_DATA, LOG_DIFF_UNDOREDO_DATA, LOG_DUMMY_CRASH_RECOVERY, LOG_DUMMY_GENERIC, LOG_DUMMY_HA_SERVER_STATE, LOG_DUMMY_HEAD_POSTPONE, LOG_DUMMY_OVF_RECORD, LOG_END_CHKPT, LOG_END_OF_LOG, LOG_FIND_TDES(), LOG_GET_LOG_RECORD_HEADER, log_Gl, LOG_ISTRAN_2PC, LOG_LARGER_LOGREC_TYPE, LOG_MVCC_DIFF_UNDOREDO_DATA, LOG_MVCC_REDO_DATA, LOG_MVCC_UNDO_DATA, LOG_MVCC_UNDOREDO_DATA, LOG_PAGESIZE, LOG_POSTPONE, LOG_READ_ADD_ALIGN, LOG_READ_ADVANCE_WHEN_DOESNT_FIT, LOG_READ_ALIGN, log_recovery_abort_all_atomic_sysops(), log_recovery_finish_all_postpone(), log_recovery_needs_skip_logical_redo(), LOG_REDO_DATA, LOG_REPLICATION_DATA, LOG_REPLICATION_STATEMENT, LOG_RUN_POSTPONE, log_rv_get_unzip_log_data(), log_rv_redo_fix_page(), log_rv_redo_record(), LOG_SAVEPOINT, LOG_SMALLER_LOGREC_TYPE, LOG_START_CHKPT, log_state_string(), LOG_SYSOP_ATOMIC_START, LOG_SYSOP_END, LOG_SYSOP_END_LOGICAL_MVCC_UNDO, LOG_SYSOP_START_POSTPONE, LOG_SYSTEM_TRAN_INDEX, log_to_string(), LOG_UNDO_DATA, LOG_UNDOREDO_DATA, LOG_WILL_COMMIT, log_zip_alloc(), log_zip_free(), LOGAREA_SIZE, logpb_copy_from_log(), logpb_fatal_error(), logpb_fetch_page(), logpb_flush_header(), logpb_flush_pages_direct(), logpb_is_page_in_archive(), logpb_vacuum_reset_log_header_cache(), logtb_find_tran_index(), logtb_free_tran_index(), LSA_AS_ARGS, LSA_COPY(), LSA_EQ(), LSA_GT(), LSA_ISNULL(), LSA_LE(), LSA_SET_NULL(), MAX_ALIGNMENT, log_rcv::mvcc_id, MVCC_ID_PRECEDES, log_header::mvcc_next_id, log_header::mvcc_op_log_lsa, log_global::mvcc_table, log_rec_mvcc_undoredo::mvccid, log_rec_mvcc_undo::mvccid, log_rec_mvcc_redo::mvccid, MVCCID_FORWARD, MVCCID_NULL, NO_ERROR, NULL, NULL_OFFSET, NULL_PAGEID, NULL_TRAN_INDEX, NULL_VOLID, log_2pc_coordinator::num_particps, log_rec_2pc_start::num_particps, log_lsa::offset, log_hdrpage::offset, log_data::offset, log_rcv::offset, log_lsa::pageid, log_data::pageid, vpid::pageid, log_rec_2pc_start::particp_id_length, log_rec_2pc_particp_ack::particp_index, pgbuf_flush_all(), pgbuf_get_lsa(), pgbuf_unfix, log_rcv::pgptr, prm_get_bool_value(), PRM_ID_LOG_BTREE_OPS, PRM_ID_LOG_TRACE_DEBUG, PTR_ALIGN, log_data::rcvindex, log_rec_dbout_redo::rcvindex, log_rec_mvcc_redo::redo, mvcctable::reset_start_mvccid(), log_rec_undoredo::rlength, RV_fun, rv_rcvindex_string(), RVBT_RECORD_MODIFY_COMPENSATE, RVVAC_COMPLETE, clientids::set_system_internal_with_user(), log_tdes::state, TRAN_ACTIVE, TRAN_UNACTIVE_2PC_PREPARE, TRAN_UNACTIVE_UNILATERALLY_ABORTED, log_rec_header::trid, log_tdes::trid, log_rec_header::type, log_rec_sysop_end::type, log_rec_undoredo::ulength, log_rec_compensate::undo_nxlsa, log_rec_mvcc_undoredo::undoredo, log_global::unique_stats_table, log_rec_2pc_start::user_name, log_data::volid, vpid::volid, and VPID_SET_NULL.
Referenced by log_recovery().
|
static |
Definition at line 5241 of file log_recovery.c.
References log_global::append, log_header::append_lsa, ARG_FILE_LINE, assert, log_header::chkpt_lsa, log_header::db_creation, disk_get_creation_time(), fileio_format(), log_header::fpageid, free_and_init, log_global::hdr, IO_MAX_PAGE_SIZE, log_header::is_shutdown, log_header::last_arv_num_for_syscrashes, log_header::last_deleted_arv_num, LOG_CS_FORCE_USE, LOG_CS_OWN_WRITE_MODE(), log_Db_fullname, LOG_DBFIRST_VOLID, LOG_DBLOG_ACTIVE_VOLID, log_get_num_pages_for_creation(), log_Gl, log_Name_active, LOG_PAGESIZE, log_append_info::log_pgptr, log_recovery_notpartof_archives(), LOG_RESET_APPEND_LSA(), LOG_RESET_PREV_LSA(), logpb_create_header_page(), logpb_create_page(), logpb_decache_archive_info(), logpb_fatal_error(), logpb_fetch_page(), logpb_fetch_start_append_page(), logpb_flush_header(), logpb_flush_page(), logpb_flush_pages_direct(), logpb_get_archive_number(), logpb_invalid_all_append_pages(), logpb_invalidate_pool(), logpb_set_dirty(), logpb_to_physical_pageid(), LSA_COPY(), LSA_ISNULL(), MAX_ALIGNMENT, MSGCAT_CATALOG_CUBRID, MSGCAT_LOG_RESETLOG_DUE_INCOMPLTE_MEDIA_RECOVERY, msgcat_message(), MSGCAT_SET_LOG, log_header::mvcc_op_log_lsa, NO_ERROR, NULL, NULL_VOLDES, log_header::nxarv_num, log_header::nxarv_pageid, log_header::nxarv_phy_pageid, log_lsa::offset, log_lsa::pageid, PTR_ALIGN, log_lsa::set_null(), strdup(), log_append_info::vdes, and log_header::was_active_log_reset.
Referenced by log_recovery_analysis(), and log_rv_analysis_complete().
|
static |
Definition at line 4532 of file log_recovery.c.
References log_page::area, ARG_FILE_LINE, assert, log_rec_sysop_end::compensate_lsa, log_rec_undoredo::data, log_rec_undo::data, ER_ERROR_SEVERITY, er_log_debug, ER_LOG_PAGE_CORRUPTED, er_set(), mvcc_info::id, IO_MAX_PAGE_SIZE, log_rec_sysop_end::lastparent_lsa, log_rec_undo::length, log_rcv::length, LOG_2PC_ABORT_DECISION, LOG_2PC_ABORT_INFORM_PARTICPS, LOG_2PC_COMMIT_DECISION, LOG_2PC_COMMIT_INFORM_PARTICPS, LOG_2PC_PREPARE, LOG_2PC_RECV_ACK, LOG_2PC_START, LOG_ABORT, LOG_COMMIT, LOG_COMMIT_WITH_POSTPONE, LOG_COMPENSATE, log_complete(), LOG_CS_FORCE_USE, LOG_DBEXTERN_REDO_DATA, LOG_DIFF_UNDOREDO_DATA, LOG_DONT_NEED_NEWTRID, LOG_DUMMY_CRASH_RECOVERY, LOG_DUMMY_GENERIC, LOG_DUMMY_HA_SERVER_STATE, LOG_DUMMY_HEAD_POSTPONE, LOG_DUMMY_OVF_RECORD, LOG_END_CHKPT, LOG_END_OF_LOG, LOG_FIND_TDES(), log_find_unilaterally_largest_undo_lsa(), LOG_GET_LOG_RECORD_HEADER, log_Gl, LOG_LARGER_LOGREC_TYPE, LOG_MVCC_DIFF_UNDOREDO_DATA, LOG_MVCC_REDO_DATA, LOG_MVCC_UNDO_DATA, LOG_MVCC_UNDOREDO_DATA, LOG_NEED_TO_WRITE_EOT_LOG, LOG_POSTPONE, LOG_READ_ADD_ALIGN, LOG_READ_ADVANCE_WHEN_DOESNT_FIT, LOG_REDO_DATA, LOG_REPLICATION_DATA, LOG_REPLICATION_STATEMENT, LOG_RUN_POSTPONE, log_rv_undo_record(), LOG_SAVEPOINT, LOG_SMALLER_LOGREC_TYPE, LOG_START_CHKPT, LOG_SYSOP_ATOMIC_START, LOG_SYSOP_END, LOG_SYSOP_END_LOGICAL_COMPENSATE, LOG_SYSOP_END_LOGICAL_MVCC_UNDO, LOG_SYSOP_END_LOGICAL_RUN_POSTPONE, LOG_SYSOP_END_LOGICAL_UNDO, LOG_SYSOP_START_POSTPONE, log_to_string(), LOG_UNDO_DATA, LOG_UNDOREDO_DATA, LOG_WILL_COMMIT, log_zip_alloc(), log_zip_free(), LOGAREA_SIZE, logpb_fatal_error(), logpb_fetch_page(), logpb_flush_header(), logpb_flush_pages_direct(), logtb_find_tran_index(), logtb_free_tran_index(), logtb_free_tran_index_with_undo_lsa(), logtb_is_system_worker_tranid(), LSA_AS_ARGS, LSA_COPY(), LSA_ISNULL(), MAX_ALIGNMENT, log_rcv::mvcc_id, log_rec_sysop_end::mvcc_undo, log_rec_mvcc_undoredo::mvccid, log_rec_mvcc_undo::mvccid, MVCCID_NULL, log_tdes::mvccinfo, NO_ERROR, NULL, NULL_TRAN_INDEX, NULL_TRANID, NULL_VOLID, trantable::num_total_indices, log_lsa::offset, log_data::offset, log_rcv::offset, log_lsa::pageid, log_data::pageid, vpid::pageid, pgbuf_flush_all(), log_rec_header::prev_tranlsa, prm_get_bool_value(), PRM_ID_LOG_TRACE_DEBUG, PTR_ALIGN, log_data::rcvindex, log_system_tdes::rv_delete_all_tdes_if(), log_system_tdes::rv_delete_tdes(), log_system_tdes::rv_get_tdes(), rv_rcvindex_string(), log_tdes::state, TRAN_UNACTIVE_ABORTED, TRAN_UNACTIVE_UNILATERALLY_ABORTED, log_global::trantable, log_rec_header::trid, log_tdes::trid, log_rec_header::type, log_rec_sysop_end::type, log_rec_undoredo::ulength, log_rec_mvcc_undo::undo, log_rec_sysop_end::undo, log_rec_compensate::undo_nxlsa, log_tdes::undo_nxlsa, log_rec_mvcc_undoredo::undoredo, log_data::volid, and vpid::volid.
Referenced by log_recovery().
|
static |
Definition at line 2060 of file log_recovery.c.
References ARG_FILE_LINE, ER_FAILED, logpb_fatal_error(), logtb_rv_find_allocate_tran_index(), LSA_COPY(), NO_ERROR, NULL, log_tdes::state, log_tdes::tail_lsa, and TRAN_UNACTIVE_2PC_ABORT_DECISION.
Referenced by log_rv_analysis_record().
|
static |
Definition at line 2129 of file log_recovery.c.
References ARG_FILE_LINE, ER_FAILED, logpb_fatal_error(), logtb_rv_find_allocate_tran_index(), LSA_COPY(), NO_ERROR, NULL, log_tdes::state, log_tdes::tail_lsa, and TRAN_UNACTIVE_ABORTED_INFORMING_PARTICIPANTS.
Referenced by log_rv_analysis_record().
|
static |
Definition at line 2026 of file log_recovery.c.
References ARG_FILE_LINE, ER_FAILED, logpb_fatal_error(), logtb_rv_find_allocate_tran_index(), LSA_COPY(), NO_ERROR, NULL, log_tdes::state, log_tdes::tail_lsa, and TRAN_UNACTIVE_2PC_COMMIT_DECISION.
Referenced by log_rv_analysis_record().
|
static |
Definition at line 2094 of file log_recovery.c.
References ARG_FILE_LINE, ER_FAILED, logpb_fatal_error(), logtb_rv_find_allocate_tran_index(), LSA_COPY(), NO_ERROR, NULL, log_tdes::state, log_tdes::tail_lsa, and TRAN_UNACTIVE_COMMITTED_INFORMING_PARTICIPANTS.
Referenced by log_rv_analysis_record().
|
static |
Definition at line 1950 of file log_recovery.c.
References ARG_FILE_LINE, ER_FAILED, log_tdes::gtrid, LOG_2PC_NULL_GTRID, logpb_fatal_error(), logtb_rv_find_allocate_tran_index(), LSA_COPY(), NO_ERROR, NULL, log_tdes::state, log_tdes::tail_lsa, and TRAN_UNACTIVE_2PC_PREPARE.
Referenced by log_rv_analysis_record().
|
static |
Definition at line 2164 of file log_recovery.c.
References ARG_FILE_LINE, ER_FAILED, logpb_fatal_error(), logtb_rv_find_allocate_tran_index(), LSA_COPY(), NO_ERROR, NULL, and log_tdes::tail_lsa.
Referenced by log_rv_analysis_record().
|
static |
Definition at line 1989 of file log_recovery.c.
References ARG_FILE_LINE, ER_FAILED, log_tdes::gtrid, LOG_2PC_NULL_GTRID, logpb_fatal_error(), logtb_rv_find_allocate_tran_index(), LSA_COPY(), NO_ERROR, NULL, log_tdes::state, log_tdes::tail_lsa, and TRAN_UNACTIVE_2PC_COLLECTING_PARTICIPANT_VOTES.
Referenced by log_rv_analysis_record().
|
static |
Definition at line 1315 of file log_recovery.c.
References ARG_FILE_LINE, log_rcv_tdes::atomic_sysop_start_lsa, ER_FAILED, logpb_fatal_error(), logtb_rv_find_allocate_tran_index(), NO_ERROR, NULL, log_tdes::rcv, log_tdes::tail_lsa, and log_tdes::undo_nxlsa.
Referenced by log_rv_analysis_record().
|
static |
Definition at line 1159 of file log_recovery.c.
References log_page::area, ARG_FILE_LINE, ER_FAILED, LOG_READ_ADD_ALIGN, LOG_READ_ADVANCE_WHEN_DOESNT_FIT, logpb_fatal_error(), logtb_rv_find_allocate_tran_index(), LSA_COPY(), LSA_SET_NULL(), NO_ERROR, NULL, log_lsa::offset, log_rec_start_postpone::posp_lsa, log_tdes::posp_nxlsa, log_tdes::rcv, log_tdes::state, log_tdes::tail_lsa, log_rcv_tdes::tran_start_postpone_lsa, TRAN_UNACTIVE_COMMITTED_WITH_POSTPONE, and log_tdes::undo_nxlsa.
Referenced by log_rv_analysis_record().
|
static |
Definition at line 1078 of file log_recovery.c.
References log_page::area, ARG_FILE_LINE, ER_FAILED, LOG_READ_ADD_ALIGN, LOG_READ_ADVANCE_WHEN_DOESNT_FIT, logpb_fatal_error(), logtb_rv_find_allocate_tran_index(), LSA_COPY(), NO_ERROR, NULL, log_lsa::offset, log_rec_compensate::undo_nxlsa, and log_tdes::undo_nxlsa.
Referenced by log_rv_analysis_record().
|
static |
Definition at line 1352 of file log_recovery.c.
References log_page::area, log_rec_donetime::at_time, CTIME_MAX, if(), LOG_READ_ADD_ALIGN, LOG_READ_ADVANCE_WHEN_DOESNT_FIT, log_recovery_resetlog(), logtb_find_tran_index(), logtb_free_tran_index(), LSA_COPY(), MSGCAT_CATALOG_CUBRID, MSGCAT_LOG_INCOMPLTE_MEDIA_RECOVERY, MSGCAT_LOG_STARTS, msgcat_message(), MSGCAT_SET_LOG, NO_ERROR, NULL, NULL_PAGEID, NULL_TRAN_INDEX, log_lsa::offset, log_lsa::pageid, prm_get_bool_value(), and PRM_ID_LOG_TRACE_DEBUG.
Referenced by log_rv_analysis_record().
|
static |
Definition at line 897 of file log_recovery.c.
References ARG_FILE_LINE, ER_FAILED, logpb_fatal_error(), logtb_rv_find_allocate_tran_index(), LSA_COPY(), LSA_ISNULL(), NO_ERROR, NULL, log_tdes::posp_nxlsa, log_tdes::tail_lsa, and log_tdes::undo_nxlsa.
Referenced by log_rv_analysis_record().
|
static |
Definition at line 1671 of file log_recovery.c.
References log_page::area, ARG_FILE_LINE, assert, log_info_chkpt_sysop::atomic_sysop_start_lsa, log_rcv_tdes::atomic_sysop_start_lsa, log_tdes::client, ER_FAILED, ER_OUT_OF_VIRTUAL_MEMORY, free_and_init, log_page::hdr, log_info_chkpt_trans::head_lsa, log_tdes::head_lsa, i, if(), IO_MAX_PAGE_SIZE, log_info_chkpt_trans::isloose_end, log_tdes::isloose_end, log_topops_stack::last, log_rec_sysop_end::lastparent_lsa, log_topops_addresses::lastparent_lsa, LOG_ISTRAN_2PC, LOG_READ_ADD_ALIGN, LOG_READ_ADVANCE_WHEN_DOESNT_FIT, log_read_sysop_start_postpone(), LOGAREA_SIZE, log_hdrpage::logical_pageid, logpb_copy_from_log(), logpb_fatal_error(), logtb_clear_tdes(), logtb_realloc_topops_stack(), logtb_rv_find_allocate_tran_index(), LSA_COPY(), LSA_LT(), log_topops_stack::max, MAX_ALIGNMENT, NO_ERROR, log_rec_chkpt::ntops, log_rec_chkpt::ntrans, NULL, NULL_OFFSET, NULL_PAGEID, log_lsa::offset, log_hdrpage::offset, log_rec_sysop_start_postpone::posp_lsa, log_topops_addresses::posp_lsa, log_info_chkpt_trans::posp_nxlsa, log_tdes::posp_nxlsa, PTR_ALIGN, log_tdes::rcv, log_rec_chkpt::redo_lsa, log_info_chkpt_trans::savept_lsa, log_tdes::savept_lsa, clientids::set_system_internal_with_user(), log_topops_stack::stack, log_info_chkpt_trans::start_postpone_lsa, log_info_chkpt_trans::state, log_tdes::state, log_rec_sysop_start_postpone::sysop_end, log_info_chkpt_sysop::sysop_start_postpone_lsa, log_rcv_tdes::sysop_start_postpone_lsa, log_info_chkpt_trans::tail_lsa, log_tdes::tail_lsa, log_info_chkpt_trans::tail_topresult_lsa, log_tdes::tail_topresult_lsa, log_tdes::topops, TRAN_ACTIVE, log_rcv_tdes::tran_start_postpone_lsa, TRAN_UNACTIVE_ABORTED, TRAN_UNACTIVE_UNILATERALLY_ABORTED, log_info_chkpt_sysop::trid, log_info_chkpt_trans::undo_nxlsa, log_tdes::undo_nxlsa, and log_info_chkpt_trans::user_name.
Referenced by log_rv_analysis_record().
|
static |
Definition at line 2191 of file log_recovery.c.
References log_global::hdr, log_Gl, LOG_RESET_APPEND_LSA(), logpb_is_page_in_archive(), log_header::next_trid, NO_ERROR, and log_lsa::pageid.
Referenced by log_rv_analysis_record().
|
static |
Definition at line 939 of file log_recovery.c.
References ARG_FILE_LINE, ER_FAILED, logpb_fatal_error(), logtb_rv_find_allocate_tran_index(), LSA_COPY(), LSA_ISNULL(), NO_ERROR, NULL, log_tdes::posp_nxlsa, log_tdes::tail_lsa, and log_tdes::undo_nxlsa.
Referenced by log_rv_analysis_record().
|
static |
Definition at line 2214 of file log_recovery.c.
References ARG_FILE_LINE, assert, ER_ERROR_SEVERITY, er_log_debug, ER_LOG_PAGE_CORRUPTED, er_set(), LOG_2PC_ABORT_DECISION, LOG_2PC_ABORT_INFORM_PARTICPS, LOG_2PC_COMMIT_DECISION, LOG_2PC_COMMIT_INFORM_PARTICPS, LOG_2PC_PREPARE, LOG_2PC_RECV_ACK, LOG_2PC_START, LOG_ABORT, LOG_COMMIT, LOG_COMMIT_WITH_POSTPONE, LOG_COMPENSATE, LOG_DBEXTERN_REDO_DATA, LOG_DIFF_UNDOREDO_DATA, LOG_DUMMY_CRASH_RECOVERY, LOG_DUMMY_GENERIC, LOG_DUMMY_HA_SERVER_STATE, LOG_DUMMY_HEAD_POSTPONE, LOG_DUMMY_OVF_RECORD, LOG_END_CHKPT, LOG_END_OF_LOG, LOG_LARGER_LOGREC_TYPE, LOG_MVCC_DIFF_UNDOREDO_DATA, LOG_MVCC_REDO_DATA, LOG_MVCC_UNDO_DATA, LOG_MVCC_UNDOREDO_DATA, LOG_POSTPONE, LOG_REDO_DATA, LOG_REPLICATION_DATA, LOG_REPLICATION_STATEMENT, LOG_RUN_POSTPONE, log_rv_analysis_2pc_abort_decision(), log_rv_analysis_2pc_abort_inform_particps(), log_rv_analysis_2pc_commit_decision(), log_rv_analysis_2pc_commit_inform_particps(), log_rv_analysis_2pc_prepare(), log_rv_analysis_2pc_recv_ack(), log_rv_analysis_2pc_start(), log_rv_analysis_atomic_sysop_start(), log_rv_analysis_commit_with_postpone(), log_rv_analysis_compensate(), log_rv_analysis_complete(), log_rv_analysis_dummy_head_postpone(), log_rv_analysis_end_checkpoint(), log_rv_analysis_log_end(), log_rv_analysis_postpone(), log_rv_analysis_run_postpone(), log_rv_analysis_save_point(), log_rv_analysis_start_checkpoint(), log_rv_analysis_sysop_end(), log_rv_analysis_sysop_start_postpone(), log_rv_analysis_undo_redo(), log_rv_analysis_will_commit(), LOG_SAVEPOINT, LOG_SMALLER_LOGREC_TYPE, LOG_START_CHKPT, LOG_SYSOP_ATOMIC_START, LOG_SYSOP_END, LOG_SYSOP_START_POSTPONE, log_to_string(), LOG_UNDO_DATA, LOG_UNDOREDO_DATA, LOG_WILL_COMMIT, and log_lsa::pageid.
Referenced by log_recovery_analysis().
|
static |
Definition at line 983 of file log_recovery.c.
References log_page::area, ARG_FILE_LINE, assert, ER_FAILED, er_log_debug, log_topops_stack::last, LOG_READ_ADD_ALIGN, LOG_READ_ADVANCE_WHEN_DOESNT_FIT, log_state_string(), logpb_fatal_error(), logtb_rv_find_allocate_tran_index(), LSA_COPY(), LSA_ISNULL(), LSA_SET_NULL(), NO_ERROR, NULL, log_lsa::offset, log_lsa::pageid, log_topops_addresses::posp_lsa, log_tdes::posp_nxlsa, log_rec_run_postpone::ref_lsa, log_topops_stack::stack, log_tdes::state, log_tdes::tail_lsa, log_tdes::topops, log_tdes::tran_index, TRAN_UNACTIVE_COMMITTED_WITH_POSTPONE, TRAN_UNACTIVE_TOPOPE_COMMITTED_WITH_POSTPONE, TRAN_UNACTIVE_WILL_COMMIT, log_tdes::trid, and log_tdes::undo_nxlsa.
Referenced by log_rv_analysis_record().
|
static |
Definition at line 1913 of file log_recovery.c.
References ARG_FILE_LINE, ER_FAILED, logpb_fatal_error(), logtb_rv_find_allocate_tran_index(), LSA_COPY(), NO_ERROR, NULL, log_tdes::savept_lsa, log_tdes::tail_lsa, and log_tdes::undo_nxlsa.
Referenced by log_rv_analysis_record().
|
static |
Definition at line 1638 of file log_recovery.c.
References LSA_EQ(), and NO_ERROR.
Referenced by log_rv_analysis_record().
|
static |
Definition at line 1454 of file log_recovery.c.
References log_rcv_tdes::analysis_last_aborted_sysop_lsa, log_rcv_tdes::analysis_last_aborted_sysop_start_lsa, log_page::area, ARG_FILE_LINE, assert, log_rcv_tdes::atomic_sysop_start_lsa, log_rec_sysop_end::compensate_lsa, ER_FAILED, ER_OUT_OF_VIRTUAL_MEMORY, log_topops_stack::last, log_rec_sysop_end::lastparent_lsa, LOG_READ_ADD_ALIGN, LOG_READ_ADVANCE_WHEN_DOESNT_FIT, LOG_SYSOP_END_ABORT, LOG_SYSOP_END_COMMIT, LOG_SYSOP_END_LOGICAL_COMPENSATE, LOG_SYSOP_END_LOGICAL_MVCC_UNDO, LOG_SYSOP_END_LOGICAL_RUN_POSTPONE, LOG_SYSOP_END_LOGICAL_UNDO, LOG_SYSOP_END_TYPE_CHECK, logpb_fatal_error(), logtb_realloc_topops_stack(), logtb_rv_find_allocate_tran_index(), LSA_COPY(), LSA_GT(), LSA_ISNULL(), LSA_LE(), LSA_SET_NULL(), log_topops_stack::max, NO_ERROR, NULL, log_lsa::offset, log_topops_addresses::posp_lsa, log_tdes::posp_nxlsa, log_tdes::rcv, log_rec_sysop_end::run_postpone, log_topops_stack::stack, log_tdes::state, log_rcv_tdes::sysop_start_postpone_lsa, log_tdes::tail_lsa, log_tdes::tail_topresult_lsa, log_tdes::topops, log_rcv_tdes::tran_start_postpone_lsa, TRAN_UNACTIVE_COMMITTED_WITH_POSTPONE, TRAN_UNACTIVE_TOPOPE_COMMITTED_WITH_POSTPONE, TRAN_UNACTIVE_UNILATERALLY_ABORTED, log_rec_sysop_end::type, and log_tdes::undo_nxlsa.
Referenced by log_rv_analysis_record().
|
static |
Definition at line 1208 of file log_recovery.c.
References log_page::area, ARG_FILE_LINE, assert, assert_release, log_rcv_tdes::atomic_sysop_start_lsa, ER_FAILED, ER_OUT_OF_VIRTUAL_MEMORY, log_topops_stack::last, log_rec_sysop_end::lastparent_lsa, log_topops_addresses::lastparent_lsa, LOG_READ_ADD_ALIGN, LOG_READ_ADVANCE_WHEN_DOESNT_FIT, LOG_SYSOP_END_ABORT, LOG_SYSOP_END_LOGICAL_RUN_POSTPONE, logpb_fatal_error(), logtb_realloc_topops_stack(), logtb_rv_find_allocate_tran_index(), LSA_COPY(), LSA_LT(), LSA_SET_NULL(), log_topops_stack::max, NO_ERROR, NULL, log_lsa::offset, log_rec_sysop_start_postpone::posp_lsa, log_topops_addresses::posp_lsa, log_tdes::rcv, log_rec_sysop_end::run_postpone, log_topops_stack::stack, log_tdes::state, log_rec_sysop_start_postpone::sysop_end, log_rcv_tdes::sysop_start_postpone_lsa, log_tdes::tail_lsa, log_tdes::topops, TRAN_UNACTIVE_TOPOPE_COMMITTED_WITH_POSTPONE, log_rec_sysop_end::type, and log_tdes::undo_nxlsa.
Referenced by log_rv_analysis_record().
|
static |
Definition at line 862 of file log_recovery.c.
References ARG_FILE_LINE, ER_FAILED, logpb_fatal_error(), logtb_rv_find_allocate_tran_index(), LSA_COPY(), NO_ERROR, NULL, log_tdes::tail_lsa, and log_tdes::undo_nxlsa.
Referenced by log_rv_analysis_record().
|
static |
Definition at line 1122 of file log_recovery.c.
References ARG_FILE_LINE, ER_FAILED, logpb_fatal_error(), logtb_rv_find_allocate_tran_index(), LSA_COPY(), LSA_SET_NULL(), NO_ERROR, NULL, log_tdes::state, log_tdes::tail_lsa, TRAN_UNACTIVE_WILL_COMMIT, and log_tdes::undo_nxlsa.
Referenced by log_rv_analysis_record().
|
static |
Definition at line 6496 of file log_recovery.c.
References assert, LOG_SET_CURRENT_TRAN_INDEX, LOG_SYSTEM_TRAN_INDEX, and NULL.
Referenced by log_recovery_abort_all_atomic_sysops(), log_recovery_finish_all_postpone(), and log_rv_undo_record().
|
static |
Definition at line 546 of file log_recovery.c.
References disk_get_checkpoint(), LSA_COPY(), LSA_ISNULL(), LSA_LT(), and NO_ERROR.
Referenced by log_recovery().
|
static |
Definition at line 574 of file log_recovery.c.
References log_page::area, log_zip::data_length, free_and_init, GET_ZIP_LEN, log_zip::log_data, LOG_READ_ALIGN, log_unzip(), LOGAREA_SIZE, logpb_copy_from_log(), NULL, log_lsa::offset, and ZIP_CHECK.
Referenced by log_recovery_redo().
char* log_rv_pack_redo_record_changes | ( | char * | ptr, |
int | offset_to_data, | ||
int | old_data_size, | ||
int | new_data_size, | ||
char * | new_data | ||
) |
Definition at line 6314 of file log_recovery.c.
References assert, INT_ALIGNMENT, NULL, OR_BYTE_SIZE, OR_PUT_BYTE, OR_PUT_SHORT, OR_SHORT_SIZE, and PTR_ALIGN.
Referenced by btree_add_mvccid(), btree_insert_object_ordered_by_oid(), btree_leaf_change_first_object(), btree_leaf_record_change_overflow_link(), btree_leaf_record_handle_first_overflow(), btree_record_append_object(), btree_record_remove_last_object(), btree_record_remove_object_internal(), btree_record_replace_object(), btree_remove_delete_mvccid_unique_internal(), btree_remove_mvccid(), and btree_set_mvccid().
char* log_rv_pack_undo_record_changes | ( | char * | ptr, |
int | offset_to_data, | ||
int | old_data_size, | ||
int | new_data_size, | ||
char * | old_data | ||
) |
Definition at line 6356 of file log_recovery.c.
References assert, INT_ALIGNMENT, NULL, OR_BYTE_SIZE, OR_PUT_BYTE, OR_PUT_SHORT, OR_SHORT_SIZE, PTR_ALIGN, and STATIC_INLINE.
Referenced by btree_add_mvccid(), btree_insert_object_ordered_by_oid(), btree_leaf_change_first_object(), btree_leaf_record_change_overflow_link(), btree_leaf_record_handle_first_overflow(), btree_record_append_object(), btree_record_remove_last_object(), btree_record_remove_object_internal(), btree_record_replace_object(), btree_remove_delete_mvccid_unique_internal(), btree_remove_mvccid(), and btree_set_mvccid().
|
static |
Definition at line 6214 of file log_recovery.c.
References recdes::area_size, assert, assert_release, CAST_BUFLEN, COPY, log_rcv::data, recdes::data, DB_PAGESIZE, DONT_FREE, ER_FAILED, IO_MAX_PAGE_SIZE, log_rcv::length, recdes::length, LOG_RV_RECORD_IS_DELETE(), LOG_RV_RECORD_IS_INSERT(), LOG_RV_RECORD_IS_UPDATE_ALL(), LOG_RV_RECORD_IS_UPDATE_PARTIAL(), LOG_RV_RECORD_MODIFY_MASK, log_rv_undoredo_record_partial_changes(), MAX_ALIGNMENT, NO_ERROR, NULL, log_rcv::offset, OR_BYTE_SIZE, OR_GET_BYTE, pgbuf_set_dirty(), log_rcv::pgptr, PTR_ALIGN, S_SUCCESS, SP_SUCCESS, spage_delete(), spage_get_record(), spage_insert_at(), spage_update(), and recdes::type.
Referenced by log_rv_redo_record_modify(), and log_rv_undo_record_modify().
STATIC_INLINE PAGE_PTR log_rv_redo_fix_page | ( | THREAD_ENTRY * | thread_p, |
const VPID * | vpid_rcv, | ||
LOG_RCVINDEX | rcvindex | ||
) |
Definition at line 6395 of file log_recovery.c.
References assert, ASSERT_ERROR, assert_release, DISK_ERROR, DISK_INVALID, disk_is_page_sector_reserved(), DISK_VALID, er_clear(), er_errid(), er_get_severity(), ER_PB_BAD_PAGEID, ER_WARNING_SEVERITY, NEW_PAGE, NO_ERROR, NULL, OLD_PAGE_DEALLOCATED, vpid::pageid, pgbuf_fix, pgbuf_fix_if_not_deallocated, PGBUF_LATCH_WRITE, PGBUF_UNCONDITIONAL_LATCH, RCV_IS_NEW_PAGE_INIT, RVPGBUF_COMPENSATE_DEALLOC, vpid::volid, and VPID_ISNULL.
Referenced by log_recovery_redo().
|
static |
Definition at line 431 of file log_recovery.c.
References log_page::area, ARG_FILE_LINE, log_rcv::data, log_zip::data_length, er_log_debug, free_and_init, GET_ZIP_LEN, log_rcv::length, log_zip::log_data, log_diff(), log_unzip(), LOGAREA_SIZE, logpb_copy_from_log(), logpb_fatal_error(), log_rcv::mvcc_id, NO_ERROR, NULL, log_lsa::offset, log_rcv::offset, log_lsa::pageid, vpid::pageid, pgbuf_get_vpid(), pgbuf_set_lsa(), log_rcv::pgptr, vpid::volid, VPID_SET_NULL, and ZIP_CHECK.
Referenced by log_recovery_redo().
int log_rv_redo_record_modify | ( | THREAD_ENTRY * | thread_p, |
LOG_RCV * | rcv | ||
) |
Definition at line 6177 of file log_recovery.c.
References log_rv_record_modify_internal().
|
static |
Definition at line 6475 of file log_recovery.c.
References assert, LOG_SET_CURRENT_TRAN_INDEX, NULL, log_system_tdes::rv_simulate_system_tdes(), log_tdes::tran_index, and log_tdes::trid.
Referenced by log_recovery_abort_all_atomic_sysops(), log_recovery_finish_all_postpone(), and log_rv_undo_record().
|
static |
Definition at line 167 of file log_recovery.c.
References _er_log_debug(), log_page::area, ARG_FILE_LINE, assert, log_rcv::data, log_zip::data_length, ER_ERROR_SEVERITY, ER_LOG_MAYNEED_MEDIA_RECOVERY, ER_LOG_MISSING_COMPENSATING_RECORD, er_set(), fileio_get_volume_label(), free_and_init, GET_ZIP_LEN, log_rcv::length, log_append_compensate(), log_zip::log_data, LOG_IS_MVCC_OPERATION, log_rv_end_simulation(), log_rv_simulate_runtime_worker(), log_sysop_end_logical_compensate(), log_sysop_start(), log_unzip(), LOGAREA_SIZE, logpb_copy_from_log(), logpb_fatal_error(), logtb_rv_assign_mvccid_for_undo_recovery(), LSA_COPY(), LSA_EQ(), log_rcv::mvcc_id, MVCCID_IS_VALID, NO_ERROR, NULL, log_lsa::offset, log_rcv::offset, OLD_PAGE, log_lsa::pageid, vpid::pageid, PEEK, pgbuf_fix, pgbuf_get_vpid(), PGBUF_LATCH_WRITE, PGBUF_UNCONDITIONAL_LATCH, pgbuf_unfix, log_rcv::pgptr, prm_get_bool_value(), PRM_ID_LOG_BTREE_OPS, RCV_IS_BTREE_LOGICAL_LOG, RCV_IS_LOGICAL_COMPENSATE_MANUAL, RCV_IS_LOGICAL_LOG, log_rcv::reference_lsa, RV_fun, rv_rcvindex_string(), RVBT_LOG_GLOBAL_UNIQUE_STATS_COMMIT, RVBT_MVCC_INCREMENTS_UPD, RVBT_MVCC_NOTIFY_VACUUM, RVES_NOTIFY_VACUUM, log_tdes::state, log_tdes::tail_lsa, thread_get_thread_entry_info(), log_tdes::tran_index, TT_NONE, log_tdes::undo_nxlsa, rvfun::undofun, vpid::volid, VPID_SET_NULL, and ZIP_CHECK.
Referenced by log_recovery_undo().
int log_rv_undo_record_modify | ( | THREAD_ENTRY * | thread_p, |
LOG_RCV * | rcv | ||
) |
Definition at line 6195 of file log_recovery.c.
References log_rv_record_modify_internal().
|
static |
Definition at line 6052 of file log_recovery.c.
References assert_release, or_buf::endptr, INT_ALIGNMENT, NO_ERROR, NULL, or_advance(), or_align(), OR_BYTE_SIZE, or_get_byte(), or_get_short(), or_overflow(), OR_SHORT_SIZE, or_buf::ptr, and RECORD_REPLACE_DATA.
Referenced by log_rv_undoredo_record_partial_changes().
int log_rv_undoredo_record_partial_changes | ( | THREAD_ENTRY * | thread_p, |
char * | rcv_data, | ||
int | rcv_data_length, | ||
RECDES * | record, | ||
bool | is_undo | ||
) |
Definition at line 6148 of file log_recovery.c.
References assert, log_rv_undoredo_partial_changes_recursive(), NULL, and OR_BUF_INIT.
Referenced by btree_rv_record_modify_internal(), and log_rv_record_modify_internal().
LOG_LSA* log_startof_nxrec | ( | THREAD_ENTRY * | thread_p, |
LOG_LSA * | lsa, | ||
bool | canuse_forwaddr | ||
) |
Definition at line 5433 of file log_recovery.c.
References log_page::area, error(), log_rec_header::forw_lsa, GET_ZIP_LEN, log_rec_2pc_prepcommit::gtrinfo_length, log_page::hdr, IO_MAX_PAGE_SIZE, log_rec_undo::length, log_rec_redo::length, log_rec_replication::length, log_rec_dbout_redo::length, log_rec_compensate::length, log_rec_run_postpone::length, log_rec_savept::length, LOG_2PC_ABORT_DECISION, LOG_2PC_ABORT_INFORM_PARTICPS, LOG_2PC_COMMIT_DECISION, LOG_2PC_COMMIT_INFORM_PARTICPS, LOG_2PC_PREPARE, LOG_2PC_RECV_ACK, LOG_2PC_START, LOG_ABORT, LOG_COMMIT, LOG_COMMIT_WITH_POSTPONE, LOG_COMPENSATE, LOG_CS_FORCE_USE, LOG_DBEXTERN_REDO_DATA, LOG_DIFF_UNDOREDO_DATA, LOG_DUMMY_CRASH_RECOVERY, LOG_DUMMY_GENERIC, LOG_DUMMY_HA_SERVER_STATE, LOG_DUMMY_HEAD_POSTPONE, LOG_DUMMY_OVF_RECORD, LOG_END_CHKPT, LOG_END_OF_LOG, LOG_GET_LOG_RECORD_HEADER, LOG_LARGER_LOGREC_TYPE, LOG_MVCC_DIFF_UNDOREDO_DATA, LOG_MVCC_REDO_DATA, LOG_MVCC_UNDO_DATA, LOG_MVCC_UNDOREDO_DATA, LOG_POSTPONE, LOG_READ_ADD_ALIGN, LOG_READ_ADVANCE_WHEN_DOESNT_FIT, LOG_REDO_DATA, LOG_REPLICATION_DATA, LOG_REPLICATION_STATEMENT, LOG_RUN_POSTPONE, LOG_SAVEPOINT, LOG_SMALLER_LOGREC_TYPE, LOG_START_CHKPT, LOG_SYSOP_ATOMIC_START, LOG_SYSOP_END, LOG_SYSOP_END_LOGICAL_MVCC_UNDO, LOG_SYSOP_END_LOGICAL_UNDO, LOG_SYSOP_START_POSTPONE, LOG_UNDO_DATA, LOG_UNDOREDO_DATA, LOG_WILL_COMMIT, logpb_fetch_page(), logpb_is_page_in_archive(), LSA_COPY(), LSA_ISNULL(), MAX_ALIGNMENT, log_rec_sysop_end::mvcc_undo, NO_ERROR, log_rec_chkpt::ntops, log_rec_chkpt::ntrans, NULL, NULL_OFFSET, log_rec_2pc_prepcommit::num_object_locks, log_rec_2pc_start::num_particps, log_lsa::offset, log_hdrpage::offset, log_lsa::pageid, log_rec_2pc_start::particp_id_length, PTR_ALIGN, log_rec_mvcc_redo::redo, log_rec_undoredo::rlength, log_rec_sysop_start_postpone::sysop_end, log_rec_header::type, log_rec_sysop_end::type, log_rec_undoredo::ulength, log_rec_mvcc_undo::undo, log_rec_sysop_end::undo, and log_rec_mvcc_undoredo::undoredo.
Referenced by log_recovery_analysis(), and xlog_dump().
|
static |
Definition at line 5120 of file log_recovery.c.
References ALLOC_COPY, fileio_get_volume_label(), fileio_unformat(), NO_ERROR, NULL_VOLID, and pgbuf_invalidate_all.
Referenced by log_recovery_notpartof_volumes().