CUBRID Engine  latest
log_writer.h File Reference
#include "client_credentials.hpp"
#include "log_archives.hpp"
#include "log_common_impl.h"
#include "log_lsa.hpp"
#include "tde.h"
#include "storage_common.h"
#include <stdio.h>
Include dependency graph for log_writer.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  logwr_context
 
struct  logwr_entry
 
struct  logwr_info
 

Macros

#define LOGWR_COPY_FROM_FIRST_PHY_PAGE_MASK   (0x80000000)
 

Typedefs

typedef struct logwr_context LOGWR_CONTEXT
 
typedef enum logwr_mode LOGWR_MODE
 
typedef enum logwr_status LOGWR_STATUS
 
typedef struct logwr_entry LOGWR_ENTRY
 
typedef struct logwr_info LOGWR_INFO
 

Enumerations

enum  logwr_mode { LOGWR_MODE_ASYNC = 1, LOGWR_MODE_SEMISYNC, LOGWR_MODE_SYNC }
 
enum  logwr_status {
  LOGWR_STATUS_WAIT, LOGWR_STATUS_FETCH, LOGWR_STATUS_DONE, LOGWR_STATUS_DELAY,
  LOGWR_STATUS_ERROR
}
 

Functions

bool logwr_force_shutdown (void)
 
int logwr_copy_log_file (const char *db_name, const char *log_path, int mode, INT64 start_page_id)
 
LOG_PHY_PAGEID logwr_to_physical_pageid (LOG_PAGEID logical_pageid)
 
const char * logwr_log_ha_filestat_to_string (enum LOG_HA_FILESTAT val)
 

Macro Definition Documentation

#define LOGWR_COPY_FROM_FIRST_PHY_PAGE_MASK   (0x80000000)

Definition at line 55 of file log_writer.h.

Referenced by logwr_get_log_pages(), and logwr_log_ha_filestat_to_string().

Typedef Documentation

typedef struct logwr_context LOGWR_CONTEXT

Definition at line 40 of file log_writer.h.

typedef struct logwr_entry LOGWR_ENTRY

Definition at line 141 of file log_writer.h.

typedef struct logwr_info LOGWR_INFO

Definition at line 156 of file log_writer.h.

typedef enum logwr_mode LOGWR_MODE

Definition at line 54 of file log_writer.h.

typedef enum logwr_status LOGWR_STATUS

Definition at line 139 of file log_writer.h.

Enumeration Type Documentation

enum logwr_mode
Enumerator
LOGWR_MODE_ASYNC 
LOGWR_MODE_SEMISYNC 
LOGWR_MODE_SYNC 

Definition at line 48 of file log_writer.h.

Enumerator
LOGWR_STATUS_WAIT 
LOGWR_STATUS_FETCH 
LOGWR_STATUS_DONE 
LOGWR_STATUS_DELAY 
LOGWR_STATUS_ERROR 

Definition at line 131 of file log_writer.h.

Function Documentation

int logwr_copy_log_file ( const char *  db_name,
const char *  log_path,
int  mode,
INT64  start_page_id 
)

Definition at line 1960 of file log_writer.c.

References ER_FAILED.

Referenced by copylogdb(), and logwr_info::logwr_info().

Here is the caller graph for this function:

bool logwr_force_shutdown ( void  )

Referenced by copylogdb(), and logwr_info::logwr_info().

Here is the caller graph for this function:

const char* logwr_log_ha_filestat_to_string ( enum LOG_HA_FILESTAT  val)

Definition at line 2041 of file log_writer.c.

References log_global::append, log_page::area, ARG_FILE_LINE, log_arv_header::arv_num, assert, assert_release, logwr_entry::copy_from_first_phy_page, css_ha_server_state(), db_private_alloc, db_private_free_and_init, logwr_entry::eof_lsa, log_header::eof_lsa, ER_CSS_PTHREAD_COND_TIMEDOUT, ER_CSS_PTHREAD_COND_WAIT, ER_CSS_PTHREAD_MUTEX_LOCK, ER_CSS_PTHREAD_MUTEX_UNLOCK, ER_ERROR_SEVERITY, ER_FAILED, ER_HA_GENERIC_ERROR, ER_HA_LW_FAILED_GET_LOG_PAGE, ER_INTERRUPTED, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), error(), log_hdrpage::flags, logwr_info::flush_end_cond, logwr_info::flush_end_mutex, logwr_entry::fpageid, log_arv_header::fpageid, free_and_init, log_append_info::get_nxio_lsa(), log_header::ha_file_status, log_header::ha_server_state, log_page::hdr, log_global::hdr, INF_WAIT, logwr_entry::last_sent_eof_lsa, logwr_info::last_writer_client_info, logwr_info::last_writer_elapsed_time, LOG_CS_ENTER(), LOG_CS_EXIT(), LOG_FIND_THREAD_TRAN_INDEX, log_get_clock_msec(), log_Gl, LOG_HA_FILESTAT_ARCHIVED, LOG_HA_FILESTAT_CLEAR, LOG_HA_FILESTAT_SYNCHRONIZED, LOG_HDRPAGE_FLAG_ENCRYPTED_AES, LOG_HDRPAGE_FLAG_ENCRYPTED_ARIA, LOG_HDRPAGE_FLAG_ENCRYPTED_MASK, LOG_PAGESIZE, log_global::loghdr_pgptr, log_hdrpage::logical_pageid, LOGPAGEID_MAX, logpb_copy_page_from_file(), logpb_copy_page_from_log_buffer(), logpb_fetch_from_archive(), logpb_find_oldest_available_page_id(), LOGPB_HEADER_PAGE_ID, logpb_is_page_in_archive(), logpb_set_page_checksum(), logtb_get_client_ids(), logtb_is_interrupted(), logwr_check_page_checksum(), LOGWR_COPY_FROM_FIRST_PHY_PAGE_MASK, LOGWR_COPY_LOG_BUFFER_NPAGES, logwr_er_log, LOGWR_MODE_ASYNC, LOGWR_MODE_SYNC, LOGWR_STATUS_DELAY, LOGWR_STATUS_DONE, LOGWR_STATUS_ERROR, LOGWR_STATUS_FETCH, LOGWR_STATUS_WAIT, LOGWR_THREAD_SUSPEND_TIMEOUT, LSA_COPY(), LSA_GE(), LSA_INITIALIZER, LSA_ISNULL(), LSA_SET_NULL(), logwr_entry::mode, logwr_entry::next, NO_ERROR, log_arv_header::npages, NULL, NULL_OFFSET, NULL_PAGEID, log_header::nxarv_num, log_header::nxarv_pageid, log_header::nxarv_phy_pageid, log_lsa::offset, p, log_lsa::pageid, prm_get_integer_value(), PRM_ID_HA_COPY_LOG_TIMEOUT, pthread_mutex_lock, pthread_mutex_unlock, rv, logwr_entry::start_copy_time, logwr_entry::status, TDE_ALGORITHM_AES, TDE_ALGORITHM_ARIA, TDE_ALGORITHM_NONE, THREAD_LOGWR_RESUMED, THREAD_LOGWR_SUSPENDED, logwr_entry::thread_p, THREAD_RESUME_DUE_TO_INTERRUPT, THREAD_STOP_LOGWR, thread_suspend_with_other_mutex(), logwr_entry::tmp_last_sent_eof_lsa, logwr_info::trace_last_writer, logwr_info::wr_list_mutex, log_global::writer_info, logwr_info::writer_list, xlog_get_page_request_with_reply(), and xlog_send_log_pages_to_client().

Referenced by la_print_log_header(), log_active_log_header_next_scan(), and logwr_info::logwr_info().

Here is the caller graph for this function:

LOG_PHY_PAGEID logwr_to_physical_pageid ( LOG_PAGEID  logical_pageid)

Referenced by logwr_info::logwr_info().

Here is the caller graph for this function: