diff options
author | Sergey Petrunya <psergey@askmonty.org> | 2013-08-02 18:12:09 +0400 |
---|---|---|
committer | Sergey Petrunya <psergey@askmonty.org> | 2013-08-02 18:12:09 +0400 |
commit | 5c49041b170f6d7785008c30513c38df37d60e3b (patch) | |
tree | ebe70d65b297cd17b562389ecc1456c229af1db4 /sql/rpl_gtid.cc | |
parent | 0f985c6407f331d7be9fd98af2104ca14ec6adf8 (diff) | |
download | mariadb-git-5c49041b170f6d7785008c30513c38df37d60e3b.tar.gz |
MDEV-4816: rpl.rpl_trunc_temp fails in 10.0-serg
Temorary fix for a number of replication tests (rpl.rpl_temp_table_mix_row
rpl.rpl_trunc_temp rpl.rpl_current_user rpl.rpl_gtid_master_promote):
- THD::decide_logging_format() should not assume that mysql.gtid_slave_pos is
a non-replicated table. This used to cause unintended behavior for COMMIT
statement: replication would switch to row-based, etc.
The question of what should be done when a user issues a statement that
explicitly modifies mysql.gtid_slave_pos table remains open.
Diffstat (limited to 'sql/rpl_gtid.cc')
-rw-r--r-- | sql/rpl_gtid.cc | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/sql/rpl_gtid.cc b/sql/rpl_gtid.cc index 4783fb763c8..05ac79a8f64 100644 --- a/sql/rpl_gtid.cc +++ b/sql/rpl_gtid.cc @@ -210,6 +210,7 @@ rpl_slave_state::truncate_state_table(THD *thd) { table= tlist.table; table->no_replicate= 1; + table->s->is_gtid_slave_pos= TRUE; // TEMPORARY CODE err= table->file->ha_truncate(); if (err) @@ -346,6 +347,7 @@ rpl_slave_state::record_gtid(THD *thd, const rpl_gtid *gtid, uint64 sub_id, goto end; table->no_replicate= 1; + table->s->is_gtid_slave_pos= TRUE; // TEMPORARY CODE if (!in_transaction) thd->variables.option_bits&= ~(ulonglong)(OPTION_NOT_AUTOCOMMIT|OPTION_BEGIN); |