WL#7774: Make MTR sync_slave_sql_with_master.inc handle NDB
GOAL
Make source include/sync_slave_sql_with_master.inc work as a replacement
to sync_slave_with_master for NDB in MTR tests.
Also make it possible to merge MySQL Server 5.6.17 into MySQL Cluster 7.3.5.
INTRODUCTION
The usage of mysqltest command sync_slave_with_master in MTR tests
should in time be replaced.
The current replacement source include/sync_slave_sql_with_master.inc
does not work in exactly the same way for NDB.
Committed transactions using the NDB engine are not directly binlogged
but first packed in epochs. This introduce an extra delay between
commit and binlogging that must be taken into account when one wants
to make sure a slave have replayed the committed transactions.
In MySQL Cluster sync_slave_with_master is patched to make sure that
current epoch is binlogged before taking master binlog position.
In WL#7205 some uses of sync_slave_with_master is being replaced in
some rpl tests. These changes make the corresponding NDB test to fail.
WL#7205 is part of MySQL Server 5.6.17 that is about to be merged into
MySQL Cluster 7.3.5, and so this work must be done now.
REFERENCES
WL#7205: Make the MTR rpl suite GTID_MODE agnostic
Copyright (c) 2000, 2025, Oracle Corporation and/or its affiliates. All rights reserved.