Galera Cluster
Quorum calculation — Nodes available
PmaControl computes the actually usable nodes in the Galera quorum:
Nodes available (X) =
mysql_available = 1
AND wsrep_cluster_status = Primary
AND (
wsrep_local_state_comment = Synced
OR (Donor/Desync/Unsync AND wsrep_desync = OFF)
)
This rule excludes nodes:
- Non-Primary — Node outside the quorum
- Disconnected — Node disconnected from the cluster
- Inconsistent — Inconsistent data
- Donor with wsrep_desync=ON — Intentionally desynchronized
The denominator Y (total) is always the total number of detected nodes, even if some are offline.
wsrep segments
Galera segments (gmcast.segment) are displayed as subgraphs in Dot3:
- SEGMENT_OK — All nodes in the segment are Synced
- SEGMENT_KO — No node in the segment is available
- SEGMENT_PARTIAL — Only some nodes are available
IST / SST flow
PmaControl detects state transfers between nodes:
- IST (Incremental State Transfer) — Incremental transfer via gcache
- SST (State Snapshot Transfer) — Full transfer (mariabackup, rsync, mysqldump)
Dot3 displays a hint link donor→joiner when an SST/IST is in progress.
garb arbitrator
PmaControl detects the Galera arbitrator (garbd) via wsrep_incoming_addresses. The arbitrator appears in Dot3 as a virtual node — it participates in quorum voting without storing data.
wsrep-notify
The wsrep-notify.sh script (in documentation/wsrep-notify/) can be configured on each Galera node to log state changes in /var/log/galera.log.
# Dans my.cnf
[mysqld]
wsrep_notify_cmd = /usr/local/bin/wsrep-notify.sh