summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--client/mysqlbinlog.cc28
-rw-r--r--sql/log_event.cc147
-rw-r--r--sql/log_event.h69
3 files changed, 173 insertions, 71 deletions
diff --git a/client/mysqlbinlog.cc b/client/mysqlbinlog.cc
index 5345d6d0f54..7ae563c7209 100644
--- a/client/mysqlbinlog.cc
+++ b/client/mysqlbinlog.cc
@@ -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 */
+ if (!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,9 @@ 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 event dump.",
+ (gptr*) &opt_hexdump, (gptr*) &opt_hexdump, 0, GET_BOOL, 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,
diff --git a/sql/log_event.cc b/sql/log_event.cc
index 5cb4c289a10..c704e81007a 100644
--- a/sql/log_event.cc
+++ b/sql/log_event.cc
@@ -881,15 +881,71 @@ 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 hexdump_from)
{
char llbuff[22];
fputc('#', file);
print_timestamp(file);
fprintf(file, " server id %d end_log_pos %s ", server_id,
- llstr(log_pos,llbuff));
+ llstr(log_pos,llbuff));
+
+ /* mysqlbinlog --hexdump */
+ if (hexdump_from)
+ {
+ fprintf(file, "\n");
+ uchar *ptr= (uchar*)temp_buf;
+ my_off_t size=
+ uint4korr(ptr + EVENT_LEN_OFFSET) - LOG_EVENT_MINIMAL_HEADER_LEN;
+ my_off_t i;
+
+ /* Header len * 4 >= header len * (2 chars + space + extra space) */
+ char *h, hex_string[LOG_EVENT_MINIMAL_HEADER_LEN*4]= {0};
+ char *c, char_string[16+1]= {0};
+
+ /* Common header of event */
+ fprintf(file, "# Position Timestamp Type Master ID "
+ "Size Master Pos Flags \n");
+ fprintf(file, "# %8.8lx %02x %02x %02x %02x %02x "
+ "%02x %02x %02x %02x %02x %02x %02x %02x "
+ "%02x %02x %02x %02x %02x %02x\n",
+ hexdump_from, ptr[0], ptr[1], ptr[2], ptr[3], ptr[4],
+ ptr[5], ptr[6], ptr[7], ptr[8], ptr[9], ptr[10], ptr[11],
+ ptr[12], ptr[13], ptr[14], ptr[15], ptr[16], ptr[17], ptr[18]);
+ ptr += LOG_EVENT_MINIMAL_HEADER_LEN;
+ hexdump_from += LOG_EVENT_MINIMAL_HEADER_LEN;
+
+ /* Rest of event (without common header) */
+ for (i= 0, c= char_string, h=hex_string;
+ i < size;
+ i++, ptr++)
+ {
+ my_snprintf(h, 4, "%02x ", *ptr);
+ h += 3;
+
+ *c++= my_isalnum(&my_charset_bin, *ptr) ? *ptr : '.';
+
+ if (i % 16 == 15)
+ {
+ fprintf(file, "# %8.8lx %-48.48s |%16s|\n",
+ hexdump_from + (i & 0xfffffff0), hex_string, char_string);
+ hex_string[0]= 0;
+ char_string[0]= 0;
+ c= char_string;
+ h= hex_string;
+ }
+ else if (i % 8 == 7) *h++ = ' ';
+ }
+ *c= '\0';
+
+ /* Non-full last line */
+ if (hex_string[0]) {
+ printf("# %8.8lx %-48.48s |%s|\n# ",
+ hexdump_from + (i & 0xfffffff0), hex_string, char_string);
+ }
+ }
}
+
/*
Log_event::print_timestamp()
*/
@@ -1373,6 +1429,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 hexdump_from,
LAST_EVENT_INFO* last_event_info)
{
// TODO: print the catalog ??
@@ -1382,7 +1439,7 @@ void Query_log_event::print_query_header(FILE* file, bool short_form,
if (!short_form)
{
- print_header(file);
+ print_header(file, hexdump_from);
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 +1560,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 hexdump_from,
LAST_EVENT_INFO* last_event_info)
{
- print_query_header(file, short_form, last_event_info);
+ print_query_header(file, short_form, hexdump_from, last_event_info);
my_fwrite(file, (byte*) query, q_len, MYF(MY_NABP | MY_WME));
fputs(";\n", file);
}
@@ -1804,11 +1861,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 hexdump_from,
+ LAST_EVENT_INFO* last_event_info)
{
if (!short_form)
{
- print_header(file);
+ print_header(file, hexdump_from);
fprintf(file, "\tStart: binlog v %d, server v %s created ", binlog_version,
server_version);
print_timestamp(file);
@@ -2532,19 +2590,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 hexdump_from,
+ LAST_EVENT_INFO* last_event_info)
{
- print(file, short_form, last_event_info, 0);
+ print(file, short_form, hexdump_from, 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 hexdump_from,
+ LAST_EVENT_INFO* last_event_info, bool commented)
{
DBUG_ENTER("Load_log_event::print");
if (!short_form)
{
- print_header(file);
+ print_header(file, hexdump_from);
fprintf(file, "\tQuery\tthread_id=%ld\texec_time=%ld\n",
thread_id, exec_time);
}
@@ -2949,13 +3008,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 hexdump_from,
+ LAST_EVENT_INFO* last_event_info)
{
char buf[22];
if (short_form)
return;
- print_header(file);
+ print_header(file, hexdump_from);
fprintf(file, "\tRotate to ");
if (new_log_ident)
my_fwrite(file, (byte*) new_log_ident, (uint)ident_len,
@@ -3151,7 +3211,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 hexdump_from,
LAST_EVENT_INFO* last_event_info)
{
char llbuff[22];
@@ -3160,7 +3220,7 @@ void Intvar_log_event::print(FILE* file, bool short_form,
if (!short_form)
{
- print_header(file);
+ print_header(file, hexdump_from);
fprintf(file, "\tIntvar\n");
}
@@ -3241,12 +3301,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 hexdump_from,
+ LAST_EVENT_INFO* last_event_info)
{
char llbuff[22],llbuff2[22];
if (!short_form)
{
- print_header(file);
+ print_header(file, hexdump_from);
fprintf(file, "\tRand\n");
}
fprintf(file, "SET @@RAND_SEED1=%s, @@RAND_SEED2=%s;\n",
@@ -3311,14 +3372,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 hexdump_from,
+ LAST_EVENT_INFO* last_event_info)
{
if (!short_form)
{
char buf[64];
longlong10_to_str(xid, buf, 10);
- print_header(file);
+ print_header(file, hexdump_from);
fprintf(file, "\tXid = %s\n", buf);
fflush(file);
}
@@ -3509,11 +3571,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 hexdump_from,
+ LAST_EVENT_INFO* last_event_info)
{
if (!short_form)
{
- print_header(file);
+ print_header(file, hexdump_from);
fprintf(file, "\tUser_var\n");
}
@@ -3684,11 +3747,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 hexdump_from,
+ LAST_EVENT_INFO* last_event_info)
{
if (short_form)
return;
- print_header(file);
+ print_header(file, hexdump_from);
fputc('\n', file);
fprintf(file, "# %s", "Unknown event\n");
}
@@ -3755,12 +3819,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 hexdump_from,
+ LAST_EVENT_INFO* last_event_info)
{
char llbuff[22];
if (short_form)
return;
- print_header(file);
+ print_header(file, hexdump_from);
fputc('\n', file);
fprintf(file, "\
Slave: master_host: '%s' master_port: %d master_log: '%s' master_pos: %s\n",
@@ -3840,12 +3905,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 hexdump_from,
+ LAST_EVENT_INFO* last_event_info)
{
if (short_form)
return;
- print_header(file);
+ print_header(file, hexdump_from);
fprintf(file, "\tStop\n");
fflush(file);
}
@@ -4019,19 +4085,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 hexdump_from,
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, hexdump_from, 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, hexdump_from, 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 +4111,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 hexdump_from,
LAST_EVENT_INFO* last_event_info)
{
- print(file,short_form,last_event_info,0);
+ print(file, short_form, hexdump_from, last_event_info, 0);
}
#endif /* MYSQL_CLIENT */
@@ -4207,11 +4275,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 hexdump_from,
LAST_EVENT_INFO* last_event_info)
{
if (short_form)
return;
- print_header(file);
+ print_header(file, hexdump_from);
fputc('\n', file);
fprintf(file, "#%s: file_id: %d block_len: %d\n",
get_type_str(), file_id, block_len);
@@ -4351,11 +4420,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 hexdump_from,
LAST_EVENT_INFO* last_event_info)
{
if (short_form)
return;
- print_header(file);
+ print_header(file, hexdump_from);
fputc('\n', file);
fprintf(file, "#Delete_file: file_id=%u\n", file_id);
}
@@ -4447,11 +4517,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 hexdump_from,
LAST_EVENT_INFO* last_event_info)
{
if (short_form)
return;
- print_header(file);
+ print_header(file, hexdump_from);
fputc('\n', file);
fprintf(file, "#Exec_load: file_id=%d\n",
file_id);
@@ -4659,17 +4730,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 hexdump_from,
LAST_EVENT_INFO* last_event_info)
{
- print(file, short_form, last_event_info, 0);
+ print(file, short_form, hexdump_from, last_event_info, 0);
}
void Execute_load_query_log_event::print(FILE* file, bool short_form,
+ my_off_t hexdump_from,
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, hexdump_from, last_event_info);
if (local_fname)
{
diff --git a/sql/log_event.h b/sql/log_event.h
index 29580589a34..9351e9b1148 100644
--- a/sql/log_event.h
+++ b/sql/log_event.h
@@ -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 hexdump_from= 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 hexdump_from= 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 hexdump_from= 0,
+ LAST_EVENT_INFO* last_event_info= 0);
+ void print(FILE* file, bool short_form= 0, my_off_t hexdump_from= 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 hexdump_from= 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 hexdump_from= 0,
+ LAST_EVENT_INFO* last_event_info = 0);
+ void print(FILE* file, bool short_form, my_off_t hexdump_from,
+ 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 hexdump_from= 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 hexdump_from= 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 hexdump_from= 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 hexdump_from= 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 hexdump_from= 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 hexdump_from= 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 hexdump_from= 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 hexdump_from= 0,
+ LAST_EVENT_INFO* last_event_info= 0);
+ void print(FILE* file, bool short_form, my_off_t hexdump_from,
+ 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 hexdump_from= 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 hexdump_from= 0,
+ LAST_EVENT_INFO* last_event_info= 0);
+ void print(FILE* file, bool short_form, my_off_t hexdump_from,
+ 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 hexdump_from= 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 hexdump_from= 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 hexdump_from,
+ 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 hexdump_from= 0,
+ LAST_EVENT_INFO* last_event_info= 0);
Log_event_type get_type_code() { return UNKNOWN_EVENT;}
bool is_valid() const { return 1; }
};