Bug #33329 extraneous ROLLBACK in binlog on connection does not use trans tables
| Submitted: | 18 Dec 2007 9:47 | Modified: | 26 Mar 2008 19:05 |
|---|---|---|---|
| Reporter: | Andrei Elkin | Email Updates: | |
| Status: | Closed | Impact on me: | |
| Category: | MySQL Server: Replication | Severity: | S2 (Serious) |
| Version: | 5.0 | OS: | Any |
| Assigned to: | Andrei Elkin | CPU Architecture: | Any |
[18 Dec 2007 9:47]
Andrei Elkin
[25 Dec 2007 13:16]
Andrei Elkin
Taking to myself as there is the reported fixing plan (yet to be discussed).
[8 Jan 2008 17:06]
Konstantin Osipov
Susanne, tracing and logging includes the slow log, the general log, but does not include replication and the binary log.
[14 Jan 2008 13:28]
Joerg Bruehe
Reproduced in the release builds of 5.0.54 and 5.0.54a, full symptom is like this: multi_update [ fail ] --- /PATH/mysql-test/r/multi_update.result +++ /PATH/mysql-test/r/multi_update.reject @@ -545,7 +545,7 @@ 4 4 show master status /* there must be the UPDATE query event */; File Position Binlog_Do_DB Binlog_Ignore_DB -master-bin.000001 260 +master-bin.000001 189 delete from t1; delete from t2; insert into t1 values (1,2),(3,4),(4,4); @@ -555,7 +555,7 @@ ERROR 23000: Duplicate entry '4' for key 1 show master status /* there must be the UPDATE query event */; File Position Binlog_Do_DB Binlog_Ignore_DB -master-bin.000001 275 +master-bin.000001 204 drop table t1, t2; drop table if exists t1, t2, t3; CREATE TABLE t1 (a int, PRIMARY KEY (a));
[4 Feb 2008 14:38]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/41651 ChangeSet@1.2568, 2008-02-04 16:37:41+02:00, aelkin@koti.dsl.inet.fi +2 -0 Bug#33329 extraneous ROLLBACK in binlog on connection does not use trans tables There had been two issues. Rollback statement was recorded in binlog even though a multi-update had not modified any non-transactional table. The reason for this artifact was a false initial value of multi_update::transactional_tables. Yet another artifact that explained on the bug page is that `ha_autocommit_or_rollback' works differently depending on whether a transaction engine has been compiled in. Fixed: with setting multi_update::transactional_tables to zero at initialization time. Multi-update on non-trans table won't cause ROLLBACK in binlog with either compilation option. The 2nd mentioned artifact comprises a self-standing issue (to be reported separately).
[12 Feb 2008 10:42]
Andrei Elkin
Pushed to 5.0-rpl.
[14 Feb 2008 14:28]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/42280 ChangeSet@1.2580, 2008-02-14 16:28:32+02:00, aelkin@mysql1000.dsl.inet.fi +2 -0 bug#33329 extraneous ROLLBACK in binlog on connection does not use trans tables changes for an assert and an updated results file.
[25 Mar 2008 11:22]
Bugs System
Pushed into 5.0.60
[25 Mar 2008 11:23]
Bugs System
Pushed into 5.1.24-rc
[26 Mar 2008 19:01]
Bugs System
Pushed into 6.0.5-alpha
[26 Mar 2008 19:05]
Jon Stephens
Documented bugfix in the 5.0.60 and 5.1.24 changelogs as follows:
An extraneous ROLLBACK statement was written to the
binary log by a connection that did not use any transactional tables.
[2 Apr 2008 15:58]
Jon Stephens
Also noted fix in 5.1.23-ndb-6.3.11 changelog.
Portions of this website are copyright © 2001, 2002 The PHP Group
Page generated in 0.070 sec. using MySQL 8.4.7-u6-cloud
Timestamp references displayed by the system are UTC.
Content reproduced on this site is the property of the
respective copyright holders.
It is not reviewed in advance
by Oracle and does not necessarily represent the opinion of
Oracle or any other party.