mirror of
https://github.com/MariaDB/server.git
synced 2025-01-17 20:42:30 +01:00
44efa9c18b
Now, every transaction (including autocommit transactions) starts with a BEGIN and ends with a COMMIT/ROLLBACK in the binlog. Added a test case, and updated lots of test case result files. mysql-test/r/multi_update.result: Updated result file mysql-test/r/sp_trans_log.result: Updated result file mysql-test/suite/binlog/r/binlog_innodb.result: Updated result file mysql-test/suite/binlog/r/binlog_multi_engine.result: Updated result file mysql-test/suite/binlog/r/binlog_stm_blackhole.result: Updated result file mysql-test/suite/binlog/r/binlog_stm_mix_innodb_myisam.result: Updated result file mysql-test/suite/ndb/r/ndb_binlog_format.result: Updated result file mysql-test/suite/rpl/r/rpl_innodb_mixed_dml.result: Updated result file mysql-test/suite/rpl/r/rpl_row_charset_innodb.result: Updated result file mysql-test/suite/rpl/r/rpl_row_create_table.result: Updated result file mysql-test/suite/rpl/r/rpl_row_log_innodb.result: Updated result file mysql-test/suite/rpl/r/rpl_switch_stm_row_mixed.result: Updated result file mysql-test/suite/rpl/r/rpl_truncate_3innodb.result: Updated result file mysql-test/suite/rpl/t/rpl_row_create_table.test: Updated result file mysql-test/suite/rpl_ndb/r/rpl_ndb_stm_innodb.result: Updated result file sql/log.cc: - Always write BEGIN and COMMIT around statements, even in autocommit mode. - Added comments for binlog_commit and binlog_rollback. sql/log_event.cc: Added debug trigger to avoid writing xid events to the binlog. mysql-test/suite/rpl_ndb/r/rpl_ndb_transaction.result: Results for new test case mysql-test/suite/rpl_ndb/t/rpl_ndb_transaction-master.opt: Options for new test case mysql-test/suite/rpl_ndb/t/rpl_ndb_transaction-slave.opt: Options for new test case mysql-test/suite/rpl_ndb/t/rpl_ndb_transaction.test: Added new test case.
28 lines
925 B
Text
28 lines
925 B
Text
drop function if exists bug23333|
|
|
drop table if exists t1,t2|
|
|
CREATE TABLE t1 (a int NOT NULL auto_increment primary key) ENGINE=MyISAM|
|
|
CREATE TABLE t2 (a int NOT NULL auto_increment, b int, PRIMARY KEY (a)) ENGINE=InnoDB|
|
|
insert into t2 values (1,1)|
|
|
create function bug23333()
|
|
RETURNS int(11)
|
|
DETERMINISTIC
|
|
begin
|
|
insert into t1 values (null);
|
|
select count(*) from t1 into @a;
|
|
return @a;
|
|
end|
|
|
reset master|
|
|
insert into t2 values (bug23333(),1)|
|
|
ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
|
|
show binlog events from 106 /* with fixes for #23333 will show there is the query */|
|
|
Log_name Pos Event_type Server_id End_log_pos Info
|
|
master-bin.000001 # Query 1 # #
|
|
master-bin.000001 # Table_map 1 # #
|
|
master-bin.000001 # Table_map 1 # #
|
|
master-bin.000001 # Write_rows 1 # #
|
|
master-bin.000001 # Query 1 # #
|
|
select count(*),@a from t1 /* must be 1,1 */|
|
|
count(*) @a
|
|
1 1
|
|
drop table t1,t2;
|
|
drop function if exists bug23333;
|