diff options
author | unknown <cmiller@zippy.(none)> | 2006-06-12 08:54:45 -0400 |
---|---|---|
committer | unknown <cmiller@zippy.(none)> | 2006-06-12 08:54:45 -0400 |
commit | 75ad6773c554c35a3929e6858cb2317defc17b23 (patch) | |
tree | b71c8e383c0806357a95ccd2fec43a371a133ceb /mysql-test/r/bdb.result | |
parent | 48723fcbfabc6c955ee76dacfc92e2ca362865ce (diff) | |
download | mariadb-git-75ad6773c554c35a3929e6858cb2317defc17b23.tar.gz |
Bug #16206: Superfluous COMMIT event in binlog when updating BDB in autocommit
mode
This is a modification of serg's and guilhem's suggestion in the bug report,
in that it also causes the transaction log to be written to disc.
mysql-test/r/bdb.result:
Add result.
mysql-test/t/bdb.test:
Add test
sql/log.cc:
Create a log-committing event that itself won't be written to the log when
we're in autocommit mode.
sql/log_event.cc:
Add a new subclass of Query_log_event that doesn't write itself to the log, for
cases where we only want to flush out the transaction and not also write about
this event.
sql/log_event.h:
Add a new subclass of Query_log_event that doesn't write itself to the log, for
cases where we only want to flush out the transaction and not also write about
this event.
Diffstat (limited to 'mysql-test/r/bdb.result')
-rw-r--r-- | mysql-test/r/bdb.result | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/mysql-test/r/bdb.result b/mysql-test/r/bdb.result index af6319afe99..588644a6c66 100644 --- a/mysql-test/r/bdb.result +++ b/mysql-test/r/bdb.result @@ -1928,4 +1928,38 @@ create table t1 (a int) engine=bdb; commit; alter table t1 add primary key(a); drop table t1; +set autocommit=1; +reset master; +create table bug16206 (a int) engine= blackhole; +insert into bug16206 values(1); +start transaction; +insert into bug16206 values(2); +commit; +show binlog events; +Log_name Pos Event_type Server_id End_log_pos Info +f n Format_desc 1 n Server ver: VERSION, Binlog ver: 4 +f n Query 1 n use `test`; create table bug16206 (a int) engine= blackhole +f n Query 1 n use `test`; insert into bug16206 values(1) +f n Query 1 n use `test`; insert into bug16206 values(2) +drop table bug16206; +reset master; +create table bug16206 (a int) engine= bdb; +insert into bug16206 values(0); +insert into bug16206 values(1); +start transaction; +insert into bug16206 values(2); +commit; +insert into bug16206 values(3); +show binlog events; +Log_name Pos Event_type Server_id End_log_pos Info +f n Format_desc 1 n Server ver: VERSION, Binlog ver: 4 +f n Query 1 n use `test`; create table bug16206 (a int) engine= bdb +f n Query 1 n use `test`; insert into bug16206 values(0) +f n Query 1 n use `test`; insert into bug16206 values(1) +f n Query 1 n use `test`; BEGIN +f n Query 1 n use `test`; insert into bug16206 values(2) +f n Query 1 n use `test`; COMMIT +f n Query 1 n use `test`; insert into bug16206 values(3) +drop table bug16206; +set autocommit=0; End of 5.0 tests |