diff options
-rw-r--r-- | mysql-test/r/rpl_alter.result | 4 | ||||
-rw-r--r-- | mysql-test/t/rpl_alter.test | 21 | ||||
-rw-r--r-- | sql/sql_base.cc | 1 |
3 files changed, 26 insertions, 0 deletions
diff --git a/mysql-test/r/rpl_alter.result b/mysql-test/r/rpl_alter.result new file mode 100644 index 00000000000..7883e725e3a --- /dev/null +++ b/mysql-test/r/rpl_alter.result @@ -0,0 +1,4 @@ +n m +1 2 +n +45 diff --git a/mysql-test/t/rpl_alter.test b/mysql-test/t/rpl_alter.test new file mode 100644 index 00000000000..a65605f703e --- /dev/null +++ b/mysql-test/t/rpl_alter.test @@ -0,0 +1,21 @@ +source include/master-slave.inc; +connection master; +use test; +drop database if exists d1; +create database d1; +create table d1.t1 ( n int); +alter table d1.t1 add m int; +insert into d1.t1 values (1,2); +create table d1.t2 (n int); +insert into d1.t2 values (45); +rename table d1.t2 to d1.t3, d1.t1 to d1.t2; +save_master_pos; +connection slave; +sync_with_master; +select * from d1.t2; +select * from d1.t3; +connection master; +drop database d1; +save_master_pos; +connection slave; +sync_with_master; diff --git a/sql/sql_base.cc b/sql/sql_base.cc index e4a797efaaf..ee8c1097fb2 100644 --- a/sql/sql_base.cc +++ b/sql/sql_base.cc @@ -546,6 +546,7 @@ void close_temporary_tables(THD *thd) *--end = 0; // Remove last ',' thd->query_length = (uint)(end-query); Query_log_event qinfo(thd, query); + qinfo.error_code=0; mysql_bin_log.write(&qinfo); thd->query_length = save_query_len; } |