CUBRID Engine
latest
|
#include "config.h"
#include <stdio.h>
#include <stddef.h>
#include <stdlib.h>
#include <stdarg.h>
#include <string.h>
#include <time.h>
#include <limits.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <unistd.h>
#include <sys/param.h>
#include <fcntl.h>
#include <assert.h>
#include "porting.h"
#include "porting_inline.hpp"
#include "connection_defs.h"
#include "language_support.h"
#include "log_append.hpp"
#include "log_impl.h"
#include "log_lsa.hpp"
#include "log_manager.h"
#include "log_comm.h"
#include "log_volids.hpp"
#include "log_writer.h"
#include "lock_manager.h"
#include "log_system_tran.hpp"
#include "boot_sr.h"
#include "boot_cl.h"
#include "critical_section.h"
#include "page_buffer.h"
#include "double_write_buffer.h"
#include "file_io.h"
#include "disk_manager.h"
#include "error_manager.h"
#include "xserver_interface.h"
#include "perf_monitor.h"
#include "storage_common.h"
#include "system_parameter.h"
#include "memory_alloc.h"
#include "memory_hash.h"
#include "release_string.h"
#include "message_catalog.h"
#include "msgcat_set_log.hpp"
#include "environment_variable.h"
#include "util_func.h"
#include "errno.h"
#include "tcp.h"
#include "db.h"
#include "log_compress.h"
#include "event_log.h"
#include "tsc_timer.h"
#include "vacuum.h"
#include "thread_entry.hpp"
#include "thread_manager.hpp"
#include "crypt_opfunc.h"
#include "object_representation.h"
Go to the source code of this file.
Classes | |
struct | log_buffer |
struct | logpb_partial_append |
struct | log_pb_global_data |
struct | arv_page_info |
struct | ARV_LOG_PAGE_INFO_TABLE |
Typedefs | |
typedef struct log_buffer | LOG_BUFFER |
typedef struct logpb_partial_append | LOGPB_PARTIAL_APPEND |
typedef struct log_pb_global_data | LOG_PB_GLOBAL_DATA |
typedef struct arv_page_info | ARV_PAGE_INFO |
Functions | |
static LOG_PAGE * | logpb_locate_page (THREAD_ENTRY *thread_p, LOG_PAGEID pageid, PAGE_FETCH_MODE fetch_mode) |
static bool | logpb_is_dirty (THREAD_ENTRY *thread_p, LOG_PAGE *log_pgptr) |
static bool | logpb_is_any_dirty (THREAD_ENTRY *thread_p) |
static void | logpb_dump_information (FILE *out_fp) |
static void | logpb_dump_to_flush_page (FILE *out_fp) |
static void | logpb_dump_pages (FILE *out_fp) |
static void | logpb_initialize_backup_info (LOG_HEADER *loghdr) |
static LOG_PAGE ** | logpb_writev_append_pages (THREAD_ENTRY *thread_p, LOG_PAGE **to_flush, DKNPAGES npages) |
static int | logpb_get_guess_archive_num (THREAD_ENTRY *thread_p, LOG_PAGEID pageid) |
static void | logpb_set_unavailable_archive (THREAD_ENTRY *thread_p, int arv_num) |
static void | logpb_dismount_log_archive (THREAD_ENTRY *thread_p) |
static bool | logpb_is_archive_available (THREAD_ENTRY *thread_p, int arv_num) |
static void | logpb_archive_active_log (THREAD_ENTRY *thread_p) |
static int | logpb_remove_archive_logs_internal (THREAD_ENTRY *thread_p, int first, int last, const char *info_reason) |
static void | logpb_append_archives_removed_to_log_info (int first, int last, const char *info_reason) |
static int | logpb_verify_length (const char *db_fullname, const char *log_path, const char *log_prefix) |
static int | logpb_backup_for_volume (THREAD_ENTRY *thread_p, VOLID volid, LOG_LSA *chkpt_lsa, FILEIO_BACKUP_SESSION *session, bool only_updated) |
static int | logpb_update_backup_volume_info (const char *bkupinfo_file_name) |
static int | logpb_start_where_path (const char *to_db_fullname, const char *toext_path, const char **toext_name, char **ext_path, char **alloc_extpath, const char *fileof_vols_and_wherepaths, FILE **where_paths_fp) |
static int | logpb_next_where_path (const char *to_db_fullname, const char *toext_path, const char *ext_name, char *ext_path, const char *fileof_vols_and_wherepaths, FILE *where_paths_fp, int num_perm_vols, VOLID volid, char *from_volname, char *to_volname) |
static int | logpb_copy_volume (THREAD_ENTRY *thread_p, VOLID from_volid, const char *tonew_volname, INT64 *db_creation, LOG_LSA *vol_chkpt_lsa) |
static bool | logpb_check_if_exists (const char *fname, char *first_vol) |
static bool | logpb_remote_ask_user_before_delete_volumes (THREAD_ENTRY *thread_p, const char *volpath) |
static int | logpb_initialize_flush_info (void) |
static void | logpb_finalize_flush_info (void) |
static void | logpb_finalize_writer_info (void) |
static void | logpb_dump_log_header (FILE *outfp) |
static void | logpb_dump_parameter (FILE *outfp) |
static void | logpb_dump_runtime (FILE *outfp) |
static void | logpb_initialize_log_buffer (LOG_BUFFER *log_buffer_p, LOG_PAGE *log_pg) |
static int | logpb_check_stop_at_time (FILEIO_BACKUP_SESSION *session, time_t stop_at, time_t backup_time) |
static void | logpb_write_toflush_pages_to_archive (THREAD_ENTRY *thread_p) |
static int | logpb_add_archive_page_info (THREAD_ENTRY *thread_p, int arv_num, LOG_PAGEID start_page, LOG_PAGEID end_page) |
static int | logpb_get_archive_num_from_info_table (THREAD_ENTRY *thread_p, LOG_PAGEID page_id) |
static int | logpb_flush_all_append_pages (THREAD_ENTRY *thread_p) |
static int | logpb_append_next_record (THREAD_ENTRY *thread_p, LOG_PRIOR_NODE *ndoe) |
static void | logpb_start_append (THREAD_ENTRY *thread_p, LOG_RECORD_HEADER *header) |
static void | logpb_end_append (THREAD_ENTRY *thread_p, LOG_RECORD_HEADER *header) |
static void | logpb_append_data (THREAD_ENTRY *thread_p, int length, const char *data) |
static void | logpb_append_crumbs (THREAD_ENTRY *thread_p, int num_crumbs, const LOG_CRUMB *crumbs) |
static void | logpb_next_append_page (THREAD_ENTRY *thread_p, LOG_SETDIRTY current_setdirty) |
static LOG_PRIOR_NODE * | prior_lsa_remove_prior_list (THREAD_ENTRY *thread_p) |
static int | logpb_append_prior_lsa_list (THREAD_ENTRY *thread_p, LOG_PRIOR_NODE *list) |
static int | logpb_copy_page (THREAD_ENTRY *thread_p, LOG_PAGEID pageid, LOG_CS_ACCESS_MODE access_mode, LOG_PAGE *log_pgptr) |
static void | logpb_fatal_error_internal (THREAD_ENTRY *thread_p, bool log_exit, bool need_flush, const char *file_name, const int lineno, const char *fmt, va_list ap) |
static int | logpb_copy_log_header (THREAD_ENTRY *thread_p, LOG_HEADER *to_hdr, const LOG_HEADER *from_hdr) |
STATIC_INLINE LOG_BUFFER * | logpb_get_log_buffer (LOG_PAGE *log_pg) __attribute__((ALWAYS_INLINE)) |
STATIC_INLINE int | logpb_get_log_buffer_index (LOG_PAGEID log_pageid) __attribute__((ALWAYS_INLINE)) |
static int | logpb_fetch_header_from_active_log (THREAD_ENTRY *thread_p, const char *db_fullname, const char *logpath, const char *prefix_logname, LOG_HEADER *hdr, LOG_PAGE *log_pgptr) |
static int | logpb_compute_page_checksum (THREAD_ENTRY *thread_p, LOG_PAGE *log_pgptr, int *checksum_crc32) |
static int | logpb_page_has_valid_checksum (THREAD_ENTRY *thread_p, LOG_PAGE *log_pgptr, bool *has_valid_checksum) |
static bool | logpb_is_log_active_from_backup_useful (THREAD_ENTRY *thread_p, const char *active_log_path, const char *db_full_name) |
static int | logpb_peek_header_of_active_log_from_backup (THREAD_ENTRY *thread_p, const char *active_log_path, LOG_HEADER *hdr) |
int | logpb_set_page_checksum (THREAD_ENTRY *thread_p, LOG_PAGE *log_pgptr) |
int | logpb_initialize_pool (THREAD_ENTRY *thread_p) |
void | logpb_finalize_pool (THREAD_ENTRY *thread_p) |
bool | logpb_is_pool_initialized (void) |
void | logpb_invalidate_pool (THREAD_ENTRY *thread_p) |
LOG_PAGE * | logpb_create_page (THREAD_ENTRY *thread_p, LOG_PAGEID pageid) |
void | logpb_set_dirty (THREAD_ENTRY *thread_p, LOG_PAGE *log_pgptr) |
int | logpb_flush_page (THREAD_ENTRY *thread_p, LOG_PAGE *log_pgptr) |
LOG_PAGEID | logpb_get_page_id (LOG_PAGE *log_pgptr) |
void | logpb_dump (THREAD_ENTRY *thread_p, FILE *out_fp) |
int | logpb_initialize_header (THREAD_ENTRY *thread_p, LOG_HEADER *loghdr, const char *prefix_logname, DKNPAGES npages, INT64 *db_creation) |
LOG_PAGE * | logpb_create_header_page (THREAD_ENTRY *thread_p) |
void | logpb_fetch_header (THREAD_ENTRY *thread_p, LOG_HEADER *hdr) |
void | logpb_fetch_header_with_buffer (THREAD_ENTRY *thread_p, LOG_HEADER *hdr, LOG_PAGE *log_pgptr) |
void | logpb_flush_header (THREAD_ENTRY *thread_p) |
int | logpb_fetch_page (THREAD_ENTRY *thread_p, const LOG_LSA *req_lsa, LOG_CS_ACCESS_MODE access_mode, LOG_PAGE *log_pgptr) |
int | logpb_copy_page_from_log_buffer (THREAD_ENTRY *thread_p, LOG_PAGEID pageid, LOG_PAGE *log_pgptr) |
int | logpb_copy_page_from_file (THREAD_ENTRY *thread_p, LOG_PAGEID pageid, LOG_PAGE *log_pgptr) |
int | logpb_read_page_from_file (THREAD_ENTRY *thread_p, LOG_PAGEID pageid, LOG_CS_ACCESS_MODE access_mode, LOG_PAGE *log_pgptr) |
int | logpb_read_page_from_active_log (THREAD_ENTRY *thread_p, LOG_PAGEID pageid, int num_pages, bool decrypt_needed, LOG_PAGE *log_pgptr) |
int | logpb_write_page_to_disk (THREAD_ENTRY *thread_p, LOG_PAGE *log_pgptr, LOG_PAGEID logical_pageid) |
PGLENGTH | logpb_find_header_parameters (THREAD_ENTRY *thread_p, const bool force_read_log_header, const char *db_fullname, const char *logpath, const char *prefix_logname, PGLENGTH *io_page_size, PGLENGTH *log_page_size, INT64 *creation_time, float *db_compatibility, int *db_charset) |
int | logpb_fetch_start_append_page (THREAD_ENTRY *thread_p) |
LOG_PAGE * | logpb_fetch_start_append_page_new (THREAD_ENTRY *thread_p) |
int | logpb_prior_lsa_append_all_list (THREAD_ENTRY *thread_p) |
void | logpb_dump_log_page_area (THREAD_ENTRY *thread_p, LOG_PAGE *log_pgptr, int offset, int length) |
void | logpb_page_get_first_null_block_lsa (THREAD_ENTRY *thread_p, LOG_PAGE *log_pgptr, LOG_LSA *first_null_block_lsa) |
void | logpb_flush_pages_direct (THREAD_ENTRY *thread_p) |
void | logpb_flush_pages (THREAD_ENTRY *thread_p, LOG_LSA *flush_lsa) |
void | logpb_force_flush_pages (THREAD_ENTRY *thread_p) |
void | logpb_force_flush_header_and_pages (THREAD_ENTRY *thread_p) |
void | logpb_invalid_all_append_pages (THREAD_ENTRY *thread_p) |
void | logpb_flush_log_for_wal (THREAD_ENTRY *thread_p, const LOG_LSA *lsa_ptr) |
void | logpb_create_log_info (const char *logname_info, const char *db_fullname) |
bool | logpb_find_volume_info_exist (void) |
int | logpb_create_volume_info (const char *db_fullname) |
int | logpb_recreate_volume_info (THREAD_ENTRY *thread_p) |
VOLID | logpb_add_volume (const char *db_fullname, VOLID new_volid, const char *new_volfullname, DISK_VOLPURPOSE new_volpurpose) |
int | logpb_scan_volume_info (THREAD_ENTRY *thread_p, const char *db_fullname, VOLID ignore_volid, VOLID start_volid, int(*fun)(THREAD_ENTRY *thread_p, VOLID xvolid, const char *vlabel, void *args), void *args) |
LOG_PHY_PAGEID | logpb_to_physical_pageid (LOG_PAGEID logical_pageid) |
bool | logpb_is_page_in_archive (LOG_PAGEID pageid) |
bool | logpb_is_smallest_lsa_in_archive (THREAD_ENTRY *thread_p) |
int | logpb_get_archive_number (THREAD_ENTRY *thread_p, LOG_PAGEID pageid) |
void | logpb_decache_archive_info (THREAD_ENTRY *thread_p) |
LOG_PAGE * | logpb_fetch_from_archive (THREAD_ENTRY *thread_p, LOG_PAGEID pageid, LOG_PAGE *log_pgptr, int *ret_arv_num, LOG_ARV_HEADER *ret_arv_hdr, bool is_fatal) |
int | logpb_remove_archive_logs_exceed_limit (THREAD_ENTRY *thread_p, int max_count) |
void | logpb_remove_archive_logs (THREAD_ENTRY *thread_p, const char *info_reason) |
void | logpb_copy_from_log (THREAD_ENTRY *thread_p, char *area, int length, LOG_LSA *log_lsa, LOG_PAGE *log_page_p) |
int | logpb_initialize_log_names (THREAD_ENTRY *thread_p, const char *db_fullname, const char *logpath, const char *prefix_logname) |
bool | logpb_exist_log (THREAD_ENTRY *thread_p, const char *db_fullname, const char *logpath, const char *prefix_logname) |
void | logpb_checkpoint_trans (LOG_INFO_CHKPT_TRANS *chkpt_entries, log_tdes *tdes, int &ntrans, int &ntops, LOG_LSA &smallest_lsa) |
int | logpb_checkpoint_topops (THREAD_ENTRY *thread_p, LOG_INFO_CHKPT_SYSOP *&chkpt_topops, LOG_INFO_CHKPT_TRANS *chkpt_trans, LOG_REC_CHKPT &tmp_chkpt, log_tdes *tdes, int &ntops, size_t &length_all_tops) |
LOG_PAGEID | logpb_checkpoint (THREAD_ENTRY *thread_p) |
void | logpb_dump_checkpoint_trans (FILE *out_fp, int length, void *data) |
int | logpb_backup (THREAD_ENTRY *thread_p, int num_perm_vols, const char *allbackup_path, FILEIO_BACKUP_LEVEL backup_level, bool delete_unneeded_logarchives, const char *backup_verbose_file_path, int num_threads, FILEIO_ZIP_METHOD zip_method, FILEIO_ZIP_LEVEL zip_level, int skip_activelog, int sleep_msecs, bool separate_keys) |
int | logpb_restore (THREAD_ENTRY *thread_p, const char *db_fullname, const char *logpath, const char *prefix_logname, bo_restart_arg *r_args) |
int | logpb_copy_database (THREAD_ENTRY *thread_p, VOLID num_perm_vols, const char *to_db_fullname, const char *to_logpath, const char *to_prefix_logname, const char *toext_path, const char *fileof_vols_and_copypaths) |
int | logpb_rename_all_volumes_files (THREAD_ENTRY *thread_p, VOLID num_perm_vols, const char *to_db_fullname, const char *to_logpath, const char *to_prefix_logname, const char *toext_path, const char *fileof_vols_and_renamepaths, bool extern_rename, bool force_delete) |
int | logpb_delete (THREAD_ENTRY *thread_p, VOLID num_perm_vols, const char *db_fullname, const char *logpath, const char *prefix_logname, bool force_delete) |
int | logpb_check_exist_any_volumes (THREAD_ENTRY *thread_p, const char *db_fullname, const char *logpath, const char *prefix_logname, char *first_vol, bool *is_exist) |
void | logpb_fatal_error (THREAD_ENTRY *thread_p, bool log_exit, const char *file_name, const int lineno, const char *fmt,...) |
void | logpb_fatal_error_exit_immediately_wo_flush (THREAD_ENTRY *thread_p, const char *file_name, const int lineno, const char *fmt,...) |
int | logpb_check_and_reset_temp_lsa (THREAD_ENTRY *thread_p, VOLID volid) |
void | logpb_initialize_arv_page_info_table (void) |
void | logpb_initialize_logging_statistics (void) |
int | logpb_background_archiving (THREAD_ENTRY *thread_p) |
void | xlogpb_dump_stat (FILE *outfp) |
bool | logpb_need_wal (const LOG_LSA *lsa) |
char * | logpb_backup_level_info_to_string (char *buf, int buf_size, const LOG_HDR_BKUP_LEVEL_INFO *info) |
LOG_PAGEID | logpb_find_oldest_available_page_id (THREAD_ENTRY *thread_p) |
int | logpb_find_oldest_available_arv_num (THREAD_ENTRY *thread_p) |
int | logpb_remove_all_in_log_path (THREAD_ENTRY *thread_p, const char *db_fullname, const char *logpath, const char *prefix_logname) |
void | logpb_vacuum_reset_log_header_cache (THREAD_ENTRY *thread_p, LOG_HEADER *loghdr) |
VACUUM_LOG_BLOCKID | logpb_last_complete_blockid (void) |
int | logpb_page_check_corruption (THREAD_ENTRY *thread_p, LOG_PAGE *log_pgptr, bool *is_page_corrupted) |
void | logpb_debug_check_log_page (THREAD_ENTRY *thread_p, void *log_pgptr_ptr) |
size_t | logpb_get_memsize () |
TDE_ALGORITHM | logpb_get_tde_algorithm (const LOG_PAGE *log_pgptr) |
void | logpb_set_tde_algorithm (THREAD_ENTRY *thread_p, LOG_PAGE *log_pgptr, const TDE_ALGORITHM tde_algo) |
Variables | |
static int | rv |
int | log_default_input_for_archive_log_location = -1 |
LOG_PB_GLOBAL_DATA | log_Pb |
LOG_LOGGING_STAT | log_Stat |
static ARV_LOG_PAGE_INFO_TABLE | logpb_Arv_page_info_table |
static bool | logpb_Initialized = false |
static bool | logpb_Logging = false |
#define ARV_PAGE_INFO_TABLE_SIZE 256 |
Definition at line 152 of file log_page_buffer.c.
Referenced by logpb_add_archive_page_info(), and logpb_get_archive_num_from_info_table().
#define COND_BROADCAST | ( | a | ) |
Definition at line 117 of file log_page_buffer.c.
Referenced by os_send_signal().
#define COND_DESTROY | ( | a | ) |
Definition at line 119 of file log_page_buffer.c.
#define COND_INIT | ( | a | ) |
Definition at line 115 of file log_page_buffer.c.
#define detailed_er_log | ( | ... | ) | if (detailed_logging) _er_log_debug (ARG_FILE_LINE, __VA_ARGS__) |
Referenced by logpb_checkpoint().
#define LOG_APPEND_ADVANCE_WHEN_DOESNOT_FIT | ( | thread_p, | |
length | |||
) |
Definition at line 169 of file log_page_buffer.c.
Referenced by logpb_append_next_record(), logpb_end_append(), and logpb_start_append().
#define LOG_APPEND_ALIGN | ( | thread_p, | |
current_setdirty | |||
) |
Definition at line 156 of file log_page_buffer.c.
Referenced by logpb_append_crumbs(), logpb_append_data(), and logpb_end_append().
#define LOG_APPEND_SETDIRTY_ADD_ALIGN | ( | thread_p, | |
add | |||
) |
Definition at line 177 of file log_page_buffer.c.
Referenced by logpb_start_append().
#define log_archive_er_log | ( | ... | ) | if (prm_get_bool_value (PRM_ID_DEBUG_LOG_ARCHIVES)) _er_log_debug (ARG_FILE_LINE, __VA_ARGS__) |
Definition at line 123 of file log_page_buffer.c.
Referenced by logpb_archive_active_log(), and logpb_background_archiving().
#define LOG_LAST_APPEND_PTR | ( | ) | ((char *) log_Gl.append.log_pgptr->area + LOGAREA_SIZE) |
Definition at line 154 of file log_page_buffer.c.
Referenced by logpb_append_crumbs(), and logpb_append_data().
#define LOG_MAX_LOGINFO_LINE (PATH_MAX * 4) |
Definition at line 262 of file log_page_buffer.c.
Referenced by logpb_get_guess_archive_num().
#define LOGPB_ACTIVE_NPAGES (log_Gl.hdr.npages) |
Definition at line 136 of file log_page_buffer.c.
Referenced by logpb_get_guess_archive_num(), logpb_next_append_page(), logpb_read_page_from_active_log(), logpb_read_page_from_file(), and logpb_to_physical_pageid().
#define LOGPB_AT_NEXT_ARCHIVE_PAGE_ID | ( | pageid | ) | (logpb_to_physical_pageid(pageid) == log_Gl.hdr.nxarv_phy_pageid) |
Definition at line 149 of file log_page_buffer.c.
Referenced by logpb_next_append_page().
#define LOGPB_FIND_BUFPTR | ( | bufid | ) | &log_Pb.buffers[(bufid)] |
Definition at line 126 of file log_page_buffer.c.
Referenced by logpb_dump_pages(), logpb_invalidate_pool(), and logpb_is_any_dirty().
#define LOGPB_FIRST_ACTIVE_PAGE_ID (log_Gl.hdr.fpageid) |
Definition at line 134 of file log_page_buffer.c.
Referenced by logpb_to_physical_pageid().
#define LOGPB_HEADER_PAGE_ID |
Definition at line 130 of file log_page_buffer.c.
Referenced by logpb_archive_active_log(), logpb_copy_database(), logpb_copy_page(), logpb_create_header_page(), logpb_debug_check_log_page(), logpb_fetch_header_from_active_log(), logpb_fetch_header_with_buffer(), logpb_flush_header(), logpb_flush_page(), logpb_locate_page(), logpb_peek_header_of_active_log_from_backup(), logpb_set_dirty(), logpb_to_physical_pageid(), and logpb_write_page_to_disk().
#define LOGPB_IS_ARCHIVE_PAGE | ( | pageid | ) | ((pageid) != LOGPB_HEADER_PAGE_ID && (pageid) < LOGPB_NEXT_ARCHIVE_PAGE_ID) |
Definition at line 147 of file log_page_buffer.c.
Referenced by logpb_is_page_in_archive(), and logpb_write_page_to_disk().
#define LOGPB_IS_FIRST_PHYSICAL_PAGE | ( | pageid | ) | (logpb_to_physical_pageid(pageid) == 1) |
Definition at line 144 of file log_page_buffer.c.
Referenced by logpb_next_append_page().
#define LOGPB_LAST_ACTIVE_PAGE_ID (log_Gl.hdr.nxarv_pageid + log_Gl.hdr.npages - 1) |
Definition at line 135 of file log_page_buffer.c.
Referenced by logpb_flush_page(), logpb_set_dirty(), and logpb_write_page_to_disk().
#define logpb_log | ( | ... | ) | if (logpb_Logging) _er_log_debug (ARG_FILE_LINE, "LOGPB: " __VA_ARGS__) |
Definition at line 122 of file log_page_buffer.c.
Referenced by logpb_append_next_record(), logpb_archive_active_log(), logpb_copy_page(), logpb_copy_page_from_file(), logpb_copy_page_from_log_buffer(), logpb_dump_log_page_area(), logpb_fetch_from_archive(), logpb_fetch_header_from_active_log(), logpb_fetch_page(), logpb_fetch_start_append_page(), logpb_fetch_start_append_page_new(), logpb_flush_all_append_pages(), logpb_flush_page(), logpb_invalid_all_append_pages(), logpb_locate_page(), logpb_next_append_page(), logpb_page_has_valid_checksum(), logpb_peek_header_of_active_log_from_backup(), logpb_read_page_from_active_log(), logpb_read_page_from_file(), logpb_set_dirty(), logpb_set_page_checksum(), logpb_start_append(), logpb_write_page_to_disk(), logpb_write_toflush_pages_to_archive(), and logpb_writev_append_pages().
#define LOGPB_NEXT_ARCHIVE_PAGE_ID (log_Gl.hdr.nxarv_pageid) |
Definition at line 133 of file log_page_buffer.c.
Referenced by logpb_backup(), logpb_flush_page(), logpb_remove_archive_logs(), and logpb_set_dirty().
#define LOGPB_PHYSICAL_HEADER_PAGE_ID 0 |
Definition at line 142 of file log_page_buffer.c.
Referenced by logpb_copy_database(), logpb_peek_header_of_active_log_from_backup(), and logpb_to_physical_pageid().
#define pthread_mutex_destroy | ( | a | ) |
Definition at line 110 of file log_page_buffer.c.
Referenced by logpb_finalize_flush_info(), logpb_finalize_pool(), and logpb_finalize_writer_info().
#define pthread_mutex_init | ( | a, | |
b | |||
) |
Definition at line 109 of file log_page_buffer.c.
Referenced by logpb_initialize_flush_info(), and logpb_initialize_pool().
#define pthread_mutex_lock | ( | a | ) | 0 |
Definition at line 111 of file log_page_buffer.c.
Referenced by logpb_backup(), logpb_checkpoint(), logpb_fetch_start_append_page(), logpb_finalize_flush_info(), logpb_finalize_writer_info(), logpb_flush_all_append_pages(), logpb_flush_pages(), logpb_invalid_all_append_pages(), and logpb_next_append_page().
#define pthread_mutex_unlock | ( | a | ) |
Definition at line 112 of file log_page_buffer.c.
Referenced by logpb_backup(), logpb_checkpoint(), logpb_fetch_start_append_page(), logpb_finalize_flush_info(), logpb_finalize_writer_info(), logpb_flush_all_append_pages(), logpb_flush_pages(), logpb_invalid_all_append_pages(), and logpb_next_append_page().
typedef struct arv_page_info ARV_PAGE_INFO |
typedef struct log_buffer LOG_BUFFER |
Definition at line 185 of file log_page_buffer.c.
typedef struct log_pb_global_data LOG_PB_GLOBAL_DATA |
Definition at line 235 of file log_page_buffer.c.
typedef struct logpb_partial_append LOGPB_PARTIAL_APPEND |
Definition at line 223 of file log_page_buffer.c.
Enumerator | |
---|---|
LOGPB_APPENDREC_IN_PROGRESS | |
LOGPB_APPENDREC_PARTIAL_FLUSHED_END_OF_LOG | |
LOGPB_APPENDREC_PARTIAL_ENDED | |
LOGPB_APPENDREC_PARTIAL_FLUSHED_ORIGINAL | |
LOGPB_APPENDREC_SUCCESS |
Definition at line 209 of file log_page_buffer.c.
|
static |
Definition at line 6227 of file log_page_buffer.c.
References arv_page_info::arv_num, ARV_PAGE_INFO_TABLE_SIZE, assert, arv_page_info::end_pageid, ARV_LOG_PAGE_INFO_TABLE::item_count, LOG_CS_OWN(), ARV_LOG_PAGE_INFO_TABLE::page_info, ARV_LOG_PAGE_INFO_TABLE::rear, arv_page_info::start_pageid, and thread_get_thread_entry_info().
Referenced by logpb_archive_active_log().
VOLID logpb_add_volume | ( | const char * | db_fullname, |
VOLID | new_volid, | ||
const char * | new_volfullname, | ||
DISK_VOLPURPOSE | new_volpurpose | ||
) |
Definition at line 4764 of file log_page_buffer.c.
References DB_TEMPORARY_DATA_PURPOSE, fileio_make_volume_info_name(), log_Name_volinfo, NULL, and NULL_VOLID.
Referenced by boot_create_all_volumes(), disk_add_volume(), log_create_internal(), log_recreate(), logpb_copy_database(), logpb_create_log_info(), logpb_recreate_volume_info(), and logpb_rename_all_volumes_files().
|
static |
Definition at line 6350 of file log_page_buffer.c.
References ER_LOG_MOUNT_FAIL, fileio_make_log_archive_name(), log_Archive_path, log_dump_log_info(), log_Name_info, log_Prefix, MSGCAT_CATALOG_CUBRID, MSGCAT_LOG_LOGINFO_REMOVE_REASON, msgcat_message(), MSGCAT_SET_LOG, NO_ERROR, and NULL.
Referenced by logpb_remove_archive_logs_internal().
|
static |
Definition at line 4329 of file log_page_buffer.c.
References log_header::append_lsa, assert, CAST_BUFLEN, log_global::hdr, i, log_crumb::length, LOG_APPEND_ALIGN, LOG_APPEND_PTR(), LOG_CS_OWN_WRITE_MODE(), LOG_DONT_SET_DIRTY, log_Gl, LOG_LAST_APPEND_PTR, LOG_SET_DIRTY, logpb_next_append_page(), and log_lsa::offset.
|
static |
Definition at line 4253 of file log_page_buffer.c.
References log_header::append_lsa, assert, CAST_BUFLEN, log_global::hdr, LOG_APPEND_ALIGN, LOG_APPEND_PTR(), LOG_CS_OWN_WRITE_MODE(), LOG_DONT_SET_DIRTY, log_Gl, LOG_LAST_APPEND_PTR, LOG_SET_DIRTY, logpb_next_append_page(), NULL, and log_lsa::offset.
Referenced by logpb_append_next_record().
|
static |
Definition at line 2946 of file log_page_buffer.c.
References log_global::append, log_header::append_lsa, log_append_info::appending_page_tde_encrypted, ARG_FILE_LINE, log_prior_node::data_header, log_prior_node::data_header_length, log_global::flush_info, log_global::hdr, LOG_APPEND_ADVANCE_WHEN_DOESNOT_FIT, log_Gl, log_prior_node::log_header, logpb_append_data(), logpb_end_append(), logpb_fatal_error(), logpb_flush_all_append_pages(), logpb_log, logpb_start_append(), LSA_EQ(), log_flush_info::max_toflush, NO_ERROR, NULL, log_flush_info::num_toflush, log_lsa::offset, prior_is_tde_encrypted(), log_prior_node::rdata, log_prior_node::rlength, log_prior_node::start_lsa, log_prior_node::udata, and log_prior_node::ulength.
Referenced by logpb_append_prior_lsa_list().
|
static |
Definition at line 3001 of file log_page_buffer.c.
References assert, log_prior_node::data_header, free_and_init, LOG_CS_OWN_WRITE_MODE(), log_Gl, logpb_append_next_record(), log_prior_node::next, NO_ERROR, NULL, log_prior_lsa_info::prior_flush_list_header, log_global::prior_info, log_prior_node::rdata, and log_prior_node::udata.
Referenced by logpb_prior_lsa_append_all_list().
|
static |
Definition at line 5612 of file log_page_buffer.c.
References log_global::append, log_header::append_lsa, log_global::archive, log_page::area, ARG_FILE_LINE, log_arv_header::arv_num, assert, log_global::bg_archive_info, CUBRID_MAGIC_LOG_ARCHIVE, CUBRID_MAGIC_MAX_LENGTH, background_archiving_info::current_page_id, log_header::db_creation, log_arv_header::db_creation, dwb_is_created(), ER_FATAL_ERROR_SEVERITY, ER_LOG_ARCHIVE_CREATED, ER_LOG_CREATE_LOGARCHIVE_FAIL, er_log_debug, ER_LOG_MOUNT_FAIL, ER_LOG_WRITE, ER_NOTIFICATION_SEVERITY, er_set(), error(), fileio_dismount(), fileio_format(), fileio_make_log_archive_name(), fileio_mount(), fileio_rename(), FILEIO_SYNC_ONLY, fileio_synchronize(), fileio_unformat(), fileio_write(), FILEIO_WRITE_DEFAULT_WRITE, FILEIO_WRITE_NO_COMPENSATE_WRITE, fileio_write_pages(), log_hdrpage::flags, log_arv_header::fpageid, free_and_init, HA_DISABLED, log_archives::hdr, log_page::hdr, log_global::hdr, IO_MAX_PAGE_SIZE, log_header::last_arv_num_for_syscrashes, background_archiving_info::last_sync_pageid, LOG_ARCHIVE_CS_ENTER, LOG_ARCHIVE_CS_EXIT, log_archive_er_log, log_Archive_path, LOG_CS_OWN_WRITE_MODE(), log_Db_fullname, LOG_DBLOG_ARCHIVE_VOLID, LOG_DBLOG_BG_ARCHIVE_VOLID, log_dump_log_info(), log_Gl, log_Name_bg_archive, log_Name_info, log_Name_removed_archive, LOG_PAGE_INIT_VALUE, LOG_PAGESIZE, log_Prefix, log_wakeup_remove_log_archive_daemon(), log_hdrpage::logical_pageid, logpb_add_archive_page_info(), logpb_dismount_log_archive(), logpb_fatal_error(), logpb_fetch_from_archive(), logpb_flush_all_append_pages(), logpb_flush_header(), LOGPB_HEADER_PAGE_ID, LOGPB_IO_NPAGES, logpb_log, logpb_read_page_from_active_log(), logpb_remove_archive_logs_exceed_limit(), logpb_set_page_checksum(), logpb_to_physical_pageid(), log_arv_header::magic, MAX_ALIGNMENT, MSGCAT_CATALOG_CUBRID, MSGCAT_LOG_LOGINFO_ARCHIVE, MSGCAT_LOG_LOGINFO_COMMENT_UNUSED_ARCHIVE_NAME, msgcat_message(), MSGCAT_SET_LOG, log_header::next_trid, log_arv_header::next_trid, NO_ERROR, log_header::npages, log_arv_header::npages, NULL, NULL_OFFSET, NULL_PAGEID, NULL_VOLDES, NULL_VOLID, log_header::nxarv_num, log_header::nxarv_pageid, log_header::nxarv_phy_pageid, log_hdrpage::offset, os_rename_file(), log_lsa::pageid, log_buffer::pageid, perfmon_inc_stat(), log_append_info::prev_lsa, prm_get_bool_value(), prm_get_integer_value(), PRM_ID_LOG_BACKGROUND_ARCHIVING, PRM_ID_SUPPRESS_FSYNC, PSTAT_LOG_NUM_ARCHIVES, PTR_ALIGN, background_archiving_info::start_page_id, log_archives::vdes, background_archiving_info::vdes, log_append_info::vdes, and log_header::was_active_log_reset.
Referenced by logpb_backup(), and logpb_next_append_page().
int logpb_background_archiving | ( | THREAD_ENTRY * | thread_p | ) |
Definition at line 10836 of file log_page_buffer.c.
References ARG_FILE_LINE, assert, log_global::bg_archive_info, log_header::chkpt_lsa, background_archiving_info::current_page_id, er_errid(), er_log_debug, ER_LOG_READ, ER_LOG_WRITE, error(), fileio_dismount(), FILEIO_WRITE_NO_COMPENSATE_WRITE, fileio_write_pages(), log_global::hdr, IO_MAX_PAGE_SIZE, background_archiving_info::last_sync_pageid, log_archive_er_log, log_Gl, LOG_PAGESIZE, LOGPB_IO_NPAGES, logpb_read_page_from_active_log(), MAX_ALIGNMENT, NO_ERROR, NULL, NULL_PAGEID, NULL_VOLDES, log_lsa::pageid, log_buffer::phy_pageid, prm_get_bool_value(), PRM_ID_LOG_BACKGROUND_ARCHIVING, PTR_ALIGN, background_archiving_info::start_page_id, and background_archiving_info::vdes.
Referenced by log_initialize_internal().
int logpb_backup | ( | THREAD_ENTRY * | thread_p, |
int | num_perm_vols, | ||
const char * | allbackup_path, | ||
FILEIO_BACKUP_LEVEL | backup_level, | ||
bool | delete_unneeded_logarchives, | ||
const char * | backup_verbose_file_path, | ||
int | num_threads, | ||
FILEIO_ZIP_METHOD | zip_method, | ||
FILEIO_ZIP_LEVEL | zip_level, | ||
int | skip_activelog, | ||
int | sleep_msecs, | ||
bool | separate_keys | ||
) |
Definition at line 7427 of file log_page_buffer.c.
References log_header::append_lsa, ARG_FILE_LINE, assert, ASSERT_ERROR, assert_release, fileio_backup_record_info::at_time, log_header::bkinfo, io_backup_session::bkup, log_hdr_bkup_level_info::bkup_attime, log_header::bkup_level0_lsa, log_header::bkup_level1_lsa, log_header::bkup_level2_lsa, fileio_backup_buffer::bkuphdr, boot_db_name(), log_header::chkpt_lsa, CTIME_MAX, fileio_backup_buffer::current_path, log_header::db_creation, fileio_backup_header::db_fullname, disk_lock_extend(), disk_unlock_extend(), fileio_backup_buffer::dtype, er_errid(), ER_ERROR_SEVERITY, ER_FAILED, ER_FATAL_ERROR_SEVERITY, ER_INTERRUPTED, ER_LOG_BACKUP_CS_ENTER, ER_LOG_BACKUP_CS_EXIT, ER_LOG_BACKUP_LEVEL_NOGAPS, ER_LOG_BKUP_DUPLICATE_REQUESTS, ER_LOG_CANNOT_ACCESS_BACKUP, ER_LOG_CREATE_DBBACKUP_DIRINFO, ER_LOG_DBBACKUP_FAIL, ER_NOTIFICATION_SEVERITY, er_set(), er_set_with_oserror(), error(), fileio_abort_backup(), FILEIO_BACKUP_BIG_INCREMENT_LEVEL, FILEIO_BACKUP_FULL_LEVEL, FILEIO_BACKUP_SMALL_INCREMENT_LEVEL, FILEIO_BACKUP_UNDEFINED_LEVEL, FILEIO_BACKUP_VOL_DEVICE, fileio_backup_volume(), FILEIO_BACKUP_WRITE, fileio_clear_backup_info_level(), fileio_dismount(), fileio_finalize_backup_info(), fileio_find_next_perm_volume(), fileio_finish_backup(), FILEIO_FIRST_BACKUP_VOL_INFO, fileio_get_backup_info_volume_name(), fileio_get_base_file_name(), fileio_get_directory_path(), fileio_get_volume_label(), fileio_get_zip_level_string(), fileio_get_zip_method_string(), FILEIO_INITIAL_BACKUP_UNITS, fileio_initialize_backup(), fileio_is_volume_exist(), fileio_is_volume_exist_and_file(), fileio_make_backup_name(), fileio_make_volume_info_name(), fileio_mount(), FILEIO_NO_BACKUP_UNITS, FILEIO_PROMPT_DISPLAY_ONLY, fileio_read_backup_info_entries(), fileio_remove_all_backup(), fileio_request_user_response(), fileio_start_backup(), FILEIO_ZIP_NONE_METHOD, log_global::hdr, log_header::last_arv_num_for_syscrashes, fileio_backup_header::level, LOG_CS_ENTER(), LOG_CS_EXIT(), log_Db_fullname, LOG_DBFIRST_VOLID, LOG_DBLOG_ACTIVE_VOLID, LOG_DBLOG_BKUPINFO_VOLID, LOG_DBLOG_INFO_VOLID, LOG_DBTDE_KEYS_VOLID, LOG_DBVOLINFO_VOLID, log_Gl, log_Name_active, log_Name_bkupinfo, log_Name_info, log_Path, logpb_archive_active_log(), logpb_backup_for_volume(), logpb_flush_header(), logpb_get_archive_number(), logpb_initialize_backup_info(), logpb_is_page_in_archive(), LOGPB_NEXT_ARCHIVE_PAGE_ID, logpb_remote_ask_user_before_delete_volumes(), logpb_remove_archive_logs(), logpb_update_backup_volume_info(), logtb_get_check_interrupt(), logtb_is_interrupted(), LSA_COPY(), LSA_ISNULL(), LSA_LT(), LSA_SET_NULL(), MSGCAT_CATALOG_CUBRID, MSGCAT_LOG_BACKUP_HALTED_BY_USER, MSGCAT_LOG_DATABASE_BACKUP_WAS_TAKEN, msgcat_message(), MSGCAT_SET_LOG, NO_ERROR, NULL, NULL_PAGEID, NULL_VOLDES, NULL_VOLID, fileio_thread_info::num_threads, log_header::nxarv_num, log_lsa::offset, log_lsa::pageid, PEEK, log_header::prefix_name, prm_get_integer_value(), PRM_ID_IO_BACKUP_SLEEP_MSECS, pthread_mutex_lock, pthread_mutex_unlock, io_backup_session::read_thread_info, log_global::run_nxchkpt_atpageid, rv, fileio_backup_header::skip_activelog, log_header::smallest_lsa_at_last_chkpt, fileio_backup_header::start_time, tde_copy_keys_file(), tde_make_keys_file_fullname(), thread_sleep(), io_backup_session::type, fileio_backup_header::unit_num, vacuum_er_log, VACUUM_ER_LOG_ARCHIVES, vacuum_min_log_pageid_to_keep(), and io_backup_session::verbose_fp.
Referenced by xboot_backup().
|
static |
Definition at line 7321 of file log_page_buffer.c.
References DB_TEMPORARY_DATA_PURPOSE, disk_set_checkpoint(), DISK_VOLPURPOSE, ER_FAILED, fileio_backup_volume(), fileio_get_volume_descriptor(), fileio_get_volume_label(), FILEIO_SYNC_ALSO_FLUSH_DWB, fileio_synchronize(), LOG_CS_ENTER(), LOG_CS_EXIT(), logpb_flush_pages_direct(), NO_ERROR, NULL_VOLID, PEEK, pgbuf_flush_all_unfixed(), and xdisk_get_purpose_and_sys_lastpage().
Referenced by logpb_backup().
char* logpb_backup_level_info_to_string | ( | char * | buf, |
int | buf_size, | ||
const LOG_HDR_BKUP_LEVEL_INFO * | info | ||
) |
Definition at line 11074 of file log_page_buffer.c.
References log_hdr_bkup_level_info::bkup_attime, if(), and strlen.
Referenced by log_active_log_header_next_scan().
int logpb_check_and_reset_temp_lsa | ( | THREAD_ENTRY * | thread_p, |
VOLID | volid | ||
) |
Definition at line 10665 of file log_page_buffer.c.
References DB_TEMPORARY_DATA_PURPOSE, ER_FAILED, FREE, LOG_DBFIRST_VOLID, NO_ERROR, NULL, OLD_PAGE, vpid::pageid, pgbuf_fix, PGBUF_LATCH_WRITE, pgbuf_reset_temp_lsa(), pgbuf_set_dirty(), PGBUF_UNCONDITIONAL_LATCH, pgbuf_unfix, vpid::volid, and xdisk_get_purpose().
Referenced by log_recreate(), and logpb_copy_volume().
int logpb_check_exist_any_volumes | ( | THREAD_ENTRY * | thread_p, |
const char * | db_fullname, | ||
const char * | logpath, | ||
const char * | prefix_logname, | ||
char * | first_vol, | ||
bool * | is_exist | ||
) |
Definition at line 10373 of file log_page_buffer.c.
References log_Name_active, log_Name_info, log_Name_volinfo, logpb_check_if_exists(), logpb_initialize_log_names(), and NO_ERROR.
Referenced by xboot_initialize_server().
Definition at line 10343 of file log_page_buffer.c.
References ARG_FILE_LINE, ER_BO_VOLUME_EXISTS, ER_ERROR_SEVERITY, and er_set().
Referenced by logpb_check_exist_any_volumes().
|
static |
Definition at line 8215 of file log_page_buffer.c.
References ARG_FILE_LINE, CTIME_MAX, ER_ERROR_SEVERITY, ER_LOG_UPTODATE_ERROR, er_set(), NO_ERROR, and strlen.
Referenced by logpb_restore().
LOG_PAGEID logpb_checkpoint | ( | THREAD_ENTRY * | thread_p | ) |
Definition at line 6746 of file log_page_buffer.c.
References log_header::append_lsa, log_global::archive, ARG_FILE_LINE, assert, log_header::avg_nlocks, log_header::avg_ntrans, BO_IS_SERVER_RESTARTED, log_global::chkpt_every_npages, log_header::chkpt_lsa, log_global::chkpt_redo_lsa, log_prior_node::data_header, detailed_er_log, disk_set_checkpoint(), ER_LOG_CHECKPOINT_FINISHED, ER_LOG_CHECKPOINT_STARTED, er_log_debug, ER_LOG_MOUNT_FAIL, ER_NOTIFICATION_SEVERITY, er_set(), fileio_find_next_perm_volume(), fileio_get_volume_descriptor(), fileio_get_volume_label(), fileio_make_log_archive_name(), FILEIO_SYNC_ALSO_FLUSH_DWB, fileio_synchronize(), fileio_synchronize_all(), free_and_init, log_global::hdr, i, log_header::last_arv_num_for_syscrashes, lock_get_number_object_locks(), log_Archive_path, LOG_CS_ENTER(), LOG_CS_EXIT(), LOG_CS_OWN_WRITE_MODE(), LOG_DBFIRST_VOLID, log_dump_log_info(), LOG_END_CHKPT, LOG_FIND_TDES(), log_Gl, log_Name_info, log_Prefix, LOG_START_CHKPT, LOG_SYSTEM_TRAN_INDEX, logpb_checkpoint_topops(), logpb_checkpoint_trans(), logpb_dismount_log_archive(), logpb_fetch_from_archive(), logpb_flush_header(), logpb_flush_pages_direct(), logpb_is_page_in_archive(), logtb_clear_tdes(), logtb_find_smallest_lsa(), logtb_reflect_global_unique_stats_to_btree(), LSA_COPY(), LSA_GT(), LSA_ISNULL(), LSA_LE(), LSA_LT(), LSA_SET_NULL(), log_system_tdes::map_all_tdes(), MSGCAT_CATALOG_CUBRID, MSGCAT_LOG_LOGINFO_COMMENT_ARCHIVE_NONEEDED, MSGCAT_LOG_LOGINFO_COMMENT_MANY_ARCHIVES_NONEEDED, msgcat_message(), MSGCAT_SET_LOG, NO_ERROR, log_rec_chkpt::ntops, log_rec_chkpt::ntrans, NULL, NULL_PAGEID, NULL_VOLDES, NULL_VOLID, trantable::num_assigned_indices, trantable::num_total_indices, log_header::nxarv_num, log_lsa::pageid, PEEK, perfmon_inc_stat(), pgbuf_flush_checkpoint(), log_global::prior_info, prior_lsa_alloc_and_copy_data(), log_prior_lsa_info::prior_lsa_mutex, prior_lsa_next_record(), prior_lsa_next_record_with_lock(), prm_get_bool_value(), PRM_ID_LOG_CHKPT_DETAILED, PSTAT_LOG_NUM_END_CHECKPOINTS, PSTAT_LOG_NUM_START_CHECKPOINTS, pthread_mutex_lock, pthread_mutex_unlock, log_rec_chkpt::redo_lsa, log_global::run_nxchkpt_atpageid, RV_NOT_DEFINED, log_header::smallest_lsa_at_last_chkpt, TR_TABLE_CS_ENTER, TR_TABLE_CS_EXIT, log_global::trantable, log_archives::vdes, and xboot_find_last_permanent().
Referenced by boot_create_all_volumes(), log_complete(), log_complete_for_2pc(), log_final(), log_is_log_flush_daemon_available(), log_recovery(), and log_sysop_end_final().
int logpb_checkpoint_topops | ( | THREAD_ENTRY * | thread_p, |
LOG_INFO_CHKPT_SYSOP *& | chkpt_topops, | ||
LOG_INFO_CHKPT_TRANS * | chkpt_trans, | ||
LOG_REC_CHKPT & | tmp_chkpt, | ||
log_tdes * | tdes, | ||
int & | ntops, | ||
size_t & | length_all_tops | ||
) |
Definition at line 6702 of file log_page_buffer.c.
References log_info_chkpt_sysop::atomic_sysop_start_lsa, log_rcv_tdes::atomic_sysop_start_lsa, ER_FAILED, free_and_init, log_Gl, LSA_ISNULL(), NO_ERROR, log_rec_chkpt::ntops, NULL, NULL_TRANID, trantable::num_assigned_indices, log_global::prior_info, log_prior_lsa_info::prior_lsa_mutex, log_tdes::rcv, log_info_chkpt_sysop::sysop_start_postpone_lsa, log_rcv_tdes::sysop_start_postpone_lsa, TR_TABLE_CS_EXIT, log_global::trantable, log_info_chkpt_sysop::trid, and log_tdes::trid.
Referenced by logpb_checkpoint().
void logpb_checkpoint_trans | ( | LOG_INFO_CHKPT_TRANS * | chkpt_entries, |
log_tdes * | tdes, | ||
int & | ntrans, | ||
int & | ntops, | ||
LOG_LSA & | smallest_lsa | ||
) |
Definition at line 6656 of file log_page_buffer.c.
References log_tdes::client, clientids::get_db_user(), log_info_chkpt_trans::head_lsa, log_tdes::head_lsa, log_info_chkpt_trans::isloose_end, log_tdes::isloose_end, log_topops_stack::last, LOG_USERNAME_MAX, LSA_COPY(), LSA_GT(), LSA_ISNULL(), NULL, NULL_TRANID, log_info_chkpt_trans::posp_nxlsa, log_tdes::posp_nxlsa, log_tdes::rcv, log_info_chkpt_trans::savept_lsa, log_tdes::savept_lsa, log_info_chkpt_trans::start_postpone_lsa, log_info_chkpt_trans::state, log_tdes::state, 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, log_rcv_tdes::tran_start_postpone_lsa, TRAN_UNACTIVE_ABORTED, TRAN_UNACTIVE_TOPOPE_COMMITTED_WITH_POSTPONE, log_info_chkpt_trans::trid, log_tdes::trid, log_info_chkpt_trans::undo_nxlsa, log_tdes::undo_nxlsa, and log_info_chkpt_trans::user_name.
Referenced by logpb_checkpoint().
|
static |
Definition at line 441 of file log_page_buffer.c.
References assert, log_hdrpage::checksum, crypt_crc32(), log_page::hdr, i, IO_MAX_PAGE_SIZE, LOG_PAGESIZE, NO_ERROR, NULL, and p.
Referenced by logpb_page_has_valid_checksum(), and logpb_set_page_checksum().
int logpb_copy_database | ( | THREAD_ENTRY * | thread_p, |
VOLID | num_perm_vols, | ||
const char * | to_db_fullname, | ||
const char * | to_logpath, | ||
const char * | to_prefix_logname, | ||
const char * | toext_path, | ||
const char * | fileof_vols_and_copypaths | ||
) |
Definition at line 9225 of file log_page_buffer.c.
References log_page::area, ARG_FILE_LINE, log_rec_header::back_lsa, boot_db_full_name(), log_header::chkpt_lsa, log_header::db_creation, DB_PERMANENT_DATA_PURPOSE, DISK_FLUSH, disk_set_link(), DISK_UNKNOWN_PURPOSE, dwb_destroy(), dwb_is_created(), log_header::eof_lsa, ER_ERROR_SEVERITY, ER_FAILED, ER_LOG_MOUNT_FAIL, er_set(), ER_TDE_COPY_KEYS_FILE_FAIL, error(), fileio_dismount(), fileio_find_next_perm_volume(), fileio_format(), fileio_make_backup_volume_info_name(), fileio_make_log_active_name(), fileio_make_log_info_name(), fileio_make_volume_info_name(), fileio_mount(), FILEIO_SYNC_ALSO_FLUSH_DWB, fileio_synchronize(), fileio_unformat(), fileio_write(), FILEIO_WRITE_DEFAULT_WRITE, FILEIO_WRITE_NO_COMPENSATE_WRITE, log_hdrpage::flags, log_rec_header::forw_lsa, free_and_init, log_page::hdr, log_global::hdr, log_Db_fullname, LOG_DBCOPY_VOLID, LOG_DBFIRST_VOLID, LOG_DBLOG_ACTIVE_VOLID, LOG_DBLOG_BKUPINFO_VOLID, log_dump_log_info(), LOG_END_OF_LOG, log_Gl, LOG_PAGE_INIT_VALUE, LOG_PAGESIZE, LOG_SYSTEM_TRANID, log_hdrpage::logical_pageid, logpb_add_volume(), logpb_copy_log_header(), logpb_copy_volume(), logpb_create_log_info(), logpb_create_volume_info(), logpb_flush_pages_direct(), LOGPB_HEADER_PAGE_ID, logpb_initialize_header(), logpb_next_where_path(), LOGPB_PHYSICAL_HEADER_PAGE_ID, logpb_set_page_checksum(), logpb_start_where_path(), logpb_to_physical_pageid(), logpb_verify_length(), LSA_SET_NULL(), MSGCAT_CATALOG_CUBRID, MSGCAT_LOG_LOGINFO_ACTIVE, msgcat_message(), MSGCAT_SET_LOG, NO_ERROR, log_header::npages, NULL, NULL_OFFSET, NULL_VOLDES, NULL_VOLID, log_lsa::offset, log_hdrpage::offset, log_lsa::pageid, pgbuf_flush_all_unfixed_and_set_lsa_as_null(), pgbuf_invalidate_all, log_buffer::phy_pageid, log_rec_header::prev_tranlsa, tde_copy_keys_file(), tde_make_keys_file_fullname(), log_rec_header::trid, and log_rec_header::type.
Referenced by xboot_copy().
void logpb_copy_from_log | ( | THREAD_ENTRY * | thread_p, |
char * | area, | ||
int | length, | ||
LOG_LSA * | log_lsa, | ||
LOG_PAGE * | log_page_p | ||
) |
Definition at line 6407 of file log_page_buffer.c.
References log_page::area, LOG_READ_ADVANCE_WHEN_DOESNT_FIT, LOGAREA_SIZE, and log_lsa::offset.
Referenced by log_2pc_read_prepare(), log_2pc_recovery_start(), log_dump_data(), log_get_undo_record(), log_read_sysop_start_postpone(), log_recovery_analysis(), log_recovery_redo(), log_rollback_record(), log_run_postpone_op(), log_rv_analysis_end_checkpoint(), log_rv_get_unzip_log_data(), log_rv_redo_record(), and log_rv_undo_record().
|
static |
Definition at line 1415 of file log_page_buffer.c.
References assert, LOG_CS_OWN_WRITE_MODE(), log_header::mvcc_next_id, NO_ERROR, NULL, and log_header::was_copied.
Referenced by logpb_copy_database().
|
static |
Definition at line 1856 of file log_page_buffer.c.
References ARG_FILE_LINE, assert, log_pb_global_data::buffers, ER_FAILED, ER_FATAL_ERROR_SEVERITY, ER_LOG_PAGE_CORRUPTED, er_set(), log_pb_global_data::header_buffer, LOG_CS_ENTER_READ_MODE(), LOG_CS_EXIT(), LOG_CS_SAFE_READER, LOG_PAGESIZE, log_buffer::logpage, logpb_get_log_buffer_index(), LOGPB_HEADER_PAGE_ID, logpb_log, logpb_read_page_from_file(), NO_ERROR, NULL, NULL_PAGEID, log_pb_global_data::num_buffers, PAGE_LOG, log_buffer::pageid, PERF_HOLDER_LATCH_READ, PERF_PAGE_MODE_OLD_IN_BUFFER, PERF_PAGE_MODE_OLD_LOCK_WAIT, PERF_UNCONDITIONAL_FIX_WITH_WAIT, perfmon_inc_stat(), perfmon_is_perf_tracking(), PSTAT_LOG_NUM_FETCHES, rv, tsc_elapsed_time_usec(), and tsc_getticks().
Referenced by logpb_copy_page_from_log_buffer(), and logpb_fetch_page().
int logpb_copy_page_from_file | ( | THREAD_ENTRY * | thread_p, |
LOG_PAGEID | pageid, | ||
LOG_PAGE * | log_pgptr | ||
) |
Definition at line 1816 of file log_page_buffer.c.
References log_header::append_lsa, assert, ER_FAILED, log_global::hdr, LOG_CS_ENTER_READ_MODE(), LOG_CS_EXIT(), LOG_CS_FORCE_USE, log_Gl, logpb_log, logpb_read_page_from_file(), NO_ERROR, NULL, NULL_PAGEID, log_lsa::pageid, and rv.
Referenced by logwr_log_ha_filestat_to_string().
int logpb_copy_page_from_log_buffer | ( | THREAD_ENTRY * | thread_p, |
LOG_PAGEID | pageid, | ||
LOG_PAGE * | log_pgptr | ||
) |
Definition at line 1788 of file log_page_buffer.c.
References log_header::append_lsa, assert, ASSERT_ERROR, ER_FAILED, log_global::hdr, LOG_CS_FORCE_USE, log_Gl, logpb_copy_page(), logpb_log, NO_ERROR, NULL, NULL_PAGEID, log_lsa::pageid, and rv.
Referenced by logwr_log_ha_filestat_to_string().
|
static |
Definition at line 9119 of file log_page_buffer.c.
References DISK_DONT_FLUSH, disk_set_creation(), ER_FAILED, fileio_copy_volume(), fileio_dismount(), fileio_get_volume_descriptor(), fileio_get_volume_label(), FILEIO_SYNC_ALSO_FLUSH_DWB, fileio_synchronize(), LOG_DBCOPY_VOLID, logpb_check_and_reset_temp_lsa(), logpb_flush_pages_direct(), NO_ERROR, NULL_VOLDES, PEEK, pgbuf_flush_all_unfixed(), pgbuf_flush_all_unfixed_and_set_lsa_as_null(), pgbuf_invalidate_all, and xdisk_get_total_numpages().
Referenced by logpb_copy_database().
LOG_PAGE* logpb_create_header_page | ( | THREAD_ENTRY * | thread_p | ) |
Definition at line 1397 of file log_page_buffer.c.
References assert, LOG_CS_OWN_WRITE_MODE(), logpb_create_page(), and LOGPB_HEADER_PAGE_ID.
Referenced by log_create_internal(), and log_recovery_resetlog().
Definition at line 4479 of file log_page_buffer.c.
References CUBRID_MAGIC_LOG_INFO, db_name, DISK_UNKNOWN_PURPOSE, log_Db_fullname, LOG_DBLOG_INFO_VOLID, log_dump_log_info(), logpb_add_volume(), MSGCAT_CATALOG_CUBRID, MSGCAT_LOG_LOGINFO_COMMENT, msgcat_message(), MSGCAT_SET_LOG, NO_ERROR, and NULL.
Referenced by log_create_internal(), logpb_copy_database(), and logpb_rename_all_volumes_files().
LOG_PAGE* logpb_create_page | ( | THREAD_ENTRY * | thread_p, |
LOG_PAGEID | pageid | ||
) |
Definition at line 776 of file log_page_buffer.c.
References logpb_locate_page(), and NEW_PAGE.
Referenced by log_recovery_resetlog(), logpb_create_header_page(), and logpb_next_append_page().
int logpb_create_volume_info | ( | const char * | db_fullname | ) |
Definition at line 4647 of file log_page_buffer.c.
References ARG_FILE_LINE, ER_BO_CANNOT_CREATE_VOL, ER_ERROR_SEVERITY, er_set_with_oserror(), fileio_make_volume_info_name(), LOG_DBVOLINFO_VOLID, log_Name_volinfo, NO_ERROR, and NULL.
Referenced by log_create_internal(), logpb_copy_database(), logpb_recreate_volume_info(), and logpb_rename_all_volumes_files().
void logpb_debug_check_log_page | ( | THREAD_ENTRY * | thread_p, |
void * | log_pgptr_ptr | ||
) |
Definition at line 11348 of file log_page_buffer.c.
References assert, boot_Server_status, BOOT_SERVER_UP, err, log_page::hdr, log_hdrpage::logical_pageid, LOGPB_HEADER_PAGE_ID, logpb_page_check_corruption(), NO_ERROR, and NULL.
Referenced by logpb_fetch_from_archive(), logpb_fetch_header_from_active_log(), logpb_find_oldest_available_page_id(), logpb_flush_all_append_pages(), logpb_read_page_from_active_log(), logpb_read_page_from_file(), logpb_write_toflush_pages_to_archive(), and pwrite_with_injected_fault().
void logpb_decache_archive_info | ( | THREAD_ENTRY * | thread_p | ) |
Definition at line 5081 of file log_page_buffer.c.
References log_global::archive, free_and_init, LOG_ARCHIVE_CS_ENTER, LOG_ARCHIVE_CS_EXIT, log_Gl, logpb_dismount_log_archive(), log_archives::max_unav, log_archives::next_unav, NULL, NULL_VOLDES, log_archives::unav_archives, and log_archives::vdes.
Referenced by log_create_internal(), log_final(), log_initialize_internal(), log_recovery(), log_recovery_resetlog(), and logpb_remove_archive_logs_internal().
int logpb_delete | ( | THREAD_ENTRY * | thread_p, |
VOLID | num_perm_vols, | ||
const char * | db_fullname, | ||
const char * | logpath, | ||
const char * | prefix_logname, | ||
bool | force_delete | ||
) |
Definition at line 10078 of file log_page_buffer.c.
References ALLOC_COPY, log_global::append, log_global::archive, trantable::area, log_global::bg_archive_info, log_pb_global_data::buffers, log_header::db_compatibility, log_header::db_iopagesize, log_header::db_logpagesize, db_set_page_size(), er_clear(), er_errid(), ER_IO_MOUNT_LOCKED, fileio_dismount(), fileio_finalize_backup_info(), fileio_find_next_perm_volume(), FILEIO_FIRST_BACKUP_VOL_INFO, fileio_get_volume_descriptor(), fileio_get_volume_label(), fileio_is_volume_exist(), fileio_make_dwb_name(), fileio_make_log_archive_name(), fileio_make_volume_info_name(), fileio_mount(), fileio_read_backup_info_entries(), fileio_remove_all_backup(), fileio_unformat(), log_global::hdr, i, IO_MAX_PAGE_SIZE, IO_PAGESIZE, log_header::last_deleted_arv_num, log_Archive_path, LOG_DBFIRST_VOLID, LOG_DBLOG_ACTIVE_VOLID, LOG_DBLOG_BKUPINFO_VOLID, LOG_DBLOG_INFO_VOLID, LOG_DBTDE_KEYS_VOLID, LOG_DBVOLINFO_VOLID, log_Gl, log_Name_active, log_Name_bg_archive, log_Name_bkupinfo, log_Name_info, log_Name_removed_archive, LOG_PAGESIZE, log_Path, log_append_info::log_pgptr, log_Prefix, logpb_dismount_log_archive(), logpb_fetch_header_with_buffer(), logpb_finalize_pool(), logpb_initialize_log_names(), logpb_initialize_pool(), logpb_Initialized, logtb_define_trantable_log_latch(), logtb_undefine_trantable(), MAX_ALIGNMENT, NO_ERROR, NULL, NULL_VOLDES, NULL_VOLID, pgbuf_invalidate_all, prm_get_bool_value(), PRM_ID_LOG_BACKGROUND_ARCHIVING, PTR_ALIGN, rel_disk_compatible(), tde_make_keys_file_fullname(), log_global::trantable, log_archives::vdes, background_archiving_info::vdes, and log_append_info::vdes.
Referenced by boot_create_all_volumes(), and boot_remove_all_volumes().
|
static |
Definition at line 5060 of file log_page_buffer.c.
References log_global::archive, fileio_dismount(), LOG_ARCHIVE_CS_ENTER, LOG_ARCHIVE_CS_EXIT, log_Gl, NULL_VOLDES, and log_archives::vdes.
Referenced by logpb_archive_active_log(), logpb_checkpoint(), logpb_decache_archive_info(), logpb_delete(), logpb_find_oldest_available_page_id(), logpb_remove_archive_logs(), and logpb_rename_all_volumes_files().
void logpb_dump | ( | THREAD_ENTRY * | thread_p, |
FILE * | out_fp | ||
) |
Definition at line 1128 of file log_page_buffer.c.
References assert, log_global::flush_info, LOG_CS_OWN_WRITE_MODE(), log_Gl, logpb_dump_information(), logpb_dump_pages(), logpb_dump_to_flush_page(), logpb_Initialized, and log_flush_info::num_toflush.
Referenced by logpb_finalize_pool(), logpb_flush_all_append_pages(), and logpb_flush_log_for_wal().
void logpb_dump_checkpoint_trans | ( | FILE * | out_fp, |
int | length, | ||
void * | data | ||
) |
Definition at line 7269 of file log_page_buffer.c.
References log_info_chkpt_trans::head_lsa, i, log_info_chkpt_trans::isloose_end, log_state_string(), log_lsa::offset, log_lsa::pageid, log_info_chkpt_trans::posp_nxlsa, log_info_chkpt_trans::savept_lsa, log_info_chkpt_trans::state, log_info_chkpt_trans::tail_lsa, log_info_chkpt_trans::tail_topresult_lsa, log_info_chkpt_trans::trid, log_info_chkpt_trans::undo_nxlsa, and log_info_chkpt_trans::user_name.
Referenced by log_dump_record_checkpoint().
|
static |
Definition at line 1158 of file log_page_buffer.c.
References log_global::append, log_header::append_lsa, log_pb_global_data::buffers, log_global::flush_info, log_append_info::get_nxio_lsa(), log_global::hdr, i, log_Gl, log_append_info::log_pgptr, logpb_get_page_id(), log_flush_info::max_toflush, NULL, NULL_PAGEID, log_pb_global_data::num_buffers, log_flush_info::num_toflush, log_lsa::offset, log_lsa::pageid, log_append_info::prev_lsa, log_prior_lsa_info::prev_lsa, log_global::prior_info, and log_prior_lsa_info::prior_lsa.
Referenced by logpb_dump().
|
static |
Definition at line 10918 of file log_page_buffer.c.
References log_global::append, log_header::append_lsa, log_header::bkup_level0_lsa, log_header::bkup_level1_lsa, log_header::bkup_level2_lsa, log_header::chkpt_lsa, log_header::fpageid, log_append_info::get_nxio_lsa(), log_global::hdr, log_header::last_arv_num_for_syscrashes, log_header::last_deleted_arv_num, log_Gl, LSA_AS_ARGS, log_header::mvcc_op_log_lsa, log_header::newest_block_mvccid, log_header::nxarv_num, log_header::nxarv_pageid, log_header::nxarv_phy_pageid, log_lsa::offset, log_header::oldest_visible_mvccid, log_lsa::pageid, and log_append_info::prev_lsa.
Referenced by xlogpb_dump_stat().
void logpb_dump_log_page_area | ( | THREAD_ENTRY * | thread_p, |
LOG_PAGE * | log_pgptr, | ||
int | offset, | ||
int | length | ||
) |
Definition at line 3099 of file log_page_buffer.c.
References log_page::area, assert, log_hdrpage::checksum, log_page::hdr, i, LOGAREA_SIZE, log_hdrpage::logical_pageid, logpb_log, logpb_Logging, NULL, and ONE_K.
Referenced by logpb_flush_all_append_pages().
|
static |
Definition at line 1237 of file log_page_buffer.c.
References log_page::area, log_buffer::dirty, log_page::hdr, i, LOGAREA_SIZE, log_hdrpage::logical_pageid, log_buffer::logpage, LOGPB_FIND_BUFPTR, NULL_PAGEID, log_pb_global_data::num_buffers, log_hdrpage::offset, log_buffer::pageid, and log_buffer::phy_pageid.
Referenced by logpb_dump().
|
static |
Definition at line 10966 of file log_page_buffer.c.
References prm_get_bool_value(), prm_get_integer_value(), PRM_ID_LOG_ASYNC_COMMIT, and PRM_ID_LOG_GROUP_COMMIT_INTERVAL_MSECS.
Referenced by xlogpb_dump_stat().
|
static |
Definition at line 10986 of file log_page_buffer.c.
References log_logging_stat::async_commit_request_count, log_logging_stat::commit_count, log_logging_stat::direct_flush_count, log_logging_stat::flushall_append_pages_call_count, log_logging_stat::gc_commit_request_count, log_logging_stat::gc_flush_count, log_logging_stat::gc_total_wait_time, log_logging_stat::log_buffer_flush_count_by_replacement, log_logging_stat::log_buffer_full_count, and log_logging_stat::total_append_page_count.
Referenced by xlogpb_dump_stat().
|
static |
Definition at line 1201 of file log_page_buffer.c.
References log_global::flush_info, i, log_Gl, logpb_get_log_buffer(), log_flush_info::num_toflush, log_buffer::pageid, and log_flush_info::toflush.
Referenced by logpb_dump().
|
static |
Definition at line 4418 of file log_page_buffer.c.
References log_global::append, log_header::append_lsa, assert, assert_release, log_rec_header::forw_lsa, log_global::hdr, LOG_APPEND_ADVANCE_WHEN_DOESNOT_FIT, LOG_APPEND_ALIGN, LOG_CS_OWN_WRITE_MODE(), LOG_DONT_SET_DIRTY, log_Gl, log_append_info::log_pgptr, LOGPB_APPENDREC_IN_PROGRESS, LOGPB_APPENDREC_PARTIAL_ENDED, LOGPB_APPENDREC_PARTIAL_FLUSHED_END_OF_LOG, LOGPB_APPENDREC_PARTIAL_FLUSHED_ORIGINAL, LOGPB_APPENDREC_SUCCESS, logpb_flush_all_append_pages(), logpb_set_dirty(), LSA_EQ(), log_pb_global_data::partial_append, log_append_info::prev_lsa, and logpb_partial_append::status.
Referenced by logpb_append_next_record().
bool logpb_exist_log | ( | THREAD_ENTRY * | thread_p, |
const char * | db_fullname, | ||
const char * | logpath, | ||
const char * | prefix_logname | ||
) |
Definition at line 6641 of file log_page_buffer.c.
References fileio_is_volume_exist(), log_Name_active, logpb_initialize_log_names(), logpb_is_pool_initialized(), and NO_ERROR.
Referenced by boot_remove_all_volumes().
void logpb_fatal_error | ( | THREAD_ENTRY * | thread_p, |
bool | log_exit, | ||
const char * | file_name, | ||
const int | lineno, | ||
const char * | fmt, | ||
... | |||
) |
Definition at line 10428 of file log_page_buffer.c.
References logpb_fatal_error_internal().
Referenced by heap_get_visible_version_from_log(), log_2pc_commit_first_phase(), log_2pc_expand_ack_list(), log_2pc_read_prepare(), log_2pc_recovery_analysis_info(), log_2pc_recovery_start(), log_complete_for_2pc(), log_do_postpone(), log_find_end_log(), log_get_next_nested_top(), log_get_undo_record(), log_initialize_internal(), log_recovery(), log_recovery_abort_atomic_sysop(), log_recovery_abort_interrupted_sysop(), log_recovery_analysis(), log_recovery_find_first_postpone(), log_recovery_redo(), log_recovery_resetlog(), log_recovery_undo(), log_rollback(), log_rollback_record(), log_run_postpone_op(), 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_dummy_head_postpone(), log_rv_analysis_end_checkpoint(), log_rv_analysis_postpone(), log_rv_analysis_run_postpone(), log_rv_analysis_save_point(), log_rv_analysis_sysop_end(), log_rv_analysis_sysop_start_postpone(), log_rv_analysis_undo_redo(), log_rv_analysis_will_commit(), log_rv_redo_record(), log_rv_undo_record(), logpb_append_next_record(), logpb_archive_active_log(), logpb_fetch_from_archive(), logpb_fetch_header_with_buffer(), logpb_flush_all_append_pages(), logpb_flush_header(), logpb_flush_page(), logpb_initialize_header(), logpb_initialize_log_names(), logpb_initialize_pool(), logpb_next_append_page(), logpb_restore(), logpb_start_append(), logpb_write_page_to_disk(), logtb_define_trantable_log_latch(), logtb_initialize_system_tdes(), logtb_rv_find_allocate_tran_index(), vacuum_fetch_log_page(), vacuum_process_log_block(), vacuum_process_log_record(), vacuum_read_log_aligned(), vacuum_recover_lost_block_data(), and vacuum_worker_allocate_resources().
void logpb_fatal_error_exit_immediately_wo_flush | ( | THREAD_ENTRY * | thread_p, |
const char * | file_name, | ||
const int | lineno, | ||
const char * | fmt, | ||
... | |||
) |
Definition at line 10439 of file log_page_buffer.c.
References logpb_fatal_error_internal().
Referenced by spage_compact().
|
static |
Definition at line 10450 of file log_page_buffer.c.
References log_global::append, boot_donot_shutdown_client_at_exit(), BOOT_SERVER_DOWN, db_Connect_status, DB_CONNECTION_STATUS_NOT_CONNECTED, ER_FATAL_ERROR_SEVERITY, er_get_msglog_filename(), ER_LOG_FATAL_ERROR, er_msg(), er_set(), fileio_backup_volume(), fileio_make_log_archive_name(), fileio_synchronize_all(), log_append_info::get_nxio_lsa(), i, log_Archive_path, LOG_DBLOG_ARCHIVE_VOLID, log_Gl, log_append_info::log_pgptr, log_Prefix, LSA_COPY(), NO_ERROR, NULL, NULL_TRAN_INDEX, log_lsa::pageid, pgbuf_flush_checkpoint(), log_append_info::prev_lsa, tran_cache_tran_settings(), and TRAN_DEFAULT_ISOLATION_LEVEL.
Referenced by logpb_fatal_error(), and logpb_fatal_error_exit_immediately_wo_flush().
LOG_PAGE* logpb_fetch_from_archive | ( | THREAD_ENTRY * | thread_p, |
LOG_PAGEID | pageid, | ||
LOG_PAGE * | log_pgptr, | ||
int * | ret_arv_num, | ||
LOG_ARV_HEADER * | ret_arv_hdr, | ||
bool | is_fatal | ||
) |
Definition at line 5151 of file log_page_buffer.c.
References log_global::append, log_global::archive, log_page::area, ARG_FILE_LINE, log_arv_header::arv_num, assert, ASSERT_ERROR, log_header::db_creation, log_arv_header::db_creation, difftime64, ER_FAILED, ER_FATAL_ERROR_SEVERITY, ER_LOG_DOESNT_CORRESPOND_TO_DATABASE, ER_LOG_NOTIN_ARCHIVE, ER_LOG_PAGE_CORRUPTED, ER_LOG_READ, er_msg(), er_set(), ER_WARNING_SEVERITY, fileio_dismount(), fileio_get_volume_label_by_fd(), fileio_is_volume_exist(), fileio_make_log_archive_name(), fileio_mount(), fileio_read(), log_arv_header::fpageid, log_archives::hdr, log_page::hdr, log_global::hdr, if(), IO_MAX_PAGE_SIZE, LOG_ARCHIVE_CS_ENTER, LOG_ARCHIVE_CS_EXIT, log_Archive_path, LOG_CS_OWN(), log_Db_fullname, LOG_DBLOG_ARCHIVE_VOLID, log_default_input_for_archive_log_location, log_Gl, log_is_in_crash_recovery(), LOG_PAGESIZE, log_Prefix, LOG_RESTARTED, log_hdrpage::logical_pageid, logpb_debug_check_log_page(), logpb_fatal_error(), logpb_get_guess_archive_num(), logpb_get_tde_algorithm(), logpb_is_archive_available(), logpb_log, logpb_set_unavailable_archive(), MAX_ALIGNMENT, MSGCAT_CATALOG_CUBRID, MSGCAT_LOG_INPUT_RANGE_ERROR, MSGCAT_LOG_LOGARCHIVE_NEEDED, MSGCAT_LOG_NEWLOCATION, MSGCAT_LOG_STARTS, msgcat_message(), MSGCAT_SET_LOG, NO_ERROR, log_arv_header::npages, NULL, NULL_PAGEID, NULL_VOLDES, log_header::nxarv_num, PEEK, perfmon_inc_stat(), log_buffer::phy_pageid, prm_get_bool_value(), PRM_ID_LOG_TRACE_DEBUG, PSTAT_LOG_NUM_IOREADS, PTR_ALIGN, log_global::rcv_phase, TDE_ALGORITHM_NONE, tde_decrypt_log_page(), log_archives::vdes, and log_append_info::vdes.
Referenced by logpb_archive_active_log(), logpb_checkpoint(), logpb_get_archive_number(), logpb_read_page_from_file(), and logwr_log_ha_filestat_to_string().
void logpb_fetch_header | ( | THREAD_ENTRY * | thread_p, |
LOG_HEADER * | hdr | ||
) |
Definition at line 1440 of file log_page_buffer.c.
References log_header::append_lsa, assert, log_global::hdr, LOG_CS_OWN_WRITE_MODE(), log_Gl, LOG_RESET_APPEND_LSA(), log_global::loghdr_pgptr, logpb_fetch_header_with_buffer(), and NULL.
Referenced by log_initialize_internal().
|
static |
Definition at line 1501 of file log_page_buffer.c.
References log_global::append, log_page::area, ARG_FILE_LINE, assert, ER_ERROR_SEVERITY, ER_FAILED, ER_FATAL_ERROR_SEVERITY, ER_LOG_PAGE_CORRUPTED, ER_LOG_READ, er_set(), error(), fileio_is_volume_exist(), fileio_mount(), fileio_read(), log_page::hdr, LOG_CS_OWN_WRITE_MODE(), LOG_DBLOG_ACTIVE_VOLID, log_Gl, log_Name_active, LOG_PAGESIZE, LOG_RESTARTED, log_hdrpage::logical_pageid, logpb_debug_check_log_page(), LOGPB_HEADER_PAGE_ID, logpb_initialize_log_names(), logpb_log, logpb_to_physical_pageid(), NO_ERROR, NULL, NULL_OFFSET, NULL_VOLDES, log_hdrpage::offset, log_buffer::phy_pageid, log_global::rcv_phase, and log_append_info::vdes.
Referenced by logpb_find_header_parameters().
void logpb_fetch_header_with_buffer | ( | THREAD_ENTRY * | thread_p, |
LOG_HEADER * | hdr, | ||
LOG_PAGE * | log_pgptr | ||
) |
Definition at line 1463 of file log_page_buffer.c.
References log_page::area, ARG_FILE_LINE, assert, log_page::hdr, LOG_CS_OWN_WRITE_MODE(), LOG_CS_SAFE_READER, LOG_PAGESIZE, log_hdrpage::logical_pageid, logpb_fatal_error(), logpb_fetch_page(), LOGPB_HEADER_PAGE_ID, logpb_initialize_header(), NO_ERROR, NULL, NULL_OFFSET, log_lsa::offset, log_hdrpage::offset, and log_lsa::pageid.
Referenced by logpb_delete(), logpb_fetch_header(), and logpb_remove_all_in_log_path().
int logpb_fetch_page | ( | THREAD_ENTRY * | thread_p, |
const LOG_LSA * | req_lsa, | ||
LOG_CS_ACCESS_MODE | access_mode, | ||
LOG_PAGE * | log_pgptr | ||
) |
Definition at line 1724 of file log_page_buffer.c.
References log_global::append, log_header::append_lsa, assert, ASSERT_ERROR, ER_FAILED, log_global::hdr, LOG_CS_ENTER(), LOG_CS_EXIT(), log_Gl, logpb_copy_page(), logpb_log, logpb_prior_lsa_append_all_list(), LSA_COPY(), LSA_LE(), NO_ERROR, NULL, NULL_PAGEID, log_lsa::pageid, log_append_info::prev_lsa, and rv.
Referenced by heap_get_visible_version_from_log(), log_2pc_recovery_analysis_info(), log_do_postpone(), log_find_end_log(), log_get_next_nested_top(), log_get_savepoint_lsa(), log_is_page_of_record_broken(), log_read_sysop_start_postpone(), log_recovery_abort_atomic_sysop(), log_recovery_abort_interrupted_sysop(), log_recovery_analysis(), log_recovery_find_first_postpone(), log_recovery_redo(), log_recovery_resetlog(), log_recovery_undo(), log_rollback(), log_startof_nxrec(), logpb_fetch_header_with_buffer(), logpb_write_toflush_pages_to_archive(), vacuum_fetch_log_page(), vacuum_log_prefetch_vacuum_block(), vacuum_recover_lost_block_data(), and xlog_dump().
int logpb_fetch_start_append_page | ( | THREAD_ENTRY * | thread_p | ) |
Definition at line 2475 of file log_page_buffer.c.
References log_global::append, log_header::append_lsa, assert, ER_FAILED, log_global::flush_info, log_global::hdr, LOG_CS_OWN_WRITE_MODE(), log_Gl, log_append_info::log_pgptr, logpb_flush_pages_direct(), logpb_invalid_all_append_pages(), logpb_locate_page(), logpb_log, log_flush_info::max_toflush, NEW_PAGE, NO_ERROR, NULL, log_flush_info::num_toflush, log_lsa::offset, OLD_PAGE, log_lsa::pageid, pthread_mutex_lock, pthread_mutex_unlock, rv, log_append_info::set_nxio_lsa(), and log_flush_info::toflush.
Referenced by log_create_internal(), log_initialize_internal(), log_recovery(), log_recovery_resetlog(), logpb_find_header_parameters(), and logpb_rename_all_volumes_files().
LOG_PAGE* logpb_fetch_start_append_page_new | ( | THREAD_ENTRY * | thread_p | ) |
Definition at line 2552 of file log_page_buffer.c.
References log_global::append, log_header::append_lsa, assert, log_global::hdr, LOG_CS_OWN_WRITE_MODE(), log_Gl, log_append_info::log_pgptr, logpb_locate_page(), logpb_log, NEW_PAGE, NULL, log_lsa::pageid, and log_append_info::set_nxio_lsa().
|
static |
Definition at line 10733 of file log_page_buffer.c.
References log_global::flush_info, free_and_init, log_Gl, log_flush_info::max_toflush, NULL, log_flush_info::num_toflush, pthread_mutex_destroy, pthread_mutex_lock, pthread_mutex_unlock, rv, and log_flush_info::toflush.
Referenced by logpb_finalize_pool(), and logpb_initialize_flush_info().
void logpb_finalize_pool | ( | THREAD_ENTRY * | thread_p | ) |
Definition at line 667 of file log_page_buffer.c.
References log_global::append, ARG_FILE_LINE, assert, log_pb_global_data::buffers, er_log_debug, free_and_init, log_group_commit_info::gc_cond, log_group_commit_info::gc_mutex, log_global::group_commit_info, log_pb_global_data::header_page, log_append_final_zip(), LOG_CS_OWN_WRITE_MODE(), log_Gl, log_append_info::log_pgptr, LOG_RESET_PREV_LSA(), logpb_dump(), logpb_finalize_flush_info(), logpb_finalize_writer_info(), logpb_Initialized, logpb_is_any_dirty(), LSA_SET_NULL(), NULL, NULL_LSA, log_pb_global_data::num_buffers, log_pb_global_data::pages_area, log_append_info::prev_lsa, pthread_mutex_destroy, and log_append_info::set_nxio_lsa().
Referenced by log_create_internal(), log_final(), log_initialize_internal(), log_rv_outside_noop_redo(), logpb_delete(), logpb_find_header_parameters(), logpb_initialize_pool(), logpb_remove_all_in_log_path(), logpb_rename_all_volumes_files(), and logtb_define_trantable().
|
static |
Definition at line 10763 of file log_page_buffer.c.
References logwr_info::flush_end_cond, logwr_info::flush_end_mutex, logwr_info::flush_start_cond, logwr_info::flush_start_mutex, logwr_info::flush_wait_cond, logwr_info::flush_wait_mutex, logwr_info::is_init, log_Gl, logwr_entry::next, NULL, pthread_mutex_destroy, pthread_mutex_lock, pthread_mutex_unlock, rv, logwr_info::wr_list_mutex, log_global::writer_info, and logwr_info::writer_list.
Referenced by logpb_finalize_pool().
PGLENGTH logpb_find_header_parameters | ( | THREAD_ENTRY * | thread_p, |
const bool | force_read_log_header, | ||
const char * | db_fullname, | ||
const char * | logpath, | ||
const char * | prefix_logname, | ||
PGLENGTH * | io_page_size, | ||
PGLENGTH * | log_page_size, | ||
INT64 * | creation_time, | ||
float * | db_compatibility, | ||
int * | db_charset | ||
) |
Definition at line 2342 of file log_page_buffer.c.
References log_global::append, trantable::area, ARG_FILE_LINE, assert, log_header::db_charset, log_header::db_compatibility, log_header::db_creation, log_header::db_iopagesize, log_header::db_logpagesize, db_set_page_size(), ER_ERROR_SEVERITY, ER_LOG_INCOMPATIBLE_DATABASE, ER_LOG_INCOMPATIBLE_PREFIX_NAME, ER_NOTIFICATION_SEVERITY, er_set(), error(), log_global::hdr, if(), IO_MAX_PAGE_SIZE, IO_PAGESIZE, LOG_CS_OWN_WRITE_MODE(), log_Gl, log_Name_active, LOG_PAGESIZE, log_append_info::log_pgptr, logpb_fetch_header_from_active_log(), logpb_fetch_start_append_page(), logpb_finalize_pool(), logpb_initialize_pool(), logtb_define_trantable_log_latch(), MAX_ALIGNMENT, NO_ERROR, NULL, trantable::num_total_indices, log_header::prefix_name, PTR_ALIGN, REL_FULLY_COMPATIBLE, rel_get_disk_compatible(), rel_name(), rel_release_string(), and log_global::trantable.
Referenced by log_get_charset_from_header_page(), log_get_io_page_size(), and logpb_restore().
int logpb_find_oldest_available_arv_num | ( | THREAD_ENTRY * | thread_p | ) |
Definition at line 11183 of file log_page_buffer.c.
References assert, fileio_is_volume_exist(), fileio_make_log_archive_name(), log_global::hdr, log_Archive_path, LOG_CS_OWN(), log_Gl, log_Prefix, log_header::nxarv_num, and thread_get_thread_entry_info().
Referenced by logpb_find_oldest_available_page_id().
LOG_PAGEID logpb_find_oldest_available_page_id | ( | THREAD_ENTRY * | thread_p | ) |
Definition at line 11102 of file log_page_buffer.c.
References log_global::append, log_global::archive, log_page::area, ARG_FILE_LINE, assert, log_header::db_creation, log_arv_header::db_creation, difftime64, ER_ERROR_SEVERITY, ER_LOG_DOESNT_CORRESPOND_TO_DATABASE, ER_LOG_READ, er_set(), fileio_dismount(), fileio_make_log_archive_name(), fileio_mount(), fileio_read(), log_arv_header::fpageid, log_global::hdr, if(), IO_MAX_PAGE_SIZE, LOG_ARCHIVE_CS_ENTER, LOG_ARCHIVE_CS_EXIT, log_Archive_path, LOG_CS_OWN(), log_Db_fullname, LOG_DBLOG_ARCHIVE_VOLID, log_Gl, LOG_PAGESIZE, log_Prefix, LOG_RESTARTED, logpb_debug_check_log_page(), logpb_dismount_log_archive(), logpb_find_oldest_available_arv_num(), MAX_ALIGNMENT, NULL, NULL_PAGEID, NULL_VOLDES, log_header::nxarv_pageid, PTR_ALIGN, log_global::rcv_phase, thread_get_thread_entry_info(), log_archives::vdes, and log_append_info::vdes.
Referenced by logwr_log_ha_filestat_to_string().
bool logpb_find_volume_info_exist | ( | void | ) |
Definition at line 4632 of file log_page_buffer.c.
References fileio_is_volume_exist(), and log_Name_volinfo.
Referenced by boot_mount().
|
static |
Definition at line 3193 of file log_page_buffer.c.
References log_global::append, log_header::append_lsa, log_page::area, ARG_FILE_LINE, assert, assert_release, log_rec_header::back_lsa, log_pb_global_data::buffers, log_hdrpage::checksum, clientids::client_type, log_logging_stat::commit_count, DB_CLIENT_TYPE_UNKNOWN, log_buffer::dirty, envvar_get(), log_header::eof_lsa, ER_FAILED, er_log_debug, error(), event_log_log_flush_thr_wait(), FILEIO_SYNC_ONLY, fileio_synchronize(), logwr_info::flush_completed, logwr_info::flush_end_cond, logwr_info::flush_end_mutex, log_global::flush_info, logwr_info::flush_start_mutex, logwr_info::flush_wait_cond, logwr_info::flush_wait_mutex, log_logging_stat::flushall_append_pages_call_count, log_rec_header::forw_lsa, log_append_info::get_nxio_lsa(), HA_DISABLED, log_page::hdr, log_global::hdr, i, log_logging_stat::last_commit_count_in_flush_pages, log_logging_stat::last_flush_count_by_trans, log_logging_stat::last_flush_sec_by_trans, logwr_info::last_writer_client_info, logwr_info::last_writer_elapsed_time, log_logging_stat::log_buffer_full_count, LOG_CS_DEMOTE(), LOG_CS_OWN_WRITE_MODE(), LOG_CS_PROMOTE(), LOG_END_OF_LOG, log_get_clock_msec(), log_Gl, log_Name_active, logpb_partial_append::log_page_record_header, LOG_PAGESIZE, log_append_info::log_pgptr, LOG_READ_NEXT_TRANID, log_hdrpage::logical_pageid, log_buffer::logpage, LOGPB_APPENDREC_IN_PROGRESS, LOGPB_APPENDREC_PARTIAL_ENDED, LOGPB_APPENDREC_PARTIAL_FLUSHED_END_OF_LOG, LOGPB_APPENDREC_PARTIAL_FLUSHED_ORIGINAL, LOGPB_APPENDREC_SUCCESS, logpb_debug_check_log_page(), logpb_dump(), logpb_dump_log_page_area(), logpb_fatal_error(), logpb_get_log_buffer(), logpb_get_log_buffer_index(), logpb_get_page_id(), logpb_is_any_dirty(), logpb_is_dirty(), logpb_log, logpb_Logging, logpb_start_append(), logpb_write_page_to_disk(), logpb_write_toflush_pages_to_archive(), logpb_writev_append_pages(), LOGWR_STATUS_FETCH, LOGWR_STATUS_WAIT, LSA_COPY(), LSA_SET_NULL(), log_flush_info::max_toflush, logwr_entry::next, NO_ERROR, NULL, NULL_PAGEID, NULL_VOLDES, log_flush_info::num_toflush, log_lsa::offset, logpb_partial_append::original_record_header, log_lsa::pageid, log_buffer::pageid, log_pb_global_data::partial_append, perfmon_add_stat(), log_buffer::phy_pageid, log_append_info::prev_lsa, log_rec_header::prev_tranlsa, prm_get_bool_value(), prm_get_integer_value(), PRM_ID_LOG_BACKGROUND_ARCHIVING, PRM_ID_LOG_TRACE_DEBUG, PRM_ID_LOG_TRACE_FLUSH_TIME_MSECS, PRM_ID_SUPPRESS_FSYNC, PSTAT_LOG_NUM_IOWRITES, pthread_mutex_lock, pthread_mutex_unlock, logpb_partial_append::record_header_p, rv, log_append_info::set_nxio_lsa(), logwr_info::skip_flush, logwr_entry::status, logpb_partial_append::status, thread_lock_entry(), THREAD_LOGWR_RESUMED, THREAD_LOGWR_SUSPENDED, logwr_entry::thread_p, THREAD_RESUME_DUE_TO_INTERRUPT, thread_unlock_entry(), thread_wakeup_already_had_mutex(), log_flush_info::toflush, log_logging_stat::total_commit_count_in_flush_pages, log_logging_stat::total_flush_count_by_trans, log_logging_stat::total_flush_sec_by_trans, log_logging_stat::total_sync_count, logwr_info::trace_last_writer, log_rec_header::trid, TT_DAEMON, TT_VACUUM_MASTER, TT_VACUUM_WORKER, log_rec_header::type, log_append_info::vdes, logwr_info::wr_list_mutex, log_global::writer_info, and logwr_info::writer_list.
Referenced by logpb_append_next_record(), logpb_archive_active_log(), logpb_end_append(), logpb_flush_pages_direct(), and logpb_next_append_page().
void logpb_flush_header | ( | THREAD_ENTRY * | thread_p | ) |
Definition at line 1661 of file log_page_buffer.c.
References log_page::area, ARG_FILE_LINE, assert, ER_ERROR_SEVERITY, er_log_debug, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), log_hdrpage::flags, log_logging_stat::flush_hdr_call_count, log_page::hdr, log_global::hdr, log_logging_stat::last_flush_hdr_sec_by_LFT, LOG_CS_OWN_WRITE_MODE(), log_Gl, LOG_PAGE_INIT_VALUE, LOG_PAGESIZE, log_global::loghdr_pgptr, log_hdrpage::logical_pageid, logpb_fatal_error(), LOGPB_HEADER_PAGE_ID, logpb_write_page_to_disk(), NULL, NULL_OFFSET, log_hdrpage::offset, and log_logging_stat::total_flush_hdr_sec_by_LFT.
Referenced by log_commit(), log_final(), log_initialize_internal(), log_recovery(), log_recovery_notpartof_archives(), log_recovery_redo(), log_recovery_resetlog(), log_recovery_undo(), logpb_archive_active_log(), logpb_backup(), logpb_checkpoint(), logpb_force_flush_header_and_pages(), logpb_next_append_page(), logpb_remove_archive_logs(), logpb_remove_archive_logs_exceed_limit(), logpb_rename_all_volumes_files(), and xlog_dump().
void logpb_flush_log_for_wal | ( | THREAD_ENTRY * | thread_p, |
const LOG_LSA * | lsa_ptr | ||
) |
Definition at line 4120 of file log_page_buffer.c.
References ARG_FILE_LINE, assert, er_log_debug, LOG_CS_ENTER(), LOG_CS_EXIT(), log_Gl, logpb_dump(), logpb_flush_pages_direct(), logpb_need_wal(), LSA_EQ(), LSA_ISNULL(), perfmon_inc_stat(), PSTAT_LOG_NUM_WALS, and log_global::rcv_phase_lsa.
Referenced by pgbuf_bcb_flush_with_wal(), pgbuf_flush_checkpoint(), pgbuf_flush_page_and_neighbors_fb(), and pgbuf_flush_victim_candidates().
int logpb_flush_page | ( | THREAD_ENTRY * | thread_p, |
LOG_PAGE * | log_pgptr | ||
) |
Definition at line 1042 of file log_page_buffer.c.
References ARG_FILE_LINE, assert, log_buffer::dirty, ER_FAILED, ER_FATAL_ERROR_SEVERITY, ER_LOG_FLUSHING_UNUPDATABLE, ER_LOG_PAGE_CORRUPTED, er_set(), ER_WARNING_SEVERITY, error(), LOG_CS_OWN_WRITE_MODE(), logpb_fatal_error(), logpb_get_log_buffer(), LOGPB_HEADER_PAGE_ID, LOGPB_LAST_ACTIVE_PAGE_ID, logpb_log, LOGPB_NEXT_ARCHIVE_PAGE_ID, logpb_to_physical_pageid(), logpb_write_page_to_disk(), NO_ERROR, NULL_PAGEID, log_buffer::pageid, and log_buffer::phy_pageid.
Referenced by log_create_internal(), and log_recovery_resetlog().
void logpb_flush_pages | ( | THREAD_ENTRY * | thread_p, |
LOG_LSA * | flush_lsa | ||
) |
Definition at line 3938 of file log_page_buffer.c.
References log_global::append, assert, log_logging_stat::async_commit_request_count, BO_IS_SERVER_RESTARTED, log_logging_stat::gc_commit_request_count, log_group_commit_info::gc_cond, log_group_commit_info::gc_mutex, log_append_info::get_nxio_lsa(), log_global::group_commit_info, LOG_CS_ENTER(), LOG_CS_EXIT(), LOG_CS_OWN_WRITE_MODE(), log_Gl, LOG_IS_GROUP_COMMIT_ACTIVE, log_is_log_flush_daemon_available(), log_wakeup_log_flush_daemon(), logpb_flush_pages_direct(), LSA_GE(), LSA_ISNULL(), LSA_LT(), NULL, pgbuf_has_perm_pages_fixed(), prm_get_bool_value(), PRM_ID_LOG_ASYNC_COMMIT, pthread_mutex_lock, pthread_mutex_unlock, rv, timeval_add_msec(), and timeval_to_timespec().
Referenced by log_2pc_append_decision(), log_2pc_append_start(), log_2pc_prepare_global_tran(), log_append_commit_postpone(), log_append_ha_server_state(), log_change_tran_as_completed(), and log_complete_for_2pc().
void logpb_flush_pages_direct | ( | THREAD_ENTRY * | thread_p | ) |
Definition at line 3910 of file log_page_buffer.c.
References ARG_FILE_LINE, assert, log_logging_stat::direct_flush_count, er_log_debug, LOG_CS_OWN_WRITE_MODE(), logpb_flush_all_append_pages(), and logpb_prior_lsa_append_all_list().
Referenced by fi_handler_random_exit(), log_commit(), log_create_internal(), log_final(), log_is_log_flush_daemon_available(), log_recovery(), log_recovery_redo(), log_recovery_resetlog(), log_recovery_undo(), log_recreate(), log_rv_outside_noop_redo(), logpb_backup_for_volume(), logpb_checkpoint(), logpb_copy_database(), logpb_copy_volume(), logpb_fetch_start_append_page(), logpb_flush_log_for_wal(), logpb_flush_pages(), logpb_force_flush_header_and_pages(), logpb_force_flush_pages(), logpb_invalid_all_append_pages(), logpb_invalidate_pool(), logpb_rename_all_volumes_files(), and xlog_dump().
void logpb_force_flush_header_and_pages | ( | THREAD_ENTRY * | thread_p | ) |
Definition at line 4062 of file log_page_buffer.c.
References LOG_CS_ENTER(), LOG_CS_EXIT(), logpb_flush_header(), and logpb_flush_pages_direct().
Referenced by boot_after_copydb().
void logpb_force_flush_pages | ( | THREAD_ENTRY * | thread_p | ) |
Definition at line 4054 of file log_page_buffer.c.
References LOG_CS_ENTER(), LOG_CS_EXIT(), and logpb_flush_pages_direct().
Referenced by boot_create_all_volumes(), css_init(), disk_format(), disk_set_link(), disk_volume_expand(), heap_create_internal(), pgbuf_flush_victim_candidates(), xbtree_load_index(), xbtree_load_online_index(), and xvacuum().
|
static |
Definition at line 6261 of file log_page_buffer.c.
References arv_page_info::arv_num, ARV_PAGE_INFO_TABLE_SIZE, assert, cubregex::count(), arv_page_info::end_pageid, i, ARV_LOG_PAGE_INFO_TABLE::item_count, LOG_CS_OWN(), ARV_LOG_PAGE_INFO_TABLE::page_info, ARV_LOG_PAGE_INFO_TABLE::rear, arv_page_info::start_pageid, and thread_get_thread_entry_info().
Referenced by logpb_get_guess_archive_num().
int logpb_get_archive_number | ( | THREAD_ENTRY * | thread_p, |
LOG_PAGEID | pageid | ||
) |
Definition at line 4988 of file log_page_buffer.c.
References logpb_fetch_from_archive(), and NULL.
Referenced by log_recovery_resetlog(), logpb_backup(), logpb_remove_archive_logs(), logpb_remove_archive_logs_exceed_limit(), and xvacuum_dump().
|
static |
Definition at line 4521 of file log_page_buffer.c.
References log_global::append, assert, log_global::hdr, LOG_CS_OWN(), log_Gl, LOG_MAX_LOGINFO_LINE, log_Name_info, LOGPB_ACTIVE_NPAGES, logpb_get_archive_num_from_info_table(), MSGCAT_CATALOG_CUBRID, MSGCAT_LOG_LOGINFO_KEYWORD_ARCHIVE, msgcat_message(), MSGCAT_SET_LOG, NULL, NULL_VOLDES, log_header::nxarv_num, TIME_SIZE_OF_DUMP_LOG_INFO, and log_append_info::vdes.
Referenced by logpb_fetch_from_archive().
STATIC_INLINE LOG_BUFFER * logpb_get_log_buffer | ( | LOG_PAGE * | log_pg | ) |
Definition at line 389 of file log_page_buffer.c.
References assert, log_pb_global_data::buffers, log_pb_global_data::header_buffer, log_pb_global_data::header_page, LOG_PAGESIZE, log_pb_global_data::num_buffers, and log_pb_global_data::pages_area.
Referenced by logpb_dump_to_flush_page(), logpb_flush_all_append_pages(), logpb_flush_page(), logpb_get_page_id(), logpb_is_dirty(), logpb_set_dirty(), logpb_write_toflush_pages_to_archive(), and logpb_writev_append_pages().
STATIC_INLINE int logpb_get_log_buffer_index | ( | LOG_PAGEID | log_pageid | ) |
Definition at line 376 of file log_page_buffer.c.
References log_pb_global_data::num_buffers, and STATIC_INLINE.
Referenced by logpb_copy_page(), logpb_flush_all_append_pages(), and logpb_locate_page().
size_t logpb_get_memsize | ( | ) |
Definition at line 11374 of file log_page_buffer.c.
References LOG_PAGESIZE, and log_pb_global_data::num_buffers.
Referenced by prior_lsa_next_record_internal().
LOG_PAGEID logpb_get_page_id | ( | LOG_PAGE * | log_pgptr | ) |
Definition at line 1111 of file log_page_buffer.c.
References logpb_get_log_buffer(), and log_buffer::pageid.
Referenced by logpb_dump_information(), and logpb_flush_all_append_pages().
TDE_ALGORITHM logpb_get_tde_algorithm | ( | const LOG_PAGE * | log_pgptr | ) |
Definition at line 11386 of file log_page_buffer.c.
References assert, log_hdrpage::flags, log_page::hdr, LOG_HDRPAGE_FLAG_ENCRYPTED_AES, LOG_HDRPAGE_FLAG_ENCRYPTED_ARIA, TDE_ALGORITHM_AES, TDE_ALGORITHM_ARIA, and TDE_ALGORITHM_NONE.
Referenced by logpb_fetch_from_archive(), logpb_read_page_from_active_log(), logpb_read_page_from_file(), logpb_start_append(), logpb_write_page_to_disk(), logpb_write_toflush_pages_to_archive(), and logpb_writev_append_pages().
void logpb_initialize_arv_page_info_table | ( | void | ) |
Definition at line 10808 of file log_page_buffer.c.
References ARV_LOG_PAGE_INFO_TABLE::rear.
Referenced by log_initialize_internal().
|
static |
Definition at line 1270 of file log_page_buffer.c.
References log_header::bkinfo, FILEIO_BACKUP_UNDEFINED_LEVEL, i, log_hdr_bkup_level_info::io_baseln_time, log_hdr_bkup_level_info::io_bkuptime, log_hdr_bkup_level_info::io_numpages, and log_hdr_bkup_level_info::ndirty_pages_post_bkup.
Referenced by logpb_backup(), and logpb_initialize_header().
|
static |
Definition at line 10699 of file log_page_buffer.c.
References ARG_FILE_LINE, assert, ER_ERROR_SEVERITY, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), error(), log_global::flush_info, log_Gl, logpb_finalize_flush_info(), log_flush_info::max_toflush, NO_ERROR, NULL, log_pb_global_data::num_buffers, log_flush_info::num_toflush, pthread_mutex_init, and log_flush_info::toflush.
Referenced by logpb_initialize_pool().
int logpb_initialize_header | ( | THREAD_ENTRY * | thread_p, |
LOG_HEADER * | loghdr, | ||
const char * | prefix_logname, | ||
DKNPAGES | npages, | ||
INT64 * | db_creation | ||
) |
Definition at line 1308 of file log_page_buffer.c.
References log_header::append_lsa, ARG_FILE_LINE, assert, log_header::avg_nlocks, log_header::avg_ntrans, log_header::bkinfo, log_hdr_bkup_level_info::bkup_attime, log_header::bkup_level0_lsa, log_header::bkup_level1_lsa, log_header::bkup_level2_lsa, log_header::chkpt_lsa, CUBRID_MAGIC_LOG_ACTIVE, CUBRID_MAGIC_MAX_LENGTH, log_header::db_charset, log_header::db_compatibility, log_header::db_creation, log_header::db_iopagesize, log_header::db_logpagesize, log_header::db_release, log_header::eof_lsa, ER_FATAL_ERROR_SEVERITY, ER_LOG_COMPILATION_RELEASE, er_set(), FILEIO_BACKUP_UNDEFINED_LEVEL, log_header::fpageid, log_header::ha_file_status, log_header::ha_server_state, HA_SERVER_STATE_IDLE, log_header::has_logging_been_skipped, i, IO_PAGESIZE, log_header::is_shutdown, lang_charset(), log_header::last_arv_num_for_syscrashes, log_header::last_deleted_arv_num, LOG_CS_OWN_WRITE_MODE(), LOG_ESTIMATE_NACTIVE_TRANS, LOG_ESTIMATE_NOBJ_LOCKS, LOG_PAGESIZE, LOG_SYSTEM_TRANID, logpb_fatal_error(), logpb_initialize_backup_info(), logpb_vacuum_reset_log_header_cache(), LSA_COPY(), LSA_SET_NULL(), log_header::magic, log_header::mvcc_next_id, MVCCID_FIRST, log_header::next_trid, NO_ERROR, log_header::npages, NULL, log_header::nxarv_num, log_header::nxarv_pageid, log_header::nxarv_phy_pageid, log_lsa::offset, log_lsa::pageid, log_header::perm_status_obsolete, log_header::prefix_name, rel_disk_compatible(), REL_MAX_RELEASE_LENGTH, rel_release_string(), log_header::smallest_lsa_at_last_chkpt, strlen, strncpy_bufsize, and log_header::vacuum_last_blockid.
Referenced by log_create_internal(), log_initialize_internal(), logpb_copy_database(), and logpb_fetch_header_with_buffer().
|
static |
Definition at line 420 of file log_page_buffer.c.
References log_buffer::dirty, log_hdrpage::flags, log_page::hdr, log_hdrpage::logical_pageid, log_buffer::logpage, NULL_OFFSET, NULL_PAGEID, log_hdrpage::offset, log_buffer::pageid, and log_buffer::phy_pageid.
Referenced by logpb_initialize_pool(), and logpb_invalidate_pool().
int logpb_initialize_log_names | ( | THREAD_ENTRY * | thread_p, |
const char * | db_fullname, | ||
const char * | logpath, | ||
const char * | prefix_logname | ||
) |
Definition at line 6574 of file log_page_buffer.c.
References ARG_FILE_LINE, fileio_make_backup_volume_info_name(), fileio_make_log_active_name(), fileio_make_log_archive_temp_name(), fileio_make_log_info_name(), fileio_make_removed_log_archive_name(), fileio_make_volume_info_name(), log_Archive_path, log_Db_fullname, log_Name_active, log_Name_bg_archive, log_Name_bkupinfo, log_Name_info, log_Name_removed_archive, log_Name_volinfo, log_Path, log_Prefix, logpb_fatal_error(), logpb_verify_length(), NO_ERROR, and NULL.
Referenced by alterdbhost(), log_create_internal(), log_initialize_internal(), logpb_check_exist_any_volumes(), logpb_delete(), logpb_exist_log(), logpb_fetch_header_from_active_log(), logpb_remove_all_in_log_path(), and logpb_rename_all_volumes_files().
void logpb_initialize_logging_statistics | ( | void | ) |
Definition at line 10822 of file log_page_buffer.c.
Referenced by log_initialize_internal().
int logpb_initialize_pool | ( | THREAD_ENTRY * | thread_p | ) |
Definition at line 548 of file log_page_buffer.c.
References ARG_FILE_LINE, assert, logpb_partial_append::buffer_log_page, log_pb_global_data::buffers, ER_ERROR_SEVERITY, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), error(), logwr_info::flush_end_cond, logwr_info::flush_end_mutex, logwr_info::flush_start_cond, logwr_info::flush_start_mutex, logwr_info::flush_wait_cond, logwr_info::flush_wait_mutex, free_and_init, log_group_commit_info::gc_cond, log_group_commit_info::gc_mutex, log_global::group_commit_info, log_pb_global_data::header_buffer, log_pb_global_data::header_page, i, IO_MAX_PAGE_SIZE, logwr_info::is_init, log_append_init_zip(), LOG_CS_OWN_WRITE_MODE(), log_Gl, LOG_PAGE_INIT_VALUE, logpb_partial_append::log_page_record_header, LOG_PAGESIZE, LOGPB_APPENDREC_SUCCESS, logpb_fatal_error(), logpb_finalize_pool(), logpb_initialize_flush_info(), logpb_initialize_log_buffer(), logpb_Initialized, logpb_Logging, MAX_ALIGNMENT, NO_ERROR, NULL, log_pb_global_data::num_buffers, log_pb_global_data::pages_area, log_pb_global_data::partial_append, prm_get_bool_value(), prm_get_integer_value(), PRM_ID_LOG_NBUFFERS, PRM_ID_LOGPB_LOGGING_DEBUG, pthread_mutex_init, PTR_ALIGN, logpb_partial_append::status, logwr_info::wr_list_mutex, and log_global::writer_info.
Referenced by log_create_internal(), log_initialize_internal(), logpb_delete(), logpb_find_header_parameters(), logpb_remove_all_in_log_path(), and logpb_rename_all_volumes_files().
void logpb_invalid_all_append_pages | ( | THREAD_ENTRY * | thread_p | ) |
Definition at line 4079 of file log_page_buffer.c.
References log_global::append, assert, log_global::flush_info, LOG_CS_OWN_WRITE_MODE(), log_Gl, log_append_info::log_pgptr, logpb_flush_pages_direct(), logpb_log, NULL, log_flush_info::num_toflush, pthread_mutex_lock, pthread_mutex_unlock, rv, and log_flush_info::toflush.
Referenced by log_recovery_resetlog(), and logpb_fetch_start_append_page().
void logpb_invalidate_pool | ( | THREAD_ENTRY * | thread_p | ) |
Definition at line 735 of file log_page_buffer.c.
References assert, log_buffer::dirty, i, LOG_CS_OWN_WRITE_MODE(), log_buffer::logpage, LOGPB_FIND_BUFPTR, logpb_flush_pages_direct(), logpb_initialize_log_buffer(), logpb_Initialized, NULL_PAGEID, log_pb_global_data::num_buffers, and log_buffer::pageid.
Referenced by log_recovery_resetlog().
|
static |
Definition at line 976 of file log_page_buffer.c.
References assert, log_buffer::dirty, i, LOG_CS_OWN_WRITE_MODE(), LOGPB_FIND_BUFPTR, NULL_PAGEID, log_pb_global_data::num_buffers, log_buffer::pageid, and rv.
Referenced by logpb_finalize_pool(), and logpb_flush_all_append_pages().
|
static |
Definition at line 5112 of file log_page_buffer.c.
References log_global::archive, assert, log_global::hdr, i, LOG_ARCHIVE_CS_OWN_WRITE_MODE, LOG_CS_OWN(), log_Gl, log_archives::next_unav, NULL, log_header::nxarv_num, and log_archives::unav_archives.
Referenced by logpb_fetch_from_archive().
|
static |
Definition at line 953 of file log_page_buffer.c.
References assert, bool, log_buffer::dirty, LOG_CS_OWN_WRITE_MODE(), and logpb_get_log_buffer().
Referenced by logpb_flush_all_append_pages().
|
static |
Definition at line 1625 of file log_page_buffer.c.
References ARG_FILE_LINE, er_log_debug, fileio_get_base_file_name(), fileio_get_directory_path(), fileio_is_volume_exist(), fileio_make_log_archive_name(), logpb_peek_header_of_active_log_from_backup(), NO_ERROR, and log_header::nxarv_num.
Referenced by logpb_restore().
bool logpb_is_page_in_archive | ( | LOG_PAGEID | pageid | ) |
Definition at line 4957 of file log_page_buffer.c.
References LOGPB_IS_ARCHIVE_PAGE.
Referenced by log_do_postpone(), log_dump_record(), log_find_end_log(), log_recovery_analysis(), log_recovery_find_first_postpone(), log_recovery_redo(), log_rv_analysis_log_end(), log_startof_nxrec(), logpb_backup(), logpb_checkpoint(), logpb_is_smallest_lsa_in_archive(), logpb_read_page_from_file(), logpb_remove_archive_logs(), logpb_remove_archive_logs_exceed_limit(), logwr_log_ha_filestat_to_string(), xlog_dump(), and xvacuum_dump().
bool logpb_is_pool_initialized | ( | void | ) |
Definition at line 719 of file log_page_buffer.c.
References assert, LOG_CS_OWN_WRITE_MODE(), logpb_Initialized, and NULL.
Referenced by log_final(), log_rv_outside_noop_redo(), logpb_exist_log(), and logtb_define_trantable().
bool logpb_is_smallest_lsa_in_archive | ( | THREAD_ENTRY * | thread_p | ) |
Definition at line 4970 of file log_page_buffer.c.
References logpb_is_page_in_archive(), logtb_find_smallest_lsa(), LSA_ISNULL(), and log_lsa::pageid.
VACUUM_LOG_BLOCKID logpb_last_complete_blockid | ( | void | ) |
Definition at line 11305 of file log_page_buffer.c.
References log_global::append, assert, log_Gl, LSA_ISNULL(), log_lsa::pageid, log_append_info::prev_lsa, vacuum_get_log_blockid(), and VACUUM_NULL_LOG_BLOCKID.
Referenced by logpb_remove_archive_logs_exceed_limit(), vacuum_data_load_and_recover(), and vacuum_sa_reflect_last_blockid().
|
static |
Definition at line 800 of file log_page_buffer.c.
References log_page::area, ARG_FILE_LINE, assert, ASSERT_ALIGN, assert_release, log_pb_global_data::buffers, log_buffer::dirty, ER_FATAL_ERROR_SEVERITY, ER_LOG_PAGE_CORRUPTED, er_set(), log_hdrpage::flags, log_page::hdr, log_pb_global_data::header_buffer, LOG_CS_FORCE_USE, LOG_CS_OWN_WRITE_MODE(), LOG_PAGE_INIT_VALUE, LOG_PAGESIZE, log_hdrpage::logical_pageid, log_buffer::logpage, logpb_get_log_buffer_index(), LOGPB_HEADER_PAGE_ID, logpb_log, logpb_read_page_from_file(), logpb_to_physical_pageid(), logpb_write_page_to_disk(), MAX_ALIGNMENT, NEW_PAGE, NO_ERROR, NULL, NULL_OFFSET, NULL_PAGEID, log_pb_global_data::num_buffers, log_hdrpage::offset, OLD_PAGE, PAGE_LOG, log_buffer::pageid, PERF_HOLDER_LATCH_READ, PERF_PAGE_MODE_OLD_IN_BUFFER, PERF_PAGE_MODE_OLD_LOCK_WAIT, PERF_UNCONDITIONAL_FIX_WITH_WAIT, perfmon_inc_stat(), perfmon_is_perf_tracking(), log_buffer::phy_pageid, PSTAT_LOG_NUM_FETCHES, PSTAT_LOG_NUM_REPLACEMENTS, PSTAT_LOG_NUM_REPLACEMENTS_IOWRITES, tsc_elapsed_time_usec(), and tsc_getticks().
Referenced by logpb_create_page(), logpb_fetch_start_append_page(), and logpb_fetch_start_append_page_new().
Definition at line 11050 of file log_page_buffer.c.
References log_global::append, log_append_info::get_nxio_lsa(), log_Gl, and LSA_LE().
Referenced by dwb_flush_block(), logpb_flush_log_for_wal(), and pgbuf_flush_victim_candidates().
|
static |
Definition at line 2596 of file log_page_buffer.c.
References log_global::append, log_header::append_lsa, log_append_info::appending_page_tde_encrypted, ARG_FILE_LINE, assert, log_logging_stat::commit_count, er_log_debug, log_global::flush_info, log_header::fpageid, log_page::hdr, log_global::hdr, log_logging_stat::last_append_pageid, log_logging_stat::last_commit_count_while_using_a_page, LOG_CS_OWN_WRITE_MODE(), log_Gl, log_append_info::log_pgptr, LOG_SET_DIRTY, log_hdrpage::logical_pageid, LOGPB_ACTIVE_NPAGES, logpb_archive_active_log(), LOGPB_AT_NEXT_ARCHIVE_PAGE_ID, logpb_create_page(), logpb_fatal_error(), logpb_flush_all_append_pages(), logpb_flush_header(), LOGPB_IS_FIRST_PHYSICAL_PAGE, logpb_log, logpb_set_dirty(), logpb_set_tde_algorithm(), log_flush_info::max_toflush, NULL, log_flush_info::num_toflush, log_lsa::offset, log_lsa::pageid, prm_get_integer_value(), PRM_ID_TDE_DEFAULT_ALGORITHM, pthread_mutex_lock, pthread_mutex_unlock, rv, tde_get_algorithm_name(), log_flush_info::toflush, log_logging_stat::total_append_page_count, log_logging_stat::total_commit_count_while_using_a_page, and log_logging_stat::use_append_page_sec.
Referenced by logpb_append_crumbs(), and logpb_append_data().
|
static |
Definition at line 8991 of file log_page_buffer.c.
References ARG_FILE_LINE, ER_BO_CANNOT_CREATE_LINK, ER_ERROR_SEVERITY, ER_LOG_USER_FILE_INCORRECT_PRIMARY_VOLNAME, ER_LOG_USER_FILE_UNORDERED_ENTRIES, ER_LOG_USER_FILE_WITHOUT_ENOUGH_ENTRIES, er_set(), fileio_get_directory_path(), fileio_get_volume_label(), fileio_make_volume_ext_name(), fileio_symlink(), LOG_DBFIRST_VOLID, NO_ERROR, NULL, PEEK, and util_compare_filepath().
Referenced by logpb_copy_database(), and logpb_rename_all_volumes_files().
int logpb_page_check_corruption | ( | THREAD_ENTRY * | thread_p, |
LOG_PAGE * | log_pgptr, | ||
bool * | is_page_corrupted | ||
) |
Definition at line 11329 of file log_page_buffer.c.
References assert, logpb_page_has_valid_checksum(), NO_ERROR, and NULL.
Referenced by log_recovery_analysis(), and logpb_debug_check_log_page().
void logpb_page_get_first_null_block_lsa | ( | THREAD_ENTRY * | thread_p, |
LOG_PAGE * | log_pgptr, | ||
LOG_LSA * | first_null_block_lsa | ||
) |
Definition at line 3151 of file log_page_buffer.c.
References assert, log_page::hdr, i, LOG_PAGE_INIT_VALUE, LOG_PAGESIZE, log_hdrpage::logical_pageid, LSA_SET_NULL(), MAX_ALIGNMENT, NULL, log_lsa::offset, ONE_K, log_lsa::pageid, and PTR_ALIGN.
Referenced by log_recovery_analysis().
|
static |
Definition at line 518 of file log_page_buffer.c.
References assert, log_hdrpage::checksum, log_page::hdr, log_hdrpage::logical_pageid, logpb_compute_page_checksum(), logpb_log, NO_ERROR, and NULL.
Referenced by logpb_page_check_corruption().
|
static |
Definition at line 1570 of file log_page_buffer.c.
References log_page::area, ARG_FILE_LINE, assert, ER_ERROR_SEVERITY, ER_FAILED, ER_LOG_PAGE_CORRUPTED, ER_LOG_READ, er_set(), fileio_close(), fileio_is_volume_exist(), fileio_open(), fileio_read(), log_page::hdr, IO_MAX_PAGE_SIZE, LOG_PAGESIZE, log_hdrpage::logical_pageid, LOGPB_HEADER_PAGE_ID, logpb_log, LOGPB_PHYSICAL_HEADER_PAGE_ID, MAX_ALIGNMENT, NO_ERROR, NULL, NULL_OFFSET, NULL_VOLDES, log_hdrpage::offset, log_buffer::phy_pageid, and PTR_ALIGN.
Referenced by logpb_is_log_active_from_backup_useful().
int logpb_prior_lsa_append_all_list | ( | THREAD_ENTRY * | thread_p | ) |
Definition at line 3067 of file log_page_buffer.c.
References assert, log_prior_lsa_info::list_size, LOG_CS_OWN_WRITE_MODE(), log_Gl, logpb_append_prior_lsa_list(), NO_ERROR, NULL, ONE_K, perfmon_add_stat(), perfmon_inc_stat(), log_global::prior_info, log_prior_lsa_info::prior_lsa_mutex, prior_lsa_remove_prior_list(), PSTAT_PRIOR_LSA_LIST_REMOVED, and PSTAT_PRIOR_LSA_LIST_SIZE.
Referenced by heap_get_visible_version_from_log(), logpb_fetch_page(), logpb_flush_pages_direct(), and prior_lsa_next_record_internal().
int logpb_read_page_from_active_log | ( | THREAD_ENTRY * | thread_p, |
LOG_PAGEID | pageid, | ||
int | num_pages, | ||
bool | decrypt_needed, | ||
LOG_PAGE * | log_pgptr | ||
) |
Definition at line 2130 of file log_page_buffer.c.
References log_global::append, ARG_FILE_LINE, assert, ASSERT_ERROR, ER_ERROR_SEVERITY, ER_LOG_PAGE_CORRUPTED, ER_LOG_READ, er_set(), fileio_read_pages(), log_page::hdr, i, IO_MAX_PAGE_SIZE, tde_cipher::is_loaded, log_Gl, log_Name_active, LOG_PAGESIZE, LOG_RESTARTED, log_hdrpage::logical_pageid, LOGPB_ACTIVE_NPAGES, logpb_debug_check_log_page(), logpb_get_tde_algorithm(), logpb_log, logpb_to_physical_pageid(), MAX_ALIGNMENT, NO_ERROR, NULL, NULL_PAGEID, perfmon_inc_stat(), PSTAT_LOG_NUM_IOREADS, PTR_ALIGN, log_global::rcv_phase, TDE_ALGORITHM_NONE, tde_Cipher, tde_decrypt_log_page(), and log_append_info::vdes.
Referenced by logpb_archive_active_log(), and logpb_background_archiving().
int logpb_read_page_from_file | ( | THREAD_ENTRY * | thread_p, |
LOG_PAGEID | pageid, | ||
LOG_CS_ACCESS_MODE | access_mode, | ||
LOG_PAGE * | log_pgptr | ||
) |
Definition at line 1974 of file log_page_buffer.c.
References log_global::append, log_header::append_lsa, ARG_FILE_LINE, assert, ASSERT_ERROR, log_hdrpage::checksum, ER_FAILED, ER_FATAL_ERROR_SEVERITY, ER_LOG_PAGE_CORRUPTED, ER_LOG_READ, er_set(), error(), fileio_read(), log_page::hdr, log_global::hdr, LOG_CS_ENTER_READ_MODE(), LOG_CS_EXIT(), LOG_CS_OWN(), LOG_CS_SAFE_READER, log_Gl, LOG_ISRESTARTED, log_Name_active, LOG_PAGESIZE, LOG_RESTARTED, log_hdrpage::logical_pageid, LOGPB_ACTIVE_NPAGES, logpb_debug_check_log_page(), logpb_fetch_from_archive(), logpb_get_tde_algorithm(), logpb_is_page_in_archive(), logpb_log, logpb_to_physical_pageid(), NO_ERROR, NULL, NULL_PAGEID, log_lsa::pageid, perfmon_inc_stat(), log_buffer::phy_pageid, PSTAT_LOG_NUM_IOREADS, log_global::rcv_phase, TDE_ALGORITHM_NONE, tde_decrypt_log_page(), TT_VACUUM_MASTER, VACUUM_ER_LOG_ARCHIVES, vacuum_er_log_error, VACUUM_ER_LOG_MASTER, log_append_info::vdes, and log_header::was_active_log_reset.
Referenced by log_create_internal(), logpb_copy_page(), logpb_copy_page_from_file(), and logpb_locate_page().
int logpb_recreate_volume_info | ( | THREAD_ENTRY * | thread_p | ) |
Definition at line 4691 of file log_page_buffer.c.
References DB_PERMANENT_DATA_PURPOSE, disk_get_link(), DISK_UNKNOWN_PURPOSE, ER_FAILED, error(), log_Db_fullname, LOG_DBFIRST_VOLID, LOG_DBLOG_ACTIVE_VOLID, LOG_DBLOG_BKUPINFO_VOLID, LOG_DBLOG_INFO_VOLID, log_Name_active, log_Name_bkupinfo, log_Name_info, log_Name_volinfo, logpb_add_volume(), logpb_create_volume_info(), NO_ERROR, NULL, and NULL_VOLID.
Referenced by boot_find_rest_permanent_volumes(), disk_rv_undo_format(), and log_recovery_notpartof_volumes().
|
static |
Definition at line 10607 of file log_page_buffer.c.
References ARG_FILE_LINE, asprintf(), ER_ERROR_SEVERITY, ER_GENERIC_ERROR, er_set(), FILEIO_MAX_USER_RESPONSE_SIZE, FILEIO_PROMPT_BOOLEAN_TYPE, fileio_request_user_response(), MSGCAT_CATALOG_CUBRID, MSGCAT_LOG_DELETE_BKVOLS, MSGCAT_LOG_ENTER_Y2_CONFIRM, MSGCAT_LOG_STARTS, msgcat_message(), MSGCAT_SET_LOG, NO_ERROR, and NULL.
Referenced by logpb_backup().
int logpb_remove_all_in_log_path | ( | THREAD_ENTRY * | thread_p, |
const char * | db_fullname, | ||
const char * | logpath, | ||
const char * | prefix_logname | ||
) |
Definition at line 11223 of file log_page_buffer.c.
References log_global::append, er_clear(), fileio_dismount(), fileio_is_volume_exist(), fileio_make_log_archive_name(), fileio_mount(), fileio_unformat(), i, IO_MAX_PAGE_SIZE, log_header::last_deleted_arv_num, log_Archive_path, LOG_DBLOG_ACTIVE_VOLID, log_Gl, log_Name_active, log_Name_bg_archive, log_Name_info, log_Name_removed_archive, log_Prefix, logpb_fetch_header_with_buffer(), logpb_finalize_pool(), logpb_initialize_log_names(), logpb_initialize_pool(), logpb_Initialized, MAX_ALIGNMENT, NO_ERROR, NULL, NULL_VOLDES, prm_get_bool_value(), PRM_ID_LOG_BACKGROUND_ARCHIVING, PTR_ALIGN, and log_append_info::vdes.
Referenced by boot_restart_server().
void logpb_remove_archive_logs | ( | THREAD_ENTRY * | thread_p, |
const char * | info_reason | ||
) |
Definition at line 6123 of file log_page_buffer.c.
References _er_log_debug(), log_global::archive, ARG_FILE_LINE, assert, log_header::chkpt_lsa, fileio_synchronize_all(), log_global::hdr, log_header::last_arv_num_for_syscrashes, log_header::last_deleted_arv_num, LOG_CS_OWN_WRITE_MODE(), log_Gl, logpb_dismount_log_archive(), logpb_flush_header(), logpb_get_archive_number(), logpb_is_page_in_archive(), LOGPB_NEXT_ARCHIVE_PAGE_ID, logpb_remove_archive_logs_internal(), LSA_COPY(), LSA_ISNULL(), LSA_LT(), NO_ERROR, NULL, NULL_OFFSET, NULL_PAGEID, NULL_VOLDES, log_header::nxarv_num, log_lsa::offset, log_lsa::pageid, pgbuf_flush_checkpoint(), log_global::run_nxchkpt_atpageid, vacuum_is_safe_to_remove_archives(), vacuum_min_log_pageid_to_keep(), and log_archives::vdes.
Referenced by logpb_backup().
int logpb_remove_archive_logs_exceed_limit | ( | THREAD_ENTRY * | thread_p, |
int | max_count | ||
) |
Definition at line 5960 of file log_page_buffer.c.
References _er_log_debug(), ARG_FILE_LINE, assert, ER_LOG_MAX_ARCHIVES_HAS_BEEN_EXCEEDED, ER_NOTIFICATION_SEVERITY, er_set(), log_global::hdr, log_header::last_arv_num_for_syscrashes, log_header::last_deleted_arv_num, LOG_CS_ENTER(), LOG_CS_EXIT(), log_Gl, logpb_flush_header(), logpb_get_archive_number(), logpb_is_page_in_archive(), logpb_last_complete_blockid(), logpb_remove_archive_logs_internal(), LSA_ISNULL(), MSGCAT_CATALOG_CUBRID, MSGCAT_LOG_MAX_ARCHIVES_HAS_BEEN_EXCEEDED, msgcat_message(), MSGCAT_SET_LOG, log_header::mvcc_op_log_lsa, NULL, NULL_PAGEID, log_header::nxarv_num, prm_get_bool_value(), prm_get_integer_value(), PRM_ID_DEBUG_LOG_ARCHIVES, PRM_ID_FORCE_REMOVE_LOG_ARCHIVES, PRM_ID_LOG_MAX_ARCHIVES, vacuum_er_log, VACUUM_ER_LOG_ARCHIVES, VACUUM_IS_ER_LOG_LEVEL_SET, vacuum_is_safe_to_remove_archives(), log_header::vacuum_last_blockid, and vacuum_min_log_pageid_to_keep().
Referenced by log_is_log_flush_daemon_available(), and logpb_archive_active_log().
|
static |
Definition at line 6299 of file log_page_buffer.c.
References boot_Server_status, BOOT_SERVER_UP, fileio_make_log_archive_name(), fileio_unformat(), fileio_unformat_and_rename(), i, log_Archive_path, log_Name_removed_archive, log_Prefix, logpb_append_archives_removed_to_log_info(), logpb_decache_archive_info(), prm_get_bool_value(), and PRM_ID_LOG_BACKGROUND_ARCHIVING.
Referenced by logpb_remove_archive_logs(), and logpb_remove_archive_logs_exceed_limit().
int logpb_rename_all_volumes_files | ( | THREAD_ENTRY * | thread_p, |
VOLID | num_perm_vols, | ||
const char * | to_db_fullname, | ||
const char * | to_logpath, | ||
const char * | to_prefix_logname, | ||
const char * | toext_path, | ||
const char * | fileof_vols_and_renamepaths, | ||
bool | extern_rename, | ||
bool | force_delete | ||
) |
Definition at line 9649 of file log_page_buffer.c.
References log_global::append, log_global::archive, ARG_FILE_LINE, log_global::bg_archive_info, log_header::bkup_level0_lsa, log_header::bkup_level1_lsa, log_header::bkup_level2_lsa, boot_db_full_name(), log_header::chkpt_lsa, log_header::db_creation, DB_PERMANENT_DATA_PURPOSE, DISK_DONT_FLUSH, DISK_FLUSH, disk_set_creation(), disk_set_link(), DISK_UNKNOWN_PURPOSE, ER_ERROR_SEVERITY, ER_FAILED, ER_LOG_MOUNT_FAIL, er_set(), er_set_with_oserror(), ER_TM_CROSS_DEVICE_LINK, ER_TM_GET_STAT_FAIL, ER_TM_IS_NOT_WRITEABLE, error(), fileio_dismount(), fileio_finalize_backup_info(), fileio_find_next_perm_volume(), fileio_find_previous_perm_volume(), FILEIO_FIRST_BACKUP_VOL_INFO, fileio_get_volume_descriptor(), fileio_get_volume_label(), fileio_is_volume_exist(), fileio_make_backup_volume_info_name(), fileio_make_log_active_name(), fileio_make_log_archive_name(), fileio_make_log_info_name(), fileio_mount(), fileio_read_backup_info_entries(), fileio_remove_all_backup(), fileio_rename(), FILEIO_SYNC_ALSO_FLUSH_DWB, fileio_synchronize(), fileio_unformat(), free_and_init, log_global::hdr, i, log_header::last_arv_num_for_syscrashes, log_header::last_deleted_arv_num, log_Archive_path, log_Db_fullname, LOG_DBFIRST_VOLID, LOG_DBLOG_ACTIVE_VOLID, LOG_DBLOG_BKUPINFO_VOLID, LOG_DBTDE_KEYS_VOLID, log_dump_log_info(), log_Gl, log_Name_active, log_Name_bg_archive, log_Name_bkupinfo, log_Name_info, log_Name_removed_archive, log_Name_volinfo, log_Prefix, logpb_add_volume(), logpb_create_log_info(), logpb_create_volume_info(), logpb_dismount_log_archive(), logpb_fetch_start_append_page(), logpb_finalize_pool(), logpb_flush_header(), logpb_flush_pages_direct(), logpb_initialize_log_names(), logpb_initialize_pool(), logpb_next_where_path(), logpb_start_where_path(), logpb_verify_length(), LSA_SET_NULL(), MSGCAT_CATALOG_CUBRID, MSGCAT_LOG_LOGINFO_ACTIVE, MSGCAT_LOG_LOGINFO_COMMENT_FROM_RENAMED, msgcat_message(), MSGCAT_SET_LOG, NO_ERROR, log_header::npages, NULL, NULL_VOLDES, NULL_VOLID, log_header::nxarv_num, PEEK, pgbuf_flush_all(), pgbuf_invalidate_all, log_header::prefix_name, prm_get_bool_value(), PRM_ID_LOG_BACKGROUND_ARCHIVING, tde_make_keys_file_fullname(), log_archives::vdes, background_archiving_info::vdes, and log_append_info::vdes.
Referenced by xboot_soft_rename().
int logpb_restore | ( | THREAD_ENTRY * | thread_p, |
const char * | db_fullname, | ||
const char * | logpath, | ||
const char * | prefix_logname, | ||
bo_restart_arg * | r_args | ||
) |
Definition at line 8273 of file log_page_buffer.c.
References log_global::append, ARG_FILE_LINE, assert, ASSERT_ERROR_AND_SET, fileio_backup_record_info::at_time, bo_restart_arg::backuppath, io_backup_session::bkup, fileio_backup_buffer::bkuphdr, boot_db_full_name(), boot_db_name(), CEIL_PTVDIV, fileio_backup_header::chkpt_lsa, CTIME_MAX, fileio_backup_buffer::current_path, db_set_page_size(), io_backup_session::dbfile, fileio_backup_buffer::dtype, fileio_backup_header::end_time, er_errid(), ER_ERROR_SEVERITY, ER_FAILED, ER_FATAL_ERROR_SEVERITY, ER_GENERIC_ERROR, ER_LOG_BKUP_INCOMPATIBLE, ER_LOG_CANNOT_ACCESS_BACKUP, ER_LOG_MAYNEED_MEDIA_RECOVERY, er_set(), ER_TDE_INVALID_KEYS_FILE, error(), fileio_abort_restore(), fileio_add_volume_to_backup_info(), FILEIO_BACKUP_FULL_LEVEL, FILEIO_BACKUP_UNDEFINED_LEVEL, FILEIO_BACKUP_VOL_DEVICE, fileio_clear_backup_info_level(), fileio_dismount(), fileio_finalize_backup_info(), fileio_finish_restore(), FILEIO_FIRST_BACKUP_VOL_INFO, fileio_get_backup_volume(), fileio_get_base_file_name(), fileio_get_directory_path(), fileio_get_next_restore_file(), FILEIO_INITIAL_BACKUP_UNITS, fileio_is_volume_exist(), fileio_make_backup_name(), fileio_make_backup_volume_info_name(), fileio_make_temp_log_files_from_backup(), fileio_mount(), FILEIO_NO_BACKUP_UNITS, fileio_page_bitmap_create(), fileio_page_bitmap_list_add(), fileio_page_bitmap_list_destroy(), fileio_page_bitmap_list_find(), fileio_page_bitmap_list_init(), fileio_restore_volume(), FILEIO_SECOND_BACKUP_VOL_INFO, fileio_skip_restore_volume(), fileio_start_restore(), fileio_write_backup_info_entries(), IO_PAGESIZE, bo_restart_arg::keys_file_path, fileio_backup_buffer::last_chkpt_lsa, bo_restart_arg::level, LOG_CS_ENTER(), LOG_CS_EXIT(), LOG_DBFIRST_VOLID, LOG_DBLOG_ACTIVE_VOLID, LOG_DBLOG_ARCHIVE_VOLID, LOG_DBLOG_BKUPINFO_VOLID, LOG_DBLOG_INFO_VOLID, LOG_DBTDE_KEYS_VOLID, LOG_DBVOLINFO_VOLID, log_Gl, log_Name_active, log_Name_bkupinfo, LOG_PAGESIZE, fileio_backup_buffer::log_path, logpb_check_stop_at_time(), logpb_fatal_error(), logpb_find_header_parameters(), logpb_is_log_active_from_backup_useful(), logtb_define_trantable_log_latch(), LSA_COPY(), MSGCAT_CATALOG_CUBRID, MSGCAT_LOG_READ_ERROR_DURING_RESTORE, msgcat_message(), MSGCAT_SET_LOG, fileio_backup_buffer::name, fileio_backup_db_buffer::nbytes, bo_restart_arg::newvolpath, NO_ERROR, NULL, NULL_VOLDES, os_rename_file(), fileio_backup_header::previnfo, bo_restart_arg::printtoc, REL_BACKWARD_COMPATIBLE, rel_disk_compatible(), REL_FULLY_COMPATIBLE, rel_get_disk_compatible(), rel_name(), rel_release_string(), bo_restart_arg::restore_upto_bktime, fileio_backup_header::start_time, bo_restart_arg::stopat, strncpy_bufsize, success(), tde_make_keys_file_fullname(), tde_validate_keys_file(), fileio_backup_header::unit_num, log_append_info::vdes, bo_restart_arg::verbose_file, io_backup_session::verbose_fp, fileio_backup_buffer::vlabel, and fileio_backup_db_buffer::volid.
Referenced by boot_restart_server().
int logpb_scan_volume_info | ( | THREAD_ENTRY * | thread_p, |
const char * | db_fullname, | ||
VOLID | ignore_volid, | ||
VOLID | start_volid, | ||
int(*)(THREAD_ENTRY *thread_p, VOLID xvolid, const char *vlabel, void *args) | fun, | ||
void * | args | ||
) |
Definition at line 4815 of file log_page_buffer.c.
References ARG_FILE_LINE, ER_BO_CANNOT_FINE_VOLINFO, ER_BO_UNSORTED_VOLINFO, ER_ERROR_SEVERITY, er_set(), ER_WARNING_SEVERITY, fileio_make_volume_info_name(), LOG_DBFIRST_VOLID, log_Name_volinfo, NO_ERROR, NULL, and NULL_VOLID.
Referenced by boot_find_rest_permanent_volumes().
void logpb_set_dirty | ( | THREAD_ENTRY * | thread_p, |
LOG_PAGE * | log_pgptr | ||
) |
Definition at line 922 of file log_page_buffer.c.
References ARG_FILE_LINE, log_buffer::dirty, ER_LOG_FLUSHING_UNUPDATABLE, er_set(), ER_WARNING_SEVERITY, logpb_get_log_buffer(), LOGPB_HEADER_PAGE_ID, LOGPB_LAST_ACTIVE_PAGE_ID, logpb_log, LOGPB_NEXT_ARCHIVE_PAGE_ID, and log_buffer::pageid.
Referenced by log_create_internal(), log_recovery_resetlog(), logpb_end_append(), logpb_next_append_page(), and logpb_start_append().
int logpb_set_page_checksum | ( | THREAD_ENTRY * | thread_p, |
LOG_PAGE * | log_pgptr | ||
) |
Definition at line 490 of file log_page_buffer.c.
References assert, log_hdrpage::checksum, log_page::hdr, log_hdrpage::logical_pageid, logpb_compute_page_checksum(), logpb_log, NO_ERROR, and NULL.
Referenced by logpb_archive_active_log(), logpb_copy_database(), logpb_write_page_to_disk(), logpb_writev_append_pages(), and logwr_log_ha_filestat_to_string().
void logpb_set_tde_algorithm | ( | THREAD_ENTRY * | thread_p, |
LOG_PAGE * | log_pgptr, | ||
const TDE_ALGORITHM | tde_algo | ||
) |
Definition at line 11414 of file log_page_buffer.c.
References assert, log_hdrpage::flags, log_page::hdr, tde_cipher::is_loaded, LOG_HDRPAGE_FLAG_ENCRYPTED_AES, LOG_HDRPAGE_FLAG_ENCRYPTED_ARIA, LOG_HDRPAGE_FLAG_ENCRYPTED_MASK, TDE_ALGORITHM_AES, TDE_ALGORITHM_ARIA, TDE_ALGORITHM_NONE, and tde_Cipher.
Referenced by logpb_next_append_page(), logpb_start_append(), logpb_write_page_to_disk(), logpb_write_toflush_pages_to_archive(), and logpb_writev_append_pages().
|
static |
Definition at line 5015 of file log_page_buffer.c.
References log_global::archive, assert, LOG_ARCHIVE_CS_OWN_WRITE_MODE, log_Gl, log_archives::max_unav, log_archives::next_unav, NULL, and log_archives::unav_archives.
Referenced by logpb_fetch_from_archive().
|
static |
Definition at line 4165 of file log_page_buffer.c.
References log_global::append, log_header::append_lsa, log_append_info::appending_page_tde_encrypted, ARG_FILE_LINE, assert, log_rec_header::back_lsa, log_header::eof_lsa, log_page::hdr, log_global::hdr, LOG_APPEND_ADVANCE_WHEN_DOESNOT_FIT, LOG_APPEND_PTR(), LOG_APPEND_SETDIRTY_ADD_ALIGN, LOG_CS_OWN_WRITE_MODE(), LOG_END_OF_LOG, log_Gl, LOG_IS_PAGE_TDE_ENCRYPTED, log_append_info::log_pgptr, log_hdrpage::logical_pageid, LOGPB_APPENDREC_IN_PROGRESS, LOGPB_APPENDREC_PARTIAL_ENDED, LOGPB_APPENDREC_SUCCESS, logpb_fatal_error(), logpb_get_tde_algorithm(), logpb_log, logpb_set_dirty(), logpb_set_tde_algorithm(), LSA_COPY(), LSA_EQ(), NULL, NULL_OFFSET, log_lsa::offset, log_hdrpage::offset, log_pb_global_data::partial_append, perfmon_inc_stat(), log_append_info::prev_lsa, prm_get_integer_value(), PRM_ID_TDE_DEFAULT_ALGORITHM, PSTAT_LOG_NUM_APPENDRECS, logpb_partial_append::status, tde_get_algorithm_name(), and log_rec_header::type.
Referenced by logpb_append_next_record(), and logpb_flush_all_append_pages().
|
static |
Definition at line 8897 of file log_page_buffer.c.
References ARG_FILE_LINE, ER_ERROR_SEVERITY, ER_FAILED, ER_LOG_USER_FILE_UNKNOWN, er_set_with_oserror(), fileio_get_base_file_name(), NO_ERROR, and NULL.
Referenced by logpb_copy_database(), and logpb_rename_all_volumes_files().
LOG_PHY_PAGEID logpb_to_physical_pageid | ( | LOG_PAGEID | logical_pageid | ) |
Definition at line 4912 of file log_page_buffer.c.
References assert, LOGPB_ACTIVE_NPAGES, LOGPB_FIRST_ACTIVE_PAGE_ID, LOGPB_HEADER_PAGE_ID, LOGPB_PHYSICAL_HEADER_PAGE_ID, PAGEID_MAX, and log_buffer::phy_pageid.
Referenced by log_recovery_resetlog(), logpb_archive_active_log(), logpb_copy_database(), logpb_fetch_header_from_active_log(), logpb_flush_page(), logpb_locate_page(), logpb_read_page_from_active_log(), logpb_read_page_from_file(), and logpb_write_page_to_disk().
|
static |
Definition at line 8176 of file log_page_buffer.c.
References ARG_FILE_LINE, ER_ERROR_SEVERITY, ER_LOG_CREATE_DBBACKUP_DIRINFO, er_set_with_oserror(), FILEIO_FIRST_BACKUP_VOL_INFO, fileio_write_backup_info_entries(), NO_ERROR, and NULL.
Referenced by logpb_backup().
void logpb_vacuum_reset_log_header_cache | ( | THREAD_ENTRY * | thread_p, |
LOG_HEADER * | loghdr | ||
) |
Definition at line 11290 of file log_page_buffer.c.
References log_header::does_block_need_vacuum, LSA_SET_NULL(), log_header::mvcc_op_log_lsa, MVCCID_FIRST, MVCCID_NULL, log_header::newest_block_mvccid, log_header::oldest_visible_mvccid, vacuum_er_log, and VACUUM_ER_LOG_VACUUM_DATA.
Referenced by log_recovery_redo(), logpb_initialize_header(), vacuum_recover_lost_block_data(), vacuum_rv_redo_vacuum_complete(), and xvacuum().
|
static |
Definition at line 6469 of file log_page_buffer.c.
References ARG_FILE_LINE, DB_MAX_PATH_LENGTH, dbname, ER_BO_FULL_DATABASE_NAME_IS_TOO_LONG, ER_FAILED, ER_FATAL_ERROR_SEVERITY, ER_LOG_NAME_IS_TOO_LONG, ER_LOG_NOFULL_DATABASE_NAME_IS_TOO_LONG, ER_LOG_PREFIX_NAME_IS_TOO_LONG, er_set(), fileio_get_base_file_name(), fileio_get_max_name(), fileio_get_volume_max_suffix(), MAXLOGNAME, NO_ERROR, NULL, and strlen.
Referenced by logpb_copy_database(), logpb_initialize_log_names(), and logpb_rename_all_volumes_files().
int logpb_write_page_to_disk | ( | THREAD_ENTRY * | thread_p, |
LOG_PAGE * | log_pgptr, | ||
LOG_PAGEID | logical_pageid | ||
) |
Definition at line 2239 of file log_page_buffer.c.
References log_global::append, ARG_FILE_LINE, assert, log_header::db_logpagesize, dwb_is_created(), er_errid(), ER_ERROR_SEVERITY, ER_FAILED, ER_FATAL_ERROR_SEVERITY, ER_IO_WRITE_OUT_OF_SPACE, ER_LOG_WRITE, ER_LOG_WRITE_OUT_OF_SPACE, er_set(), er_set_with_oserror(), ER_TDE_ENCRYPTION_LOGPAGE_ERORR_AND_OFF_TDE, fileio_write(), FILEIO_WRITE_DEFAULT_WRITE, FILEIO_WRITE_NO_COMPENSATE_WRITE, log_page::hdr, log_global::hdr, IO_MAX_PAGE_SIZE, log_Gl, LOG_IS_PAGE_TDE_ENCRYPTED, log_Name_active, LOG_PAGESIZE, log_hdrpage::logical_pageid, logpb_fatal_error(), logpb_get_tde_algorithm(), LOGPB_HEADER_PAGE_ID, LOGPB_IS_ARCHIVE_PAGE, LOGPB_LAST_ACTIVE_PAGE_ID, logpb_log, logpb_set_page_checksum(), logpb_set_tde_algorithm(), logpb_to_physical_pageid(), MAX_ALIGNMENT, NO_ERROR, NULL, perfmon_inc_stat(), log_buffer::phy_pageid, PSTAT_LOG_NUM_IOWRITES, PTR_ALIGN, TDE_ALGORITHM_NONE, tde_encrypt_log_page(), and log_append_info::vdes.
Referenced by log_recovery_analysis(), logpb_flush_all_append_pages(), logpb_flush_header(), logpb_flush_page(), and logpb_locate_page().
|
static |
Definition at line 2833 of file log_page_buffer.c.
References log_global::append, ARG_FILE_LINE, assert, assert_release, log_global::bg_archive_info, background_archiving_info::current_page_id, dwb_is_created(), ER_ERROR_SEVERITY, er_set(), ER_TDE_ENCRYPTION_LOGPAGE_ERORR_AND_OFF_TDE, fileio_dismount(), FILEIO_SYNC_ONLY, fileio_synchronize(), fileio_write(), FILEIO_WRITE_DEFAULT_WRITE, FILEIO_WRITE_NO_COMPENSATE_WRITE, log_global::flush_info, i, IO_MAX_PAGE_SIZE, background_archiving_info::last_sync_pageid, LOG_CS_FORCE_USE, log_Gl, LOG_IS_PAGE_TDE_ENCRYPTED, log_Name_bg_archive, LOG_PAGESIZE, logpb_debug_check_log_page(), logpb_fetch_page(), logpb_get_log_buffer(), logpb_get_tde_algorithm(), logpb_log, logpb_set_tde_algorithm(), MAX_ALIGNMENT, NO_ERROR, NULL, NULL_VOLDES, log_flush_info::num_toflush, log_lsa::offset, log_lsa::pageid, log_buffer::pageid, log_buffer::phy_pageid, log_append_info::prev_lsa, prm_get_bool_value(), prm_get_integer_value(), PRM_ID_LOG_BACKGROUND_ARCHIVING, PRM_ID_PB_SYNC_ON_NFLUSH, PTR_ALIGN, background_archiving_info::start_page_id, TDE_ALGORITHM_NONE, tde_encrypt_log_page(), log_flush_info::toflush, and background_archiving_info::vdes.
Referenced by logpb_flush_all_append_pages().
|
static |
Definition at line 2745 of file log_page_buffer.c.
References log_global::append, ARG_FILE_LINE, log_header::db_logpagesize, dwb_is_created(), er_errid(), ER_ERROR_SEVERITY, ER_FATAL_ERROR_SEVERITY, ER_IO_WRITE_OUT_OF_SPACE, ER_LOG_WRITE, ER_LOG_WRITE_OUT_OF_SPACE, er_set(), er_set_with_oserror(), ER_TDE_ENCRYPTION_LOGPAGE_ERORR_AND_OFF_TDE, fileio_write(), FILEIO_WRITE_DEFAULT_WRITE, FILEIO_WRITE_NO_COMPENSATE_WRITE, log_page::hdr, log_global::hdr, i, IO_MAX_PAGE_SIZE, log_Gl, LOG_IS_PAGE_TDE_ENCRYPTED, log_Name_active, LOG_PAGESIZE, log_hdrpage::logical_pageid, logpb_get_log_buffer(), logpb_get_tde_algorithm(), logpb_log, logpb_set_page_checksum(), logpb_set_tde_algorithm(), MAX_ALIGNMENT, NO_ERROR, NULL, log_buffer::pageid, log_buffer::phy_pageid, PTR_ALIGN, TDE_ALGORITHM_NONE, tde_encrypt_log_page(), and log_append_info::vdes.
Referenced by logpb_flush_all_append_pages().
|
static |
Definition at line 3045 of file log_page_buffer.c.
References assert, log_prior_lsa_info::list_size, LOG_CS_OWN_WRITE_MODE(), log_Gl, NULL, log_global::prior_info, log_prior_lsa_info::prior_list_header, and log_prior_lsa_info::prior_list_tail.
Referenced by logpb_prior_lsa_append_all_list().
void xlogpb_dump_stat | ( | FILE * | outfp | ) |
Definition at line 11039 of file log_page_buffer.c.
References logpb_dump_log_header(), logpb_dump_parameter(), and logpb_dump_runtime().
Referenced by log_dump_stat(), and slogpb_dump_stat().
int log_default_input_for_archive_log_location = -1 |
Definition at line 268 of file log_page_buffer.c.
Referenced by logpb_fetch_from_archive(), and restoredb().
LOG_PB_GLOBAL_DATA log_Pb |
Definition at line 271 of file log_page_buffer.c.
LOG_LOGGING_STAT log_Stat |
Definition at line 273 of file log_page_buffer.c.
Referenced by log_change_tran_as_completed(), and log_is_log_flush_daemon_available().
|
static |
Definition at line 274 of file log_page_buffer.c.
|
static |
Definition at line 276 of file log_page_buffer.c.
Referenced by logpb_delete(), logpb_dump(), logpb_finalize_pool(), logpb_initialize_pool(), logpb_invalidate_pool(), logpb_is_pool_initialized(), and logpb_remove_all_in_log_path().
|
static |
Definition at line 277 of file log_page_buffer.c.
Referenced by logpb_dump_log_page_area(), logpb_flush_all_append_pages(), and logpb_initialize_pool().
|
static |
Definition at line 113 of file log_page_buffer.c.
Referenced by logpb_backup(), logpb_copy_page(), logpb_copy_page_from_file(), logpb_copy_page_from_log_buffer(), logpb_fetch_page(), logpb_fetch_start_append_page(), logpb_finalize_flush_info(), logpb_finalize_writer_info(), logpb_flush_all_append_pages(), logpb_flush_pages(), logpb_invalid_all_append_pages(), logpb_is_any_dirty(), and logpb_next_append_page().