[MDEV-22965] Mariabackup does not lock sql_thread on slaves Created: 2020-06-19 Updated: 2022-01-25 Resolved: 2021-02-15 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | mariabackup, Replication |
| Affects Version/s: | 10.3 |
| Fix Version/s: | N/A |
| Type: | Bug | Priority: | Critical |
| Reporter: | Todd Stoffel (Inactive) | Assignee: | Todd Stoffel (Inactive) |
| Resolution: | Incomplete | Votes: | 1 |
| Labels: | need_feedback | ||
| Description |
|
When using a replica as a donor with mariabackup, the sql_thread is not stopped and queries coming from the master are allowed to continue. This creates a dirty backup and duplication when the joiner is started. Yes I used the words donor and joiner (Galera words). But I do so just to set the context, this is not a Galera system. |
| Comments |
| Comment by Vladislav Lesin [ 2020-12-10 ] | |||||||||||||||||||
|
toddstoffel, mariabackup 10.3 uses "FLUSH TABLE WITH READ LOCK" at some point of backup process to get slave info. This lock prevent slave applier thread from committing. The following test proves it:
It fails by timeout. If you are talking about Galera cluster, then there is a case we are currently working on, it's There is also Could you please unfold your description and explain in details, why do you think that "When using a replica as a donor with mariabackup, the sql_thread is not stopped and queries coming from the master are allowed to continue." |