mariadb/mysql-test/suite/rpl
Brandon Nesterenko d0b4c95889 MDEV-38641: Failure of Replication of System Versioning Tables
System versioned table UPDATES would fail to replicate on debug builds
with the debug assertion:

rpl_utility_server.cc:1058: bool RPL_TABLE_LIST::give_compatibility_error(rpl_group_info *, uint): Assertion `m_tabledef.master_column_name[col]' failed.

Though caught with system versioned tables, the problem is
generalizable to any transactions which have multiple Rows_log_events
that update the same table. That is, during the error reporting for
columns which were present in the Rows_log_event but not on the slave
table, there is a debug assertion that validates that the master's
table name exists.  After reporting this error, the pointer to that
master table name is nullified. This means that future Rows_log_events
would not have this table name, and the assertion would fail (release
builds would likely segfault when logging the error).

The fix for this is not to nullify the pointer after reporting the
error, so future Rows_log_events can continue using the pointer to the
master's table name.
2026-01-23 13:04:10 -07:00
..
extension mtr: use env for perl 2020-06-23 03:24:46 +02:00
include Fix typos in mysql-test/ 2025-04-29 13:53:16 +10:00
r MDEV-38641: Failure of Replication of System Versioning Tables 2026-01-23 13:04:10 -07:00
t MDEV-38641: Failure of Replication of System Versioning Tables 2026-01-23 13:04:10 -07:00
disabled.def Fix RPL tests post DEBUG_SYNC change 2023-02-10 14:44:45 +02:00
my.cnf MDEV-31404 Implement binlog_space_limit 2024-02-14 15:02:21 +01:00
README
rpl_1slave_base.cnf Improve mtr replication setup 2025-04-28 12:59:39 +03:00

How to run.
===========

./mysql-test-run.pl --suite=rpl --mysqld=--binlog-format=mixed