summaryrefslogtreecommitdiff
path: root/sql/handler.cc
diff options
context:
space:
mode:
authorNirbhay Choubey <nirbhay@mariadb.com>2016-02-24 23:32:37 -0500
committerNirbhay Choubey <nirbhay@mariadb.com>2016-02-24 23:32:37 -0500
commit0251232f8c3bca33b4dd15d6668105f3de9d024d (patch)
tree35e47f8d51eaf2dcc4caab4b69749bae5a9f2de7 /sql/handler.cc
parentb05158cc10a75196b5c0bf8dad9360608a2dd5b9 (diff)
downloadmariadb-git-0251232f8c3bca33b4dd15d6668105f3de9d024d.tar.gz
Fix to ensure updates in gtid_slave_state table do not get binlogged.
Also, renamed wsrep_skip_append_keys to wsrep_ignore_table. Test case : galera.galera_as_slave_gtid.test
Diffstat (limited to 'sql/handler.cc')
-rw-r--r--sql/handler.cc12
1 files changed, 9 insertions, 3 deletions
diff --git a/sql/handler.cc b/sql/handler.cc
index 4e6dfb7bfae..748ea21b4f7 100644
--- a/sql/handler.cc
+++ b/sql/handler.cc
@@ -5723,10 +5723,16 @@ static int binlog_log_row(TABLE* table,
bool error= 0;
THD *const thd= table->in_use;
- /* only InnoDB tables will be replicated through binlog emulation */
- if (WSREP_EMULATE_BINLOG(thd) &&
- table->file->partition_ht()->db_type != DB_TYPE_INNODB)
+#ifdef WITH_WSREP
+ /*
+ Only InnoDB tables will be replicated through binlog emulation. Also
+ updates in mysql.gtid_slave_state table should not be binlogged.
+ */
+ if ((WSREP_EMULATE_BINLOG(thd) &&
+ table->file->partition_ht()->db_type != DB_TYPE_INNODB) ||
+ (thd->wsrep_ignore_table == true))
return 0;
+#endif /* WITH_WSREP */
if (check_table_binlog_row_based(thd, table))
{