Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

10.5 MDEV 34891 teemu #470

Open
wants to merge 6 commits into
base: 10.5
Choose a base branch
from
Open

10.5 MDEV 34891 teemu #470

wants to merge 6 commits into from

Conversation

temeo
Copy link

@temeo temeo commented Jan 7, 2025

  • MDEV-34891 : SST failure occurs when gtid_strict_mode is enabled
  • Add suppression for transaction deadlock error.
  • Add tests for wsrep GTID recovery with binlog on and off
  • Initialize gtid seqno from recovered seqno when bootstrapping a new cluster

@janlindstrom
Copy link

test_pr

janlindstrom and others added 6 commits January 20, 2025 14:46
Problem was that initial GTID was set on wsrep_before_prepare
out-of-order. In practice GTID was set to same as previous
executed transaction GTID. In recovery valid GTID was found
from prepared transaction and this transaction is committed
leadin to fac that same GTID was executed twice.

This is fixed by setting invalid GTID at wsrep_before_prepare
and later in wsrep_before_commit actual correct GTID is set
and this setting is done while we are in commit monitor i.e.
assigment is done in order of replication.

In recovery if prepared transaction is found we check its
GTID, if it is invalid transaction will be rolled back
and if it is valid it will be committed.

Added two test cases for both mariabackup and rsync SST methods
to show that GTIDs remain consistent on cluster and that
all expected rows are in the table.
@janlindstrom janlindstrom force-pushed the 10.5-MDEV-34891-teemu branch from 59619e8 to 37cb5d8 Compare January 20, 2025 12:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants