mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
mysqlbinlog --hexdump augments each log entry with byte information
This commit is contained in:
@ -62,6 +62,7 @@ static const char *load_default_groups[]= { "mysqlbinlog","client",0 };
|
||||
void sql_print_error(const char *format, ...);
|
||||
|
||||
static bool one_database=0, to_last_remote_log= 0, disable_log_bin= 0;
|
||||
static bool opt_hexdump= 0;
|
||||
static const char* database= 0;
|
||||
static my_bool force_opt= 0, short_form= 0, remote_opt= 0;
|
||||
static ulonglong offset = 0;
|
||||
@ -522,12 +523,15 @@ int process_event(LAST_EVENT_INFO *last_event_info, Log_event *ev,
|
||||
}
|
||||
if (!short_form)
|
||||
fprintf(result_file, "# at %s\n",llstr(pos,ll_buff));
|
||||
|
||||
|
||||
/* Set pos to 0 if hexdump is disabled */
|
||||
pos= (opt_hexdump ? pos : 0);
|
||||
|
||||
switch (ev_type) {
|
||||
case QUERY_EVENT:
|
||||
if (check_database(((Query_log_event*)ev)->db))
|
||||
goto end;
|
||||
ev->print(result_file, short_form, last_event_info);
|
||||
ev->print(result_file, short_form, pos, last_event_info);
|
||||
break;
|
||||
case CREATE_FILE_EVENT:
|
||||
{
|
||||
@ -547,7 +551,8 @@ int process_event(LAST_EVENT_INFO *last_event_info, Log_event *ev,
|
||||
filename and use LOCAL), prepared in the 'case EXEC_LOAD_EVENT'
|
||||
below.
|
||||
*/
|
||||
ce->print(result_file, short_form, last_event_info, TRUE);
|
||||
ce->print(result_file, short_form, pos, last_event_info, TRUE);
|
||||
|
||||
// If this binlog is not 3.23 ; why this test??
|
||||
if (description_event->binlog_version >= 3)
|
||||
{
|
||||
@ -558,13 +563,13 @@ int process_event(LAST_EVENT_INFO *last_event_info, Log_event *ev,
|
||||
break;
|
||||
}
|
||||
case APPEND_BLOCK_EVENT:
|
||||
ev->print(result_file, short_form, last_event_info);
|
||||
ev->print(result_file, short_form, pos, last_event_info);
|
||||
if (load_processor.process((Append_block_log_event*) ev))
|
||||
break; // Error
|
||||
break;
|
||||
case EXEC_LOAD_EVENT:
|
||||
{
|
||||
ev->print(result_file, short_form, last_event_info);
|
||||
ev->print(result_file, short_form, pos, last_event_info);
|
||||
Execute_load_log_event *exv= (Execute_load_log_event*)ev;
|
||||
Create_file_log_event *ce= load_processor.grab_event(exv->file_id);
|
||||
/*
|
||||
@ -574,7 +579,7 @@ int process_event(LAST_EVENT_INFO *last_event_info, Log_event *ev,
|
||||
*/
|
||||
if (ce)
|
||||
{
|
||||
ce->print(result_file, short_form, last_event_info, TRUE);
|
||||
ce->print(result_file, short_form, pos, last_event_info, TRUE);
|
||||
my_free((char*)ce->fname,MYF(MY_WME));
|
||||
delete ce;
|
||||
}
|
||||
@ -586,7 +591,7 @@ Create_file event for file_id: %u\n",exv->file_id);
|
||||
case FORMAT_DESCRIPTION_EVENT:
|
||||
delete description_event;
|
||||
description_event= (Format_description_log_event*) ev;
|
||||
ev->print(result_file, short_form, last_event_info);
|
||||
ev->print(result_file, short_form, pos, last_event_info);
|
||||
/*
|
||||
We don't want this event to be deleted now, so let's hide it (I
|
||||
(Guilhem) should later see if this triggers a non-serious Valgrind
|
||||
@ -596,7 +601,7 @@ Create_file event for file_id: %u\n",exv->file_id);
|
||||
ev= 0;
|
||||
break;
|
||||
case BEGIN_LOAD_QUERY_EVENT:
|
||||
ev->print(result_file, short_form, last_event_info);
|
||||
ev->print(result_file, short_form, pos, last_event_info);
|
||||
load_processor.process((Begin_load_query_log_event*) ev);
|
||||
break;
|
||||
case EXECUTE_LOAD_QUERY_EVENT:
|
||||
@ -613,7 +618,7 @@ Create_file event for file_id: %u\n",exv->file_id);
|
||||
|
||||
if (fname)
|
||||
{
|
||||
exlq->print(result_file, short_form, last_event_info, fname);
|
||||
exlq->print(result_file, short_form, pos, last_event_info, fname);
|
||||
my_free(fname, MYF(MY_WME));
|
||||
}
|
||||
else
|
||||
@ -622,7 +627,7 @@ Begin_load_query event for file_id: %u\n", exlq->file_id);
|
||||
break;
|
||||
}
|
||||
default:
|
||||
ev->print(result_file, short_form, last_event_info);
|
||||
ev->print(result_file, short_form, pos, last_event_info);
|
||||
}
|
||||
}
|
||||
|
||||
@ -669,6 +674,8 @@ static struct my_option my_long_options[] =
|
||||
0, 0},
|
||||
{"help", '?', "Display this help and exit.",
|
||||
0, 0, 0, GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0},
|
||||
{"hexdump", 'H', "Augment output with hexadecimal and ascii data dump.",
|
||||
0, 0, 0, GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0},
|
||||
{"host", 'h', "Get the binlog from server.", (gptr*) &host, (gptr*) &host,
|
||||
0, GET_STR_ALLOC, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
|
||||
{"offset", 'o', "Skip the first N entries.", (gptr*) &offset, (gptr*) &offset,
|
||||
@ -848,6 +855,9 @@ get_one_option(int optid, const struct my_option *opt __attribute__((unused)),
|
||||
case 'd':
|
||||
one_database = 1;
|
||||
break;
|
||||
case 'H':
|
||||
opt_hexdump= 1;
|
||||
break;
|
||||
case 'p':
|
||||
if (argument)
|
||||
{
|
||||
|
134
sql/log_event.cc
134
sql/log_event.cc
@ -24,6 +24,8 @@
|
||||
#include "mysql_priv.h"
|
||||
#include "slave.h"
|
||||
#include <my_dir.h>
|
||||
#else
|
||||
#include <ctype.h> /* For isalnum() */
|
||||
#endif /* MYSQL_CLIENT */
|
||||
|
||||
#define log_cs &my_charset_latin1
|
||||
@ -881,15 +883,58 @@ Log_event* Log_event::read_log_event(const char* buf, uint event_len,
|
||||
Log_event::print_header()
|
||||
*/
|
||||
|
||||
void Log_event::print_header(FILE* file)
|
||||
void Log_event::print_header(FILE* file, my_off_t start_pos)
|
||||
{
|
||||
char llbuff[22];
|
||||
fputc('#', file);
|
||||
print_timestamp(file);
|
||||
fprintf(file, " server id %d end_log_pos %s ", server_id,
|
||||
llstr(log_pos,llbuff));
|
||||
|
||||
if (start_pos)
|
||||
{
|
||||
fprintf(file, "\n");
|
||||
unsigned char *ptr= (unsigned char*)temp_buf;
|
||||
my_off_t i;
|
||||
|
||||
char position[8+1] = {0};
|
||||
char b[3+1] = {0};
|
||||
char hex_string[16*3+1+1] = {0};
|
||||
char char_string[16+1] = {0};
|
||||
|
||||
for (i= 0; i < (log_pos-start_pos); i++, ptr++)
|
||||
{
|
||||
if (i % 16 == 0)
|
||||
snprintf(position, sizeof(position), "%.8x",
|
||||
(unsigned int) (start_pos+i));
|
||||
|
||||
snprintf(b, sizeof(b), "%02X ", *ptr);
|
||||
strncat(hex_string, b, sizeof(hex_string)-strlen(hex_string)-1);
|
||||
|
||||
snprintf(b, sizeof(b), "%c", isalnum(*ptr) ? *ptr : '.');
|
||||
strncat(char_string, b, sizeof(char_string)-strlen(char_string)-1);
|
||||
|
||||
if (i % 16 == 15)
|
||||
{
|
||||
fprintf(file, "# %8.8s %-48.48s |%16s|\n",
|
||||
position, hex_string, char_string);
|
||||
hex_string[0] = 0;
|
||||
char_string[0] = 0;
|
||||
}
|
||||
else if (i % 8 == 7)
|
||||
{
|
||||
/* Middle space */
|
||||
strncat(hex_string, " ", sizeof(hex_string)-strlen(hex_string)-1);
|
||||
}
|
||||
}
|
||||
|
||||
if (strlen(hex_string)) {
|
||||
printf("# %8.8s %-48.48s |%s|\n# ", position, hex_string, char_string);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
Log_event::print_timestamp()
|
||||
*/
|
||||
@ -1373,6 +1418,7 @@ Query_log_event::Query_log_event(const char* buf, uint event_len,
|
||||
|
||||
#ifdef MYSQL_CLIENT
|
||||
void Query_log_event::print_query_header(FILE* file, bool short_form,
|
||||
my_off_t start_pos,
|
||||
LAST_EVENT_INFO* last_event_info)
|
||||
{
|
||||
// TODO: print the catalog ??
|
||||
@ -1382,7 +1428,7 @@ void Query_log_event::print_query_header(FILE* file, bool short_form,
|
||||
|
||||
if (!short_form)
|
||||
{
|
||||
print_header(file);
|
||||
print_header(file, start_pos);
|
||||
fprintf(file, "\t%s\tthread_id=%lu\texec_time=%lu\terror_code=%d\n",
|
||||
get_type_str(), (ulong) thread_id, (ulong) exec_time, error_code);
|
||||
}
|
||||
@ -1503,10 +1549,10 @@ void Query_log_event::print_query_header(FILE* file, bool short_form,
|
||||
}
|
||||
|
||||
|
||||
void Query_log_event::print(FILE* file, bool short_form,
|
||||
void Query_log_event::print(FILE* file, bool short_form, my_off_t start_pos,
|
||||
LAST_EVENT_INFO* last_event_info)
|
||||
{
|
||||
print_query_header(file, short_form, last_event_info);
|
||||
print_query_header(file, short_form, start_pos, last_event_info);
|
||||
my_fwrite(file, (byte*) query, q_len, MYF(MY_NABP | MY_WME));
|
||||
fputs(";\n", file);
|
||||
}
|
||||
@ -1804,11 +1850,12 @@ void Start_log_event_v3::pack_info(Protocol *protocol)
|
||||
*/
|
||||
|
||||
#ifdef MYSQL_CLIENT
|
||||
void Start_log_event_v3::print(FILE* file, bool short_form, LAST_EVENT_INFO* last_event_info)
|
||||
void Start_log_event_v3::print(FILE* file, bool short_form, my_off_t start_pos,
|
||||
LAST_EVENT_INFO* last_event_info)
|
||||
{
|
||||
if (!short_form)
|
||||
{
|
||||
print_header(file);
|
||||
print_header(file, start_pos);
|
||||
fprintf(file, "\tStart: binlog v %d, server v %s created ", binlog_version,
|
||||
server_version);
|
||||
print_timestamp(file);
|
||||
@ -2532,19 +2579,20 @@ int Load_log_event::copy_log_event(const char *buf, ulong event_len,
|
||||
*/
|
||||
|
||||
#ifdef MYSQL_CLIENT
|
||||
void Load_log_event::print(FILE* file, bool short_form, LAST_EVENT_INFO* last_event_info)
|
||||
void Load_log_event::print(FILE* file, bool short_form, my_off_t start_pos,
|
||||
LAST_EVENT_INFO* last_event_info)
|
||||
{
|
||||
print(file, short_form, last_event_info, 0);
|
||||
print(file, short_form, start_pos, last_event_info, 0);
|
||||
}
|
||||
|
||||
|
||||
void Load_log_event::print(FILE* file, bool short_form, LAST_EVENT_INFO* last_event_info,
|
||||
bool commented)
|
||||
void Load_log_event::print(FILE* file, bool short_form, my_off_t start_pos,
|
||||
LAST_EVENT_INFO* last_event_info, bool commented)
|
||||
{
|
||||
DBUG_ENTER("Load_log_event::print");
|
||||
if (!short_form)
|
||||
{
|
||||
print_header(file);
|
||||
print_header(file, start_pos);
|
||||
fprintf(file, "\tQuery\tthread_id=%ld\texec_time=%ld\n",
|
||||
thread_id, exec_time);
|
||||
}
|
||||
@ -2949,13 +2997,14 @@ void Rotate_log_event::pack_info(Protocol *protocol)
|
||||
*/
|
||||
|
||||
#ifdef MYSQL_CLIENT
|
||||
void Rotate_log_event::print(FILE* file, bool short_form, LAST_EVENT_INFO* last_event_info)
|
||||
void Rotate_log_event::print(FILE* file, bool short_form, my_off_t start_pos,
|
||||
LAST_EVENT_INFO* last_event_info)
|
||||
{
|
||||
char buf[22];
|
||||
|
||||
if (short_form)
|
||||
return;
|
||||
print_header(file);
|
||||
print_header(file, start_pos);
|
||||
fprintf(file, "\tRotate to ");
|
||||
if (new_log_ident)
|
||||
my_fwrite(file, (byte*) new_log_ident, (uint)ident_len,
|
||||
@ -3151,7 +3200,7 @@ bool Intvar_log_event::write(IO_CACHE* file)
|
||||
*/
|
||||
|
||||
#ifdef MYSQL_CLIENT
|
||||
void Intvar_log_event::print(FILE* file, bool short_form,
|
||||
void Intvar_log_event::print(FILE* file, bool short_form, my_off_t start_pos,
|
||||
LAST_EVENT_INFO* last_event_info)
|
||||
{
|
||||
char llbuff[22];
|
||||
@ -3160,7 +3209,7 @@ void Intvar_log_event::print(FILE* file, bool short_form,
|
||||
|
||||
if (!short_form)
|
||||
{
|
||||
print_header(file);
|
||||
print_header(file, start_pos);
|
||||
fprintf(file, "\tIntvar\n");
|
||||
}
|
||||
|
||||
@ -3241,12 +3290,13 @@ bool Rand_log_event::write(IO_CACHE* file)
|
||||
|
||||
|
||||
#ifdef MYSQL_CLIENT
|
||||
void Rand_log_event::print(FILE* file, bool short_form, LAST_EVENT_INFO* last_event_info)
|
||||
void Rand_log_event::print(FILE* file, bool short_form, my_off_t start_pos,
|
||||
LAST_EVENT_INFO* last_event_info)
|
||||
{
|
||||
char llbuff[22],llbuff2[22];
|
||||
if (!short_form)
|
||||
{
|
||||
print_header(file);
|
||||
print_header(file, start_pos);
|
||||
fprintf(file, "\tRand\n");
|
||||
}
|
||||
fprintf(file, "SET @@RAND_SEED1=%s, @@RAND_SEED2=%s;\n",
|
||||
@ -3311,14 +3361,15 @@ bool Xid_log_event::write(IO_CACHE* file)
|
||||
|
||||
|
||||
#ifdef MYSQL_CLIENT
|
||||
void Xid_log_event::print(FILE* file, bool short_form, LAST_EVENT_INFO* last_event_info)
|
||||
void Xid_log_event::print(FILE* file, bool short_form, my_off_t start_pos,
|
||||
LAST_EVENT_INFO* last_event_info)
|
||||
{
|
||||
if (!short_form)
|
||||
{
|
||||
char buf[64];
|
||||
longlong10_to_str(xid, buf, 10);
|
||||
|
||||
print_header(file);
|
||||
print_header(file, start_pos);
|
||||
fprintf(file, "\tXid = %s\n", buf);
|
||||
fflush(file);
|
||||
}
|
||||
@ -3509,11 +3560,12 @@ bool User_var_log_event::write(IO_CACHE* file)
|
||||
*/
|
||||
|
||||
#ifdef MYSQL_CLIENT
|
||||
void User_var_log_event::print(FILE* file, bool short_form, LAST_EVENT_INFO* last_event_info)
|
||||
void User_var_log_event::print(FILE* file, bool short_form, my_off_t start_pos,
|
||||
LAST_EVENT_INFO* last_event_info)
|
||||
{
|
||||
if (!short_form)
|
||||
{
|
||||
print_header(file);
|
||||
print_header(file, start_pos);
|
||||
fprintf(file, "\tUser_var\n");
|
||||
}
|
||||
|
||||
@ -3684,11 +3736,12 @@ int User_var_log_event::exec_event(struct st_relay_log_info* rli)
|
||||
|
||||
#ifdef HAVE_REPLICATION
|
||||
#ifdef MYSQL_CLIENT
|
||||
void Unknown_log_event::print(FILE* file, bool short_form, LAST_EVENT_INFO* last_event_info)
|
||||
void Unknown_log_event::print(FILE* file, bool short_form, my_off_t start_pos,
|
||||
LAST_EVENT_INFO* last_event_info)
|
||||
{
|
||||
if (short_form)
|
||||
return;
|
||||
print_header(file);
|
||||
print_header(file, start_pos);
|
||||
fputc('\n', file);
|
||||
fprintf(file, "# %s", "Unknown event\n");
|
||||
}
|
||||
@ -3755,12 +3808,13 @@ Slave_log_event::~Slave_log_event()
|
||||
|
||||
|
||||
#ifdef MYSQL_CLIENT
|
||||
void Slave_log_event::print(FILE* file, bool short_form, LAST_EVENT_INFO* last_event_info)
|
||||
void Slave_log_event::print(FILE* file, bool short_form, my_off_t start_pos,
|
||||
LAST_EVENT_INFO* last_event_info)
|
||||
{
|
||||
char llbuff[22];
|
||||
if (short_form)
|
||||
return;
|
||||
print_header(file);
|
||||
print_header(file, start_pos);
|
||||
fputc('\n', file);
|
||||
fprintf(file, "\
|
||||
Slave: master_host: '%s' master_port: %d master_log: '%s' master_pos: %s\n",
|
||||
@ -3840,12 +3894,13 @@ int Slave_log_event::exec_event(struct st_relay_log_info* rli)
|
||||
*/
|
||||
|
||||
#ifdef MYSQL_CLIENT
|
||||
void Stop_log_event::print(FILE* file, bool short_form, LAST_EVENT_INFO* last_event_info)
|
||||
void Stop_log_event::print(FILE* file, bool short_form, my_off_t start_pos,
|
||||
LAST_EVENT_INFO* last_event_info)
|
||||
{
|
||||
if (short_form)
|
||||
return;
|
||||
|
||||
print_header(file);
|
||||
print_header(file, start_pos);
|
||||
fprintf(file, "\tStop\n");
|
||||
fflush(file);
|
||||
}
|
||||
@ -4019,19 +4074,20 @@ Create_file_log_event::Create_file_log_event(const char* buf, uint len,
|
||||
*/
|
||||
|
||||
#ifdef MYSQL_CLIENT
|
||||
void Create_file_log_event::print(FILE* file, bool short_form,
|
||||
void Create_file_log_event::print(FILE* file, bool short_form, my_off_t start_pos,
|
||||
LAST_EVENT_INFO* last_event_info, bool enable_local)
|
||||
{
|
||||
if (short_form)
|
||||
{
|
||||
if (enable_local && check_fname_outside_temp_buf())
|
||||
Load_log_event::print(file, 1, last_event_info);
|
||||
Load_log_event::print(file, 1, start_pos, last_event_info);
|
||||
return;
|
||||
}
|
||||
|
||||
if (enable_local)
|
||||
{
|
||||
Load_log_event::print(file, short_form, last_event_info, !check_fname_outside_temp_buf());
|
||||
Load_log_event::print(file, short_form, start_pos, last_event_info,
|
||||
!check_fname_outside_temp_buf());
|
||||
/*
|
||||
That one is for "file_id: etc" below: in mysqlbinlog we want the #, in
|
||||
SHOW BINLOG EVENTS we don't.
|
||||
@ -4044,9 +4100,10 @@ void Create_file_log_event::print(FILE* file, bool short_form,
|
||||
|
||||
|
||||
void Create_file_log_event::print(FILE* file, bool short_form,
|
||||
my_off_t start_pos,
|
||||
LAST_EVENT_INFO* last_event_info)
|
||||
{
|
||||
print(file,short_form,last_event_info,0);
|
||||
print(file, short_form, start_pos, last_event_info, 0);
|
||||
}
|
||||
#endif /* MYSQL_CLIENT */
|
||||
|
||||
@ -4207,11 +4264,12 @@ bool Append_block_log_event::write(IO_CACHE* file)
|
||||
|
||||
#ifdef MYSQL_CLIENT
|
||||
void Append_block_log_event::print(FILE* file, bool short_form,
|
||||
my_off_t start_pos,
|
||||
LAST_EVENT_INFO* last_event_info)
|
||||
{
|
||||
if (short_form)
|
||||
return;
|
||||
print_header(file);
|
||||
print_header(file, start_pos);
|
||||
fputc('\n', file);
|
||||
fprintf(file, "#%s: file_id: %d block_len: %d\n",
|
||||
get_type_str(), file_id, block_len);
|
||||
@ -4351,11 +4409,12 @@ bool Delete_file_log_event::write(IO_CACHE* file)
|
||||
|
||||
#ifdef MYSQL_CLIENT
|
||||
void Delete_file_log_event::print(FILE* file, bool short_form,
|
||||
my_off_t start_pos,
|
||||
LAST_EVENT_INFO* last_event_info)
|
||||
{
|
||||
if (short_form)
|
||||
return;
|
||||
print_header(file);
|
||||
print_header(file, start_pos);
|
||||
fputc('\n', file);
|
||||
fprintf(file, "#Delete_file: file_id=%u\n", file_id);
|
||||
}
|
||||
@ -4447,11 +4506,12 @@ bool Execute_load_log_event::write(IO_CACHE* file)
|
||||
|
||||
#ifdef MYSQL_CLIENT
|
||||
void Execute_load_log_event::print(FILE* file, bool short_form,
|
||||
my_off_t start_pos,
|
||||
LAST_EVENT_INFO* last_event_info)
|
||||
{
|
||||
if (short_form)
|
||||
return;
|
||||
print_header(file);
|
||||
print_header(file, start_pos);
|
||||
fputc('\n', file);
|
||||
fprintf(file, "#Exec_load: file_id=%d\n",
|
||||
file_id);
|
||||
@ -4659,17 +4719,19 @@ Execute_load_query_log_event::write_post_header_for_derived(IO_CACHE* file)
|
||||
|
||||
#ifdef MYSQL_CLIENT
|
||||
void Execute_load_query_log_event::print(FILE* file, bool short_form,
|
||||
my_off_t start_pos,
|
||||
LAST_EVENT_INFO* last_event_info)
|
||||
{
|
||||
print(file, short_form, last_event_info, 0);
|
||||
print(file, short_form, start_pos, last_event_info, 0);
|
||||
}
|
||||
|
||||
|
||||
void Execute_load_query_log_event::print(FILE* file, bool short_form,
|
||||
my_off_t start_pos,
|
||||
LAST_EVENT_INFO* last_event_info,
|
||||
const char *local_fname)
|
||||
{
|
||||
print_query_header(file, short_form, last_event_info);
|
||||
print_query_header(file, short_form, start_pos, last_event_info);
|
||||
|
||||
if (local_fname)
|
||||
{
|
||||
|
@ -589,9 +589,10 @@ public:
|
||||
static Log_event* read_log_event(IO_CACHE* file,
|
||||
const Format_description_log_event *description_event);
|
||||
/* print*() functions are used by mysqlbinlog */
|
||||
virtual void print(FILE* file, bool short_form = 0, LAST_EVENT_INFO* last_event_info= 0) = 0;
|
||||
virtual void print(FILE* file, bool short_form= 0, my_off_t start_pos= 0,
|
||||
LAST_EVENT_INFO* last_event_info= 0) = 0;
|
||||
void print_timestamp(FILE* file, time_t *ts = 0);
|
||||
void print_header(FILE* file);
|
||||
void print_header(FILE* file, my_off_t start_pos= 0);
|
||||
#endif
|
||||
|
||||
static void *operator new(size_t size)
|
||||
@ -751,8 +752,11 @@ public:
|
||||
uint32 q_len_arg);
|
||||
#endif /* HAVE_REPLICATION */
|
||||
#else
|
||||
void print_query_header(FILE* file, bool short_form = 0, LAST_EVENT_INFO* last_event_info= 0);
|
||||
void print(FILE* file, bool short_form = 0, LAST_EVENT_INFO* last_event_info= 0);
|
||||
void print_query_header(FILE* file, bool short_form= 0,
|
||||
my_off_t start_pos= 0,
|
||||
LAST_EVENT_INFO* last_event_info= 0);
|
||||
void print(FILE* file, bool short_form= 0, my_off_t start_pos= 0,
|
||||
LAST_EVENT_INFO* last_event_info= 0);
|
||||
#endif
|
||||
|
||||
Query_log_event(const char* buf, uint event_len,
|
||||
@ -806,7 +810,8 @@ public:
|
||||
void pack_info(Protocol* protocol);
|
||||
int exec_event(struct st_relay_log_info* rli);
|
||||
#else
|
||||
void print(FILE* file, bool short_form = 0, LAST_EVENT_INFO* last_event_info= 0);
|
||||
void print(FILE* file, bool short_form= 0, my_off_t start_pos= 0,
|
||||
LAST_EVENT_INFO* last_event_info= 0);
|
||||
#endif
|
||||
|
||||
Slave_log_event(const char* buf, uint event_len);
|
||||
@ -894,8 +899,10 @@ public:
|
||||
bool use_rli_only_for_errors);
|
||||
#endif /* HAVE_REPLICATION */
|
||||
#else
|
||||
void print(FILE* file, bool short_form = 0, LAST_EVENT_INFO* last_event_info = 0);
|
||||
void print(FILE* file, bool short_form, LAST_EVENT_INFO* last_event_info, bool commented);
|
||||
void print(FILE* file, bool short_form= 0, my_off_t start_pos= 0,
|
||||
LAST_EVENT_INFO* last_event_info = 0);
|
||||
void print(FILE* file, bool short_form, my_off_t start_pos,
|
||||
LAST_EVENT_INFO* last_event_info, bool commented);
|
||||
#endif
|
||||
|
||||
/*
|
||||
@ -984,7 +991,8 @@ public:
|
||||
#endif /* HAVE_REPLICATION */
|
||||
#else
|
||||
Start_log_event_v3() {}
|
||||
void print(FILE* file, bool short_form = 0, LAST_EVENT_INFO* last_event_info= 0);
|
||||
void print(FILE* file, bool short_form= 0, my_off_t start_pos= 0,
|
||||
LAST_EVENT_INFO* last_event_info= 0);
|
||||
#endif
|
||||
|
||||
Start_log_event_v3(const char* buf,
|
||||
@ -1079,7 +1087,8 @@ public:
|
||||
int exec_event(struct st_relay_log_info* rli);
|
||||
#endif /* HAVE_REPLICATION */
|
||||
#else
|
||||
void print(FILE* file, bool short_form = 0, LAST_EVENT_INFO* last_event_info= 0);
|
||||
void print(FILE* file, bool short_form= 0, my_off_t start_pos= 0,
|
||||
LAST_EVENT_INFO* last_event_info= 0);
|
||||
#endif
|
||||
|
||||
Intvar_log_event(const char* buf, const Format_description_log_event* description_event);
|
||||
@ -1120,7 +1129,8 @@ class Rand_log_event: public Log_event
|
||||
int exec_event(struct st_relay_log_info* rli);
|
||||
#endif /* HAVE_REPLICATION */
|
||||
#else
|
||||
void print(FILE* file, bool short_form = 0, LAST_EVENT_INFO* last_event_info= 0);
|
||||
void print(FILE* file, bool short_form= 0, my_off_t start_pos= 0,
|
||||
LAST_EVENT_INFO* last_event_info= 0);
|
||||
#endif
|
||||
|
||||
Rand_log_event(const char* buf, const Format_description_log_event* description_event);
|
||||
@ -1157,7 +1167,8 @@ class Xid_log_event: public Log_event
|
||||
int exec_event(struct st_relay_log_info* rli);
|
||||
#endif /* HAVE_REPLICATION */
|
||||
#else
|
||||
void print(FILE* file, bool short_form = 0, LAST_EVENT_INFO* last_event_info= 0);
|
||||
void print(FILE* file, bool short_form= 0, my_off_t start_pos= 0,
|
||||
LAST_EVENT_INFO* last_event_info= 0);
|
||||
#endif
|
||||
|
||||
Xid_log_event(const char* buf, const Format_description_log_event* description_event);
|
||||
@ -1199,7 +1210,8 @@ public:
|
||||
void pack_info(Protocol* protocol);
|
||||
int exec_event(struct st_relay_log_info* rli);
|
||||
#else
|
||||
void print(FILE* file, bool short_form = 0, LAST_EVENT_INFO* last_event_info= 0);
|
||||
void print(FILE* file, bool short_form= 0, my_off_t start_pos= 0,
|
||||
LAST_EVENT_INFO* last_event_info= 0);
|
||||
#endif
|
||||
|
||||
User_var_log_event(const char* buf, const Format_description_log_event* description_event);
|
||||
@ -1225,7 +1237,8 @@ public:
|
||||
{}
|
||||
int exec_event(struct st_relay_log_info* rli);
|
||||
#else
|
||||
void print(FILE* file, bool short_form = 0, LAST_EVENT_INFO* last_event_info= 0);
|
||||
void print(FILE* file, bool short_form= 0, my_off_t start_pos= 0,
|
||||
LAST_EVENT_INFO* last_event_info= 0);
|
||||
#endif
|
||||
|
||||
Stop_log_event(const char* buf, const Format_description_log_event* description_event):
|
||||
@ -1264,7 +1277,8 @@ public:
|
||||
int exec_event(struct st_relay_log_info* rli);
|
||||
#endif /* HAVE_REPLICATION */
|
||||
#else
|
||||
void print(FILE* file, bool short_form = 0, LAST_EVENT_INFO* last_event_info= 0);
|
||||
void print(FILE* file, bool short_form= 0, my_off_t start_pos= 0,
|
||||
LAST_EVENT_INFO* last_event_info= 0);
|
||||
#endif
|
||||
|
||||
Rotate_log_event(const char* buf, uint event_len,
|
||||
@ -1317,8 +1331,10 @@ public:
|
||||
int exec_event(struct st_relay_log_info* rli);
|
||||
#endif /* HAVE_REPLICATION */
|
||||
#else
|
||||
void print(FILE* file, bool short_form = 0, LAST_EVENT_INFO* last_event_info= 0);
|
||||
void print(FILE* file, bool short_form, LAST_EVENT_INFO* last_event_info, bool enable_local);
|
||||
void print(FILE* file, bool short_form= 0, my_off_t start_pos= 0,
|
||||
LAST_EVENT_INFO* last_event_info= 0);
|
||||
void print(FILE* file, bool short_form, my_off_t start_pos,
|
||||
LAST_EVENT_INFO* last_event_info, bool enable_local);
|
||||
#endif
|
||||
|
||||
Create_file_log_event(const char* buf, uint event_len,
|
||||
@ -1385,7 +1401,8 @@ public:
|
||||
virtual int get_create_or_append() const;
|
||||
#endif /* HAVE_REPLICATION */
|
||||
#else
|
||||
void print(FILE* file, bool short_form = 0, LAST_EVENT_INFO* last_event_info= 0);
|
||||
void print(FILE* file, bool short_form= 0, my_off_t start_pos= 0,
|
||||
LAST_EVENT_INFO* last_event_info= 0);
|
||||
#endif
|
||||
|
||||
Append_block_log_event(const char* buf, uint event_len,
|
||||
@ -1420,8 +1437,10 @@ public:
|
||||
int exec_event(struct st_relay_log_info* rli);
|
||||
#endif /* HAVE_REPLICATION */
|
||||
#else
|
||||
void print(FILE* file, bool short_form = 0, LAST_EVENT_INFO* last_event_info= 0);
|
||||
void print(FILE* file, bool short_form, LAST_EVENT_INFO* last_event_info, bool enable_local);
|
||||
void print(FILE* file, bool short_form= 0, my_off_t start_pos= 0,
|
||||
LAST_EVENT_INFO* last_event_info= 0);
|
||||
void print(FILE* file, bool short_form, my_off_t start_pos,
|
||||
LAST_EVENT_INFO* last_event_info, bool enable_local);
|
||||
#endif
|
||||
|
||||
Delete_file_log_event(const char* buf, uint event_len,
|
||||
@ -1456,7 +1475,8 @@ public:
|
||||
int exec_event(struct st_relay_log_info* rli);
|
||||
#endif /* HAVE_REPLICATION */
|
||||
#else
|
||||
void print(FILE* file, bool short_form = 0, LAST_EVENT_INFO* last_event_info= 0);
|
||||
void print(FILE* file, bool short_form= 0, my_off_t start_pos= 0,
|
||||
LAST_EVENT_INFO* last_event_info= 0);
|
||||
#endif
|
||||
|
||||
Execute_load_log_event(const char* buf, uint event_len,
|
||||
@ -1541,11 +1561,11 @@ public:
|
||||
int exec_event(struct st_relay_log_info* rli);
|
||||
#endif /* HAVE_REPLICATION */
|
||||
#else
|
||||
void print(FILE* file, bool short_form = 0,
|
||||
void print(FILE* file, bool short_form= 0, my_off_t start_pos= 0,
|
||||
LAST_EVENT_INFO* last_event_info= 0);
|
||||
/* Prints the query as LOAD DATA LOCAL and with rewritten filename */
|
||||
void print(FILE* file, bool short_form, LAST_EVENT_INFO* last_event_info,
|
||||
const char *local_fname);
|
||||
void print(FILE* file, bool short_form, my_off_t start_pos,
|
||||
LAST_EVENT_INFO* last_event_info, const char *local_fname);
|
||||
#endif
|
||||
Execute_load_query_log_event(const char* buf, uint event_len,
|
||||
const Format_description_log_event *description_event);
|
||||
@ -1574,7 +1594,8 @@ public:
|
||||
Log_event(buf, description_event)
|
||||
{}
|
||||
~Unknown_log_event() {}
|
||||
void print(FILE* file, bool short_form= 0, LAST_EVENT_INFO* last_event_info= 0);
|
||||
void print(FILE* file, bool short_form= 0, my_off_t start_pos= 0,
|
||||
LAST_EVENT_INFO* last_event_info= 0);
|
||||
Log_event_type get_type_code() { return UNKNOWN_EVENT;}
|
||||
bool is_valid() const { return 1; }
|
||||
};
|
||||
|
Reference in New Issue
Block a user