Galera GTID autorecovery
Currently when --galera-info is specified XtraBackup queries the
following Galera variables to retrieve GTID and store it in
xtrabackup_
wsrep_local_
and
wsrep_last_
The drawback is that one has to block commits in one way or another to
guarantee consistency of wsrep_last_
files. Currently it is done under FTWRL, and with the backup locks it
would require blocking all commits even with binary log disabled.
However, a Galera node also stores GTID in the InnoDB system trx header,
similar to binary log coordinates stored in xtrabackup_
and slave coordinates in the ‘crash safe slave’ feature in Percona
Server 5.1/5.5.
Thus a more efficient way to retrieve GTID when backing up a server with
backup locks support would be to read the corresponding values from the
InnoDB trx header on recovery and create xtrabackup_
stage. There is a magic value field for Galera GTID coordinates (see
TRX_SYS_
easy to only do so for Galera backups automatically.
Blueprint information
- Status:
- Complete
- Approver:
- Alexey Kopytov
- Priority:
- Essential
- Drafter:
- Alexey Kopytov
- Direction:
- Approved
- Assignee:
- Alexey Kopytov
- Definition:
- Approved
- Series goal:
- Accepted for 2.2
- Implementation:
- Implemented
- Milestone target:
- 2.2.4
- Started by
- Alexey Kopytov
- Completed by
- Alexey Kopytov
Related branches
Sprints
Whiteboard
See also https:/