[MDEV-23103] rpl.rpl_gtid_delete_domain failed in buildbot Created: 2020-07-06  Updated: 2021-01-12  Resolved: 2020-12-09

Status: Closed
Project: MariaDB Server
Component/s: Tests
Affects Version/s: 10.1, 10.2, 10.3, 10.4, 10.5
Fix Version/s: 10.2.37, 10.3.28, 10.4.18, 10.5.9

Type: Bug Priority: Major
Reporter: Alice Sherepa Assignee: Alice Sherepa
Resolution: Fixed Votes: 0
Labels: None

Issue Links:
Duplicate
is duplicated by MDEV-14463 rpl.rpl_gtid_delete_domain failed in ... Closed
Relates
relates to MDEV-26 Global transaction ID Closed

 Description   

10.2 dba7e1e8e14254c9de61e74b7e68c http://buildbot.askmonty.org/buildbot/builders/kvm-bintar-centos7-amd64-openssl/builds/1632/steps/mtr/logs/stdio

rpl.rpl_gtid_delete_domain 'mix'         w4 [ fail ]
        Test ended at 2020-07-02 04:17:33
 
CURRENT_TEST: rpl.rpl_gtid_delete_domain
mysqltest: At line 58: query 'FLUSH BINARY LOGS DELETE_DOMAIN_ID=($extra_domain_id)' failed: 1076: Could not delete gtid domain. Reason: binlog files may contain gtids from the domain ('11') being deleted. Make sure to first purge those files.
 
The result from queries just before the failure was:
< snip >
connection slave;
call mtr.add_suppression("connecting slave requested to start from.*which is not in the master's binlog");
include/stop_slave.inc
CHANGE MASTER TO master_use_gtid=slave_pos;
connection master;
SET @@SESSION.gtid_domain_id=11;
SET @@SESSION.server_id=111;
SET @@SESSION.gtid_seq_no=1;
INSERT INTO t SET a=1;
connection slave;
SET @save.gtid_slave_pos=@@global.gtid_slave_pos;
SET @@global.gtid_slave_pos=concat(@@global.gtid_slave_pos,  ",", 11, "-", 111, "-", 1 + 1);
Warnings:
Warning	1947	Specified GTID 0-1-1 conflicts with the binary log which contains a more recent GTID 0-2-2. If MASTER_GTID_POS=CURRENT_POS is used, the binlog position will override the new value of @@gtid_slave_pos
START SLAVE IO_THREAD;
include/wait_for_slave_io_error.inc [errno=1236]
connection master;
FLUSH BINARY LOGS;
PURGE BINARY LOGS TO 'master-bin.000002';;
FLUSH BINARY LOGS DELETE_DOMAIN_ID=(11);
 
More results from queries before failure can be found in /usr/local/mariadb-10.2.33-linux-x86_64/mysql-test/var/4/log/rpl_gtid_delete_domain.log
 
 - saving '/usr/local/mariadb-10.2.33-linux-x86_64/mysql-test/var/4/log/rpl.rpl_gtid_delete_domain-mix/' to '/usr/local/mariadb-10.2.33-linux-x86_64/mysql-test/var/log/rpl.rpl_gtid_delete_domain-mix/'



 Comments   
Comment by Alice Sherepa [ 2020-09-18 ]

on 10.4 http://buildbot.askmonty.org/buildbot/builders/kvm-deb-focal-ppc64le/builds/697/steps/mtr/logs/stdio

Comment by Alice Sherepa [ 2020-10-29 ]

http://buildbot.askmonty.org/buildbot/builders/kvm-deb-jessie-amd64/builds/10974/steps/mtr/logs/stdio

rpl.rpl_gtid_delete_domain 'mix'         w4 [ fail ]
        Test ended at 2020-10-29 07:06:17
 
CURRENT_TEST: rpl.rpl_gtid_delete_domain
mysqltest: In included file "./include/wait_for_slave_param.inc": 
included from ./include/wait_for_slave_io_to_start.inc at line 40:
included from ./include/wait_for_slave_to_start.inc at line 26:
included from ./include/start_slave.inc at line 35:
included from /usr/share/mysql/mysql-test/suite/rpl/t/rpl_gtid_delete_domain.test at line 74:
At line 119: Timeout in include/wait_for_slave_param.inc
 
The result from queries just before the failure was:
< snip >
**** SHOW BINARY LOGS on server_1 ****
SHOW BINARY LOGS;
Log_name	File_size
master-bin.000001	711
master-bin.000002	403
 
**** SHOW BINLOG EVENTS on server_1 ****
binlog_name = 'master-bin.000002'
SHOW BINLOG EVENTS IN 'master-bin.000002';
Log_name	Pos	Event_type	Server_id	End_log_pos	Info
master-bin.000002	4	Format_desc	1	256	Server ver: 10.2.35-MariaDB-10.2.35+maria~jessie-log, Binlog ver: 4
master-bin.000002	256	Gtid_list	1	315	[11-111-1,0-1-1]
master-bin.000002	315	Binlog_checkpoint	1	359	master-bin.000001
master-bin.000002	359	Binlog_checkpoint	1	403	master-bin.000002
 
**** SHOW RELAYLOG EVENTS on server_1 ****
relaylog_name = 'No such row'
SHOW RELAYLOG EVENTS IN 'No such row';
Log_name	Pos	Event_type	Server_id	End_log_pos	Info
connection slave;

The test was rewritten so that if FLUSH BINARY LOGS DELETE_DOMAIN_ID=($extra_domain_id) ends up with an error 1076, then debug info is printed.

here in the test (l.54)

# adjust the master binlog state
FLUSH BINARY LOGS;
--let $purge_to_binlog= query_get_value(SHOW MASTER STATUS, File, 1)
--eval PURGE BINARY LOGS TO '$purge_to_binlog';

after FLUSH BINARY LOGS we should get master-bin.000002
but perhaps SHOW MASTER STATUS had still master-bin.000001 - so PURGE BINARY LOGS TO 'master-bin.000001' didn't do anything
and as a result FLUSH BINARY LOGS DELETE_DOMAIN_ID=11 failed. (SHOW BINARY LOGS on server_1 still shows master-bin.000001)

Comment by Alice Sherepa [ 2020-12-09 ]

fixed by commit c048053c8af5083d35f

Generated at Thu Feb 08 09:19:52 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.