MySQL 9.1.0
Source Code Documentation
ha_archive.cc File Reference
#include "storage/archive/ha_archive.h"
#include <errno.h>
#include <fcntl.h>
#include <limits.h>
#include <mysql/plugin.h>
#include "lex_string.h"
#include "m_string.h"
#include "my_byteorder.h"
#include "my_compiler.h"
#include "my_dbug.h"
#include "my_dir.h"
#include "my_psi_config.h"
#include "myisam.h"
#include "mysql/psi/mysql_file.h"
#include "mysql/psi/mysql_memory.h"
#include "nulls.h"
#include "sql/derror.h"
#include "sql/field.h"
#include "sql/sql_class.h"
#include "sql/sql_table.h"
#include "sql/system_variables.h"
#include "sql/table.h"
#include "template_utils.h"

Macros

#define ARZ   ".ARZ"
 
#define ARN   ".ARN"
 
#define ARM   ".ARM"
 
#define META_V1_OFFSET_CHECK_HEADER   0
 
#define META_V1_OFFSET_VERSION   1
 
#define META_V1_OFFSET_ROWS_RECORDED   2
 
#define META_V1_OFFSET_CHECK_POINT   10
 
#define META_V1_OFFSET_CRASHED   18
 
#define META_V1_LENGTH   19
 
#define DATA_BUFFER_SIZE   2
 
#define ARCHIVE_CHECK_HEADER   254
 
#define ARCHIVE_MIN_ROWS_TO_USE_BULK_INSERT   2
 
#define ARCHIVE_ROW_HEADER_SIZE   4
 

Functions

static handlerarchive_create_handler (handlerton *hton, TABLE_SHARE *table, bool partitioned, MEM_ROOT *mem_root)
 
static void init_archive_psi_keys (void)
 
static int archive_db_init (void *p)
 
static void save_auto_increment (TABLE *table, ulonglong *value)
 
 mysql_declare_plugin (archive)
 

Variables

PSI_file_key arch_key_file_data
 
PSI_memory_key az_key_memory_frm
 
PSI_memory_key az_key_memory_record_buffer
 
PSI_mutex_key az_key_mutex_Archive_share_mutex
 
static PSI_mutex_info all_archive_mutexes []
 
PSI_file_key arch_key_file_metadata
 
PSI_file_key arch_key_file_frm
 
static PSI_file_info all_archive_files []
 
static PSI_memory_info all_archive_memory []
 
static const char * ha_archive_exts [] = {ARZ, NullS}
 
struct st_mysql_storage_engine archive_storage_engine
 
 mysql_declare_plugin_end
 

Macro Definition Documentation

◆ ARCHIVE_CHECK_HEADER

#define ARCHIVE_CHECK_HEADER   254

◆ ARCHIVE_MIN_ROWS_TO_USE_BULK_INSERT

#define ARCHIVE_MIN_ROWS_TO_USE_BULK_INSERT   2

◆ ARCHIVE_ROW_HEADER_SIZE

#define ARCHIVE_ROW_HEADER_SIZE   4

◆ ARM

#define ARM   ".ARM"

◆ ARN

#define ARN   ".ARN"

◆ ARZ

#define ARZ   ".ARZ"

◆ DATA_BUFFER_SIZE

#define DATA_BUFFER_SIZE   2

◆ META_V1_LENGTH

#define META_V1_LENGTH   19

◆ META_V1_OFFSET_CHECK_HEADER

#define META_V1_OFFSET_CHECK_HEADER   0

◆ META_V1_OFFSET_CHECK_POINT

#define META_V1_OFFSET_CHECK_POINT   10

◆ META_V1_OFFSET_CRASHED

#define META_V1_OFFSET_CRASHED   18

◆ META_V1_OFFSET_ROWS_RECORDED

#define META_V1_OFFSET_ROWS_RECORDED   2

◆ META_V1_OFFSET_VERSION

#define META_V1_OFFSET_VERSION   1

Function Documentation

◆ archive_create_handler()

static handler * archive_create_handler ( handlerton hton,
TABLE_SHARE table,
bool  partitioned,
MEM_ROOT mem_root 
)
static

◆ archive_db_init()

static int archive_db_init ( void *  p)
static

◆ init_archive_psi_keys()

static void init_archive_psi_keys ( void  )
static

◆ mysql_declare_plugin()

mysql_declare_plugin ( archive  )

◆ save_auto_increment()

static void save_auto_increment ( TABLE table,
ulonglong value 
)
static

Variable Documentation

◆ all_archive_files

PSI_file_info all_archive_files[]
static
Initial value:
= {
{&arch_key_file_metadata, "metadata", 0, 0, PSI_DOCUMENT_ME},
#define PSI_DOCUMENT_ME
Definition: component_common.h:29
PSI_file_key arch_key_file_frm
Definition: ha_archive.cc:179
PSI_file_key arch_key_file_data
Definition: ha_archive.cc:145
PSI_file_key arch_key_file_metadata
Definition: ha_archive.cc:179

◆ all_archive_memory

PSI_memory_info all_archive_memory[]
static
Initial value:
= {
{&az_key_memory_record_buffer, "record_buffer", 0, 0, PSI_DOCUMENT_ME},
}
PSI_memory_key az_key_memory_record_buffer
Definition: ha_archive.cc:167
PSI_memory_key az_key_memory_frm
Definition: ha_archive.cc:166

◆ all_archive_mutexes

PSI_mutex_info all_archive_mutexes[]
static
Initial value:
= {
{&az_key_mutex_Archive_share_mutex, "Archive_share::mutex", 0, 0,
PSI_mutex_key az_key_mutex_Archive_share_mutex
Definition: ha_archive.cc:168

◆ arch_key_file_data

PSI_file_key arch_key_file_data

◆ arch_key_file_frm

PSI_file_key arch_key_file_frm

◆ arch_key_file_metadata

PSI_file_key arch_key_file_metadata

◆ archive_storage_engine

struct st_mysql_storage_engine archive_storage_engine
Initial value:
= {
#define MYSQL_HANDLERTON_INTERFACE_VERSION
Definition: plugin.h:704

◆ az_key_memory_frm

PSI_memory_key az_key_memory_frm

◆ az_key_memory_record_buffer

PSI_memory_key az_key_memory_record_buffer

◆ az_key_mutex_Archive_share_mutex

PSI_mutex_key az_key_mutex_Archive_share_mutex

◆ ha_archive_exts

const char* ha_archive_exts[] = {ARZ, NullS}
static

◆ mysql_declare_plugin_end

mysql_declare_plugin_end