mariadb/mysql-test/suite/rpl
ParadoxV5 260c0ad3d1
MDEV-37116 Replication should remain async until the primary receives rpl_semi_sync_master_wait_for_slave_count no. of ACKs
`rpl_semi_sync_master_wait_for_slave_count` from MDEV-18983
only applied when Semi-Sync is active, but not to the condition
to automatically return to Semi-Sync after it fell back to Async
(due to timeout or `rpl_semi_sync_master_wait_no_slave=0`).

This commit expands the Semi-Sync transaction queue – specifically,
its ACKs counter from MDEV-18983 – to be also used during Async.
* When Semi-Sync automatically falls back to Async, it no longer
  clears the queue, only lets the queued transactions finish.
* Async transactions also enqueue, but without a waiting thread.
* The condition to return from Async to Semi-Sync (and dequeue past
  Async transactions) is now inside the `…_wait_for_slave_count` check.

Reviewed-by: Brandon Nesterenko <brandon.nesterenko@mariadb.com>
2025-07-07 18:46:54 -06: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-37116 Replication should remain async until the primary receives rpl_semi_sync_master_wait_for_slave_count no. of ACKs 2025-07-07 18:46:54 -06:00
t MDEV-37116 Replication should remain async until the primary receives rpl_semi_sync_master_wait_for_slave_count no. of ACKs 2025-07-07 18:46:54 -06: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