mirror of
https://github.com/MariaDB/server.git
synced 2025-01-18 04:53:01 +01:00
Bug #30594 rpl.rpl_skip_error is nondeterministic
Non-determinism in the tests was due to results of SBR are different from those gained with row binlog format. Because tests effectively verify skipping only ER_DUP_ENTRY it is explicitly required to run the test on in mixed and stmt binlog format. ER_DUP_ENTRY is automatically ignored when happened in RBR because of implicit rule favoring reentrant reading from binlog rule which means that a Write_rows_log_event overwrites a slave's row if the one has the same primary key. If future we might have skipping error due to applying of row-based events. The comments added saying a new file would be needed for that: rpl_row_skip_error or smth. mysql-test/suite/rpl/r/rpl_skip_error.result: new results mysql-test/suite/rpl/t/rpl_skip_error-slave.opt: wrong error code that can not happen in the test removed. mysql-test/suite/rpl/t/rpl_skip_error.test: enforcing the test is to skip only errors due to SBR. The current test does not check anything for RBR as ignorable ER_DUP_ENTRY does make sense only for SBR.
This commit is contained in:
parent
3f284594be
commit
ba7570b110
3 changed files with 10 additions and 3 deletions
|
@ -29,8 +29,7 @@ select * from t1;
|
|||
a
|
||||
1
|
||||
2
|
||||
3
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master Master_SSL_Verify_Server_Cert Last_IO_Errno Last_IO_Error Last_SQL_Errno Last_SQL_Error
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 786 # # master-bin.000001 Yes Yes 0 0 786 # None 0 No # No 0 0
|
||||
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 851 # # master-bin.000001 Yes Yes 0 0 851 # None 0 No # No 0 0
|
||||
drop table t1;
|
||||
|
|
|
@ -1 +1 @@
|
|||
--slave-skip-error=1062,1582
|
||||
--slave-skip-error=1062
|
||||
|
|
|
@ -3,6 +3,14 @@
|
|||
#########################################
|
||||
# Note that errors are ignored by opt file.
|
||||
source include/master-slave.inc;
|
||||
source include/have_binlog_format_mixed_or_statement.inc;
|
||||
|
||||
#
|
||||
# Bug #30594
|
||||
# Skipping error due to applying Row-based repliation events
|
||||
# should be checked with another test file
|
||||
# consider names like rpl_row_skip_error
|
||||
#
|
||||
|
||||
create table t1 (n int not null primary key);
|
||||
save_master_pos;
|
||||
|
|
Loading…
Reference in a new issue