[MXS-2775] Document that a crashed master can break auto_rejoin with semisynchronous replication Created: 2019-11-20  Updated: 2020-08-25  Resolved: 2019-11-22

Status: Closed
Project: MariaDB MaxScale
Component/s: mariadbmon
Affects Version/s: 2.3.14, 2.4.3
Fix Version/s: 2.3.15, 2.4.5

Type: Bug Priority: Major
Reporter: Geoff Montee (Inactive) Assignee: Esa Korhonen
Resolution: Fixed Votes: 0
Labels: None

Issue Links:
Problem/Incident
is caused by MDEV-20996 Maxscale auto-failover with semi-sync... Closed

 Description   

In MariaDB Server, semisynchronous replication can face some negative consequences when the master crashes. The specific consequence depends on the value of rpl_semi_sync_master_wait_point.

The consequences are explained in the following documentation section:

https://mariadb.com/kb/en/library/semisynchronous-replication/#configuring-the-master-wait-point

When rpl_semi_sync_master_wait_point is set to AFTER_SYNC, the consequences are:

The effects of the AFTER_SYNC wait point are:
...

  • However, if the master crashes, then its binary log may also contain events for transactions that were prepared by the storage engine and written to the binary log, but that were never actually committed by the storage engine. As part of the server's automatic crash recovery process, the server may recover these prepared transactions when the server is restarted. This could cause the crashed master to become inconsistent with the slaves. Therefore, the crashed master may need to be rebuilt. See MDEV-19733 for more information.

When rpl_semi_sync_master_wait_point is set to AFTER_COMMIT, the consequences are:

The effects of the AFTER_COMMIT wait point are:
...

  • If the master crashes, then failover may involve some data loss, because the master may have committed transactions that had not yet been acknowledged by the slaves.

If auto_rejoin is configured in MariaDB Monitor, then both of these cases can cause the master to fail to rejoin as a slave when it is restarted.

We should make sure that this information is documented:

https://mariadb.com/kb/en/mariadb-maxscale-23-mariadb-monitor/#limitations-and-requirements

https://mariadb.com/kb/en/mariadb-maxscale-24-mariadb-monitor/#limitations-and-requirements


Generated at Thu Feb 08 04:16:36 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.