All work

Select view

Select search mode

 
50 of 236

fb-mysql-8.0.36: unstable rocksdb_clone.remote_dml_gtid

Description

I noticed that rocksdb_clone.remote_dml_gtid is sometimes unstable. I can reproduce the issue by calling this test 4 times in 4 parallel threads. The output is:

In the above log we have 
InnoDB: Last MySQL Gtid ea79cbb0-49a6-11ef-9f4b-244bfede13f1:150
and
RocksDB: Last MySQL Gtid ea79cbb0-49a6-11ef-9f4b-244bfede13f1:151
what leads to crash with assertion because max_gtid.greater_than(*info->binlog_max_gtid)is true and is_binlog_advanced(info->binlog_file, *info->binlog_pos, binlog_file, binlog_pos)) is false:

Environment

None

Details

Assignee

Reporter

Priority

Created July 29, 2024 at 11:21 AM
Updated August 12, 2024 at 2:01 PM

Activity

Przemyslaw Skibinski 
August 12, 2024 at 1:47 PM
(edited)

Today I found that simplified rocksdb_clone.remote_dml_gtid fails with:

but it's works fine with #if 0 which was introduced by Meta in
I tested all MTR with #if 1 because when I switch to #if 0 there is another failure in clone.local_insert:

The reason is that clone.local_insertfail without: 

Przemyslaw Skibinski 
July 29, 2024 at 11:24 AM
(edited)

One more thing I found is that is_binlog_advanced() is false because:
binlog_file = "binlog.000001"
info->binlog_file  "./binlog.000001"
and is_binlog_advanced() treats them as different.

I created a minimal test case to show the issue with rocksdb_clone.remote_dml_gtid at 

The test crashes with:
InnoDB: Last binlog file position 1189741, filename ./binlog.000001
InnoDB: Last MySQL Gtid 0a4b0942-4b4c-11ef-976f-244bfede13f1:3

RocksDB: Last binlog file position 1189741, file name binlog.000001
RocksDB: Last MySQL Gtid 0a4b0942-4b4c-11ef-976f-244bfede13f1:24

But after disabling 
--source ../../clone/include/clone_command.inc
the test passes with:
InnoDB: Last binlog file position 2275, filename binlog.000001
InnoDB: Last MySQL Gtid 8484ddd8-4b4c-11ef-ba43-244bfede13f1:3
RocksDB: Last binlog file position 1189741, file name binlog.000001
RocksDB: Last MySQL Gtid 8484ddd8-4b4c-11ef-ba43-244bfede13f1:24

There is no issue with fb-mysql-8.0.32 because it always returns binlog.000001,2275

Flag notifications