mariadb/mysql-test/suite
Mats Kindahl 43e9d5b3d5 Bug #40116: Uncommited changes are replicated and stay on slave
after rollback on master

When starting a transaction with a statement containing changes
to both transactional tables and non-transactional tables, the
statement is considered as non-transactional and is therefore
written directly to the binary log. This behaviour was present
in 5.0, and has propagated to 5.1.

If a trigger containing a change of a non-transactional table is
added to a transactional table, any changes to the transactional
table is "tainted" as non-transactional.

This patch solves the problem by removing the existing "hack" that
allows non-transactional statements appearing first in a transaction
to be written directly to the binary log. Instead, anything inside
a transaction is treaded as part of the transaction and not written
to the binary log until the transaction is committed.

mysql-test/suite/rpl/t/rpl_row_create_table.test:
  Removing positions from SHOW BINLOG EVENTS and using
  reset_master_and_slave to start on a fresh binary log each time.
mysql-test/suite/rpl/t/rpl_slave_skip.test:
  Adding explicit commit in AUTOCOMMIT=0 to make test work correctly.
mysql-test/suite/rpl/t/rpl_trigger.test:
  Adding test case for BUG#40116.
sql/log.cc:
  Changing commit logic in binlog_commit() to only commit when
  committing a real transaction or committing a punch transaction.
2008-12-03 20:55:49 +01:00
..
binlog Bug #40116: Uncommited changes are replicated and stay on slave 2008-12-03 20:55:49 +01:00
bugs BUG#37426: RBR breaks for CHAR() UTF-8 fields > 85 chars 2008-06-30 22:11:18 +02:00
funcs_1 Merge 5.0 -> 5.1 of fix for Bug#38427 2008-10-02 14:12:08 +02:00
funcs_2 Upmerge 5.0 -> 5.1 2008-07-09 20:55:23 +02:00
im Move instance manager tests to it's own suite 2007-08-29 19:02:33 +02:00
jp Bug#36597 Testsuite "jp": Suspicious results for some tests using sjis 2008-07-29 10:43:57 +05:00
large_tests Bug#27029 alter table ... enable keys crashes mysqld on large table 2007-06-21 12:45:56 -04:00
manual manual merge for bug_29136, bug#29309. 2007-10-13 23:12:50 +03:00
ndb Bug #38370: The test ndb.ndb_index_ordered fails with the community features on 2008-10-03 13:10:09 +03:00
ndb_team Merge 5.0 -> 5.1 2008-09-30 15:32:35 -04:00
parts merged 5.1-5.1.29 -> 5.1-bugteam 2008-10-01 17:48:38 +03:00
rpl Bug #40116: Uncommited changes are replicated and stay on slave 2008-12-03 20:55:49 +01:00
rpl_ndb Bug #40004 Replication failure with no PK + no indexes 2008-10-20 20:50:08 +02:00
stress Merge trift2.:/MySQL/M51/mysql-5.1 2008-02-22 16:14:27 +01:00
sys_vars Final fix for bug#36522 in 5.1. This new fix was necessary due to fix of bug 37708. 2008-07-23 16:06:44 +02:00