[MDEV-31100] [Draft] rpl.rpl_semi_sync_after_sync_row failed in BB with Slave SQL error 'Index for table 't2' is corrupt; try to repair it' Created: 2023-04-20  Updated: 2023-04-20

Status: Open
Project: MariaDB Server
Component/s: Replication, Tests
Affects Version/s: 11.1
Fix Version/s: None

Type: Bug Priority: Major
Reporter: Angelique Sklavounos (Inactive) Assignee: Angelique Sklavounos (Inactive)
Resolution: Unresolved Votes: 0
Labels: None


 Description   

https://buildbot.mariadb.org/#/builders/138/builds/11005

11.1 54c11273e

rpl.rpl_semi_sync_after_sync_row 'innodb,row' w11 [ fail ]
        Test ended at 2023-04-19 01:07:57
 
CURRENT_TEST: rpl.rpl_semi_sync_after_sync_row
analyze: sync_with_master
mysqltest: In included file "/home/buildbot/aarch64-debian-sid/build/mysql-test/suite/rpl/include/rpl_semi_sync.inc": 
included from /home/buildbot/aarch64-debian-sid/build/mysql-test/suite/rpl/t/rpl_semi_sync.test at line 2:
included from /home/buildbot/aarch64-debian-sid/build/mysql-test/suite/rpl/t/rpl_semi_sync_after_sync_row.test at line 3:
At line 198: sync_slave_with_master failed: 'select master_pos_wait('master-bin.000001', 3125, 300, '')' returned NULL indicating slave SQL thread failure
 
The result from queries just before the failure was:
< snip >
# BUG#50157
# semi-sync replication crashes when replicating a transaction which
# include 'CREATE TEMPORARY TABLE `MyISAM_t` SELECT * FROM `Innodb_t` ;
connection master;
SET SESSION AUTOCOMMIT= 0;
CREATE TABLE t2(c1 INT) ENGINE=innodb;
connection slave;
connection master;
BEGIN;
 
# Even though it is in a transaction, this statement is binlogged into binlog
# file immediately.
CREATE TEMPORARY TABLE t3 SELECT c1 FROM t2 where 1=1;
 
# These statements will not be binlogged until the transaction is committed
INSERT INTO t2 VALUES(11);
INSERT INTO t2 VALUES(22);
COMMIT;
DROP TABLE t2, t3;
SET SESSION AUTOCOMMIT= 1;
 
More results from queries before failure can be found in /home/buildbot/aarch64-debian-sid/build/mysql-test/var/11/log/rpl_semi_sync_after_sync_row.log

2023-04-19  1:07:55 390 [Warning] Timeout waiting for reply of binlog (file: master-bin.000001, pos: 484), semi-sync up to file , position 0.
2023-04-19  1:07:55 302 [ERROR] InnoDB: Cannot save index statistics for table `test`.`t1`, index `GEN_CLUST_INDEX`, stat name "n_diff_pfx01": Data structure corruption
2023-04-19  1:07:55 0 [ERROR] InnoDB: Cannot save index statistics for table `test`.`t1`, index `GEN_CLUST_INDEX`, stat name "n_diff_pfx01": Data structure corruption
2023-04-19  1:07:55 302 [ERROR] InnoDB: Cannot save index statistics for table `test`.`t2`, index `GEN_CLUST_INDEX`, stat name "n_diff_pfx01": Data structure corruption
2023-04-19  1:07:55 302 [ERROR] InnoDB: DROP TABLE `test`.`t2`: Data structure corruption
2023-04-19  1:07:55 302 [ERROR] mariadbd: Index for table 't2' is corrupt; try to repair it
2023-04-19  1:07:55 302 [Warning] Slave: Index for table 't2' is corrupt; try to repair it Error_code: 1034

**** SHOW SLAVE STATUS on default ****
SHOW SLAVE STATUS;
Slave_IO_State	Waiting for master to send event
Master_Host	127.0.0.1
Master_User	root
Master_Port	16240
Connect_Retry	1
Master_Log_File	master-bin.000001
Read_Master_Log_Pos	3125
Relay_Log_File	slave-relay-bin.000002
Relay_Log_Pos	3266
Relay_Master_Log_File	master-bin.000001
Slave_IO_Running	Yes
Slave_SQL_Running	No
Replicate_Rewrite_DB	
Replicate_Do_DB	
Replicate_Ignore_DB	
Replicate_Do_Table	
Replicate_Ignore_Table	
Replicate_Wild_Do_Table	
Replicate_Wild_Ignore_Table	
Last_Errno	1034
Last_Error	Error 'Index for table 't2' is corrupt; try to repair it' on query. Default database: 'test'. Query: 'DROP TABLE `t2` /* generated by server */'
Skip_Counter	0
Exec_Master_Log_Pos	2966
Relay_Log_Space	3734
Until_Condition	None
Until_Log_File	
Until_Log_Pos	0
Master_SSL_Allowed	No
Master_SSL_CA_File	
Master_SSL_CA_Path	
Master_SSL_Cert	
Master_SSL_Cipher	
Master_SSL_Key	
Seconds_Behind_Master	NULL
Master_SSL_Verify_Server_Cert	No
Last_IO_Errno	0
Last_IO_Error	
Last_SQL_Errno	1034
Last_SQL_Error	Error 'Index for table 't2' is corrupt; try to repair it' on query. Default database: 'test'. Query: 'DROP TABLE `t2` /* generated by server */'
Replicate_Ignore_Server_Ids	
Master_Server_Id	1
Master_SSL_Crl	
Master_SSL_Crlpath	
Using_Gtid	Slave_Pos
Gtid_IO_Pos	0-1-14
Replicate_Do_Domain_Ids	
Replicate_Ignore_Domain_Ids	
Parallel_Mode	optimistic
SQL_Delay	0
SQL_Remaining_Delay	NULL
Slave_SQL_Running_State	
Slave_DDL_Groups	1431
Slave_Non_Transactional_Groups	1091
Slave_Transactional_Groups	384


Generated at Thu Feb 08 10:21:17 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.