mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
Bug#31455 mysqlbinlog don't print user readable info about RBR events
Implementing -v command line parameter to mysqlbinlog to decode and print row events. mysql-test/include/mysqlbinlog_row_engine.inc mysql-test/r/mysqlbinlog_row.result mysql-test/r/mysqlbinlog_row_big.result mysql-test/r/mysqlbinlog_row_innodb.result mysql-test/r/mysqlbinlog_row_myisam.result mysql-test/r/mysqlbinlog_row_trans.result mysql-test/t/mysqlbinlog_row.test mysql-test/t/mysqlbinlog_row_big.test mysql-test/t/mysqlbinlog_row_innodb.test mysql-test/t/mysqlbinlog_row_myisam.test mysql-test/t/mysqlbinlog_row_trans.test Adding tests client/Makefile.am Adding new files to symlink client/mysqlbinlog.cc Adding -v option sql/log_event.cc Impelentations of the new methods sql/log_event.h Declaration of the new methods and member sql/mysql_priv.h Adding new function prototype sql/rpl_tblmap.cc Adding pre-processor conditions sql/rpl_tblmap.h Adding pre-processor conditions sql/rpl_utility.h Adding pre-processor conditions sql/sql_base.cc Adding reset_table_id_sequence() function. sql/sql_repl.cc Resetting table_id on "RESET MASTER" .bzrignore Ignoring new symlinked files
This commit is contained in:
@ -34,6 +34,14 @@
|
||||
|
||||
#include <my_bitmap.h>
|
||||
#include "rpl_constants.h"
|
||||
|
||||
#ifdef MYSQL_CLIENT
|
||||
#include "rpl_utility.h"
|
||||
#include "hash.h"
|
||||
#include "rpl_tblmap.h"
|
||||
#include "rpl_tblmap.cc"
|
||||
#endif
|
||||
|
||||
#ifndef MYSQL_CLIENT
|
||||
#include "rpl_record.h"
|
||||
#include "rpl_reporting.h"
|
||||
@ -634,6 +642,11 @@ typedef struct st_print_event_info
|
||||
uint8 common_header_len;
|
||||
char delimiter[16];
|
||||
|
||||
#ifdef MYSQL_CLIENT
|
||||
uint verbose;
|
||||
table_mapping m_table_map;
|
||||
#endif
|
||||
|
||||
/*
|
||||
These two caches are used by the row-based replication events to
|
||||
collect the header information and the main body of the events
|
||||
@ -3235,6 +3248,17 @@ public:
|
||||
|
||||
~Table_map_log_event();
|
||||
|
||||
#ifdef MYSQL_CLIENT
|
||||
table_def *create_table_def()
|
||||
{
|
||||
return new table_def(m_coltype, m_colcnt, m_field_metadata,
|
||||
m_field_metadata_size, m_null_bits);
|
||||
}
|
||||
ulong get_table_id() const { return m_table_id; }
|
||||
const char *get_table_name() const { return m_tblnam; }
|
||||
const char *get_db_name() const { return m_dbnam; }
|
||||
#endif
|
||||
|
||||
virtual Log_event_type get_type_code() { return TABLE_MAP_EVENT; }
|
||||
virtual bool is_valid() const { return m_memory != NULL; /* we check malloc */ }
|
||||
|
||||
@ -3365,6 +3389,12 @@ public:
|
||||
#ifdef MYSQL_CLIENT
|
||||
/* not for direct call, each derived has its own ::print() */
|
||||
virtual void print(FILE *file, PRINT_EVENT_INFO *print_event_info)= 0;
|
||||
void print_verbose(IO_CACHE *file,
|
||||
PRINT_EVENT_INFO *print_event_info);
|
||||
size_t print_verbose_one_row(IO_CACHE *file, table_def *td,
|
||||
PRINT_EVENT_INFO *print_event_info,
|
||||
MY_BITMAP *cols_bitmap,
|
||||
const uchar *ptr, const uchar *prefix);
|
||||
#endif
|
||||
|
||||
#ifndef MYSQL_CLIENT
|
||||
|
Reference in New Issue
Block a user