diff options
author | unknown <aelkin/elkin@koti.dsl.inet.fi> | 2008-02-04 16:37:41 +0200 |
---|---|---|
committer | unknown <aelkin/elkin@koti.dsl.inet.fi> | 2008-02-04 16:37:41 +0200 |
commit | 6210278628b834bfd599d461b0f5b515d4f085ee (patch) | |
tree | 800231611a6dfafed82a95a59d4e3df58ca8e15c /mysql-test/r/multi_update.result | |
parent | 7faa7d60aa3d7df5b0617103559d1e3df41dba0b (diff) | |
download | mariadb-git-6210278628b834bfd599d461b0f5b515d4f085ee.tar.gz |
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).
mysql-test/r/multi_update.result:
results changed - there is no ROLLBACK in binlog anymore as it should be
sql/sql_update.cc:
A wrong assumption on that there were modified transactional table,
which is nonsense at the very beginning of the query execution.
Diffstat (limited to 'mysql-test/r/multi_update.result')
-rw-r--r-- | mysql-test/r/multi_update.result | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/mysql-test/r/multi_update.result b/mysql-test/r/multi_update.result index 8a0eacd9eeb..7a12fc87bdc 100644 --- a/mysql-test/r/multi_update.result +++ b/mysql-test/r/multi_update.result @@ -545,7 +545,7 @@ a b 4 4 show master status /* there must be the UPDATE query event */; File Position Binlog_Do_DB Binlog_Ignore_DB -master-bin.000001 328 +master-bin.000001 189 delete from t1; delete from t2; insert into t1 values (1,2),(3,4),(4,4); @@ -555,7 +555,7 @@ UPDATE t2,t1 SET t2.a=t2.b where t2.a=t1.a; 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 343 +master-bin.000001 204 drop table t1, t2; drop table if exists t1, t2, t3; CREATE TABLE t1 (a int, PRIMARY KEY (a)); |