Galera Cluster Data Consistency
summary
Explains concrete failure modes and fixes: state snapshot transfers via mysqldump, rsync, xtrabackup can seed a bad node; session flags (wsrep_on/sql_log_bin) and replication filtering or DDL/events cause missing or extra rows; flow control defaults to ~16 uncommitted transactions so fast reads can miss writes. Current policy is Galera 3 emergency abort on any DML apply error, forcing SST full copies; Galera 4 adds a consistency voting protocol to avoid whole-cluster crashes and supports coordinated checks using pt-table-checksum style insert-select for early detection.
AI-written summary · about
chapters (21)
- 0:00Intro
- 2:00Galera Project
- 3:00MariaDB Galera Cluster
- 3:38Agenda
- 4:56Master-Slave Async Replication
- 6:29Inconsistency for Master-Slave
- 8:36Reasons for Inconsistency
- 14:34Consistent Reads from a Cluster
- 17:16Read Causality
- 21:38Triggers, Stored Procedures, Events
- 26:07The Harm Done
- 27:21Inconsistency for Multi-Master
- 29:17Could Some Errors Be Neglected?
- 34:16About Foreign Key Constraint
- 35:17How to Recover from Inconsistency
- 39:02Detecting Inconsistencies up-front
- 40:20Galera Consistency Checking
- 44:23Optimizing Inconsistency Shutdown
- 46:49Optimizing Consistency Shutdown
- 48:28Galera Consistency Voting Protocol
- 48:57Summary
related talks
56mGalera Cluster State of the Union
47mDatabase Resiliency
58m600k QPS on MySQL Galera cluster
38mIs Percona XtraDB Cluster Right for Any Application
35mMySQL HA, Recovery and Load Balancing
31mHow to Avoid Pitfalls in Schema Upgrade with Percona XtraDB Cluster
52mData Consistency at Scale in Meta
29mEverything You Ever Wanted to Know About MariaDB Replication but Were Afraid to Ask
