summaryrefslogtreecommitdiff
path: root/sql/log_event.h
diff options
context:
space:
mode:
authorAlexander Barkov <bar@mysql.com>2008-08-20 19:06:31 +0500
committerAlexander Barkov <bar@mysql.com>2008-08-20 19:06:31 +0500
commit0c5bc2eafc95cb20f332becd295c29be95149700 (patch)
tree9b01eca71e89e78891e200183ef0f206f42306ab /sql/log_event.h
parente4e99f1439cd46a5f96e39289e6bc4f74c86ce88 (diff)
downloadmariadb-git-0c5bc2eafc95cb20f332becd295c29be95149700.tar.gz
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
Diffstat (limited to 'sql/log_event.h')
-rw-r--r--sql/log_event.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/sql/log_event.h b/sql/log_event.h
index 76d92b23189..e1b00474361 100644
--- a/sql/log_event.h
+++ b/sql/log_event.h
@@ -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