-
unknown authored
--- BUG#20265 (Replication of CREATE-SELECT does not work correctly): Fixing bug by making binary log handle statement transactions. The binary log transaction cache can now be truncated to remove events inserted during this statement or transaction. Also, the binary log participate in XA transaction handling, although not as a full 2pc resource. mysql-test/r/binlog_row_mix_innodb_myisam.result: Result change sql/log.cc: Making change to binlog_end_trans() to support that it can be called for statement transactions as well. sql/sql_class.h: Adding function THD::binlog_start_trans_and_stmt() to start a real transaction (if necessary) and also a statement transaction. sql/sql_insert.cc: I had forgotten to delete this line (it was already disabled using //; this line was not needed because we do the empty() every time we write to the binlog (in MYSQL_LOG::write()); t/binlog_stm_binlog.test already tests that the empty() indeed happens for INSERT DELAYED. --- Changes to use the statement transactions that the binary log now can handle.
89f45796