diff options
author | Leandro Pacheco <leandro.pacheco@galeracluster.com> | 2021-09-13 11:20:22 -0300 |
---|---|---|
committer | Jan Lindström <jan.lindstrom@mariadb.com> | 2021-12-23 11:51:31 +0200 |
commit | 0165a0632256a30fcb5b55b677ca5927478d1212 (patch) | |
tree | 153834fd7333c64bb7f88d11d0efd97b77ef01d5 | |
parent | ca2ea4ff4178d097ac2d939b8fd88ea658ed64dc (diff) | |
download | mariadb-git-0165a0632256a30fcb5b55b677ca5927478d1212.tar.gz |
result of wsrep logic in queue_for_group_commit was being ignoredbb-10.4-MDEV-26803-galera
This could cause out of order wsrep checkpoints due wsrep specific leader
code not being executed in `MYSQL_BIN_LOG::write_transaction_to_binlog_events`.
Move original result assignment to before wsrep logic to prevent that.
Reviewed-by: Jan Lindström <jan.lindstrom@mariadb.com>
-rw-r--r-- | sql/log.cc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sql/log.cc b/sql/log.cc index fbe7c78c4ac..c5a192d56d3 100644 --- a/sql/log.cc +++ b/sql/log.cc @@ -7768,6 +7768,8 @@ MYSQL_BIN_LOG::queue_for_group_commit(group_commit_entry *orig_entry) cur= entry->thd->wait_for_commit_ptr; } + result= orig_queue == NULL; + #ifdef WITH_WSREP if (wsrep_is_active(entry->thd) && wsrep_run_commit_hook(entry->thd, entry->all)) @@ -7791,7 +7793,6 @@ MYSQL_BIN_LOG::queue_for_group_commit(group_commit_entry *orig_entry) DBUG_PRINT("info", ("Queued for group commit as %s", (orig_queue == NULL) ? "leader" : "participant")); - result= orig_queue == NULL; end: if (backup_lock_released) |