mirror of
https://github.com/MariaDB/server.git
synced 2025-01-23 07:14:17 +01:00
7be4bc4e55
The following is an excerption from the WL. 1. Change so that MIXED is default format 1.1 to change the default for command line --binlog-format 1.2 to alter global_system_variables.binlog_format calculation basing on command line --binlog-format parameter and its default. 2. Change test suite so that more testing is done by MIXED format. 2.1 to check if there are test cases requiring --binlog-foramt=statement via `source include/have_binlog_format_statement.inc' and affected by altering the latter to be "mixed". 2.2 to check the content of such vulnerable cases to find if extending to the mixed does not modify results. In that case simply substitute source arguments as explained. 2.3 if a test in mixed mode deals with features triggering row-binlogging then if necessary we can switch explicitly to statement mode or create another test to run with non-recommended STATEMENT mode Particullarily, extracting INSERT DELAYED binlogging subtest for statement mode is performed, and the snippet is moved into a separate test file. Note that since now all three modes verify this use case through 3 different tests. No changes in item 3 of HLD appeared to be needed.
22 lines
893 B
Text
22 lines
893 B
Text
# Test of binlogging of INSERT_ID with INSERT DELAYED
|
|
create table t1 (a int not null auto_increment, primary key (a)) engine=myisam;
|
|
# First, avoid BUG#20627:
|
|
set @@session.auto_increment_increment=1, @@session.auto_increment_offset=1;
|
|
# Verify that only one INSERT_ID event is binlogged.
|
|
# Note, that because of WL#3368 mixed mode binlog records RBR events for the delayed
|
|
insert delayed into t1 values (207);
|
|
|
|
# We use sleeps between statements, that's the only way to get a
|
|
# repeatable binlog in a normal test run and under Valgrind.
|
|
# It may be that the "binlog missing rows" of BUG#20821 shows up
|
|
# here.
|
|
sleep 2;
|
|
insert delayed into t1 values (null);
|
|
sleep 2;
|
|
insert delayed into t1 values (300);
|
|
sleep 2; # time for the delayed queries to reach disk
|
|
select * from t1;
|
|
--replace_column 2 # 5 #
|
|
--replace_regex /table_id: [0-9]+/table_id: #/
|
|
show binlog events from 102;
|
|
drop table t1;
|