summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarko Mäkelä <marko.makela@mariadb.com>2021-01-27 16:43:29 +0200
committerMarko Mäkelä <marko.makela@mariadb.com>2021-02-22 16:07:42 +0200
commitb7e9c2da8ac20af5d6fdd005c424b40240e66e82 (patch)
treed3da6283d1c4a9d8d2edda0e206ef771c62f6950
parent1b0c5fb534dc1946b99f520c37fce8e621f321c7 (diff)
downloadmariadb-git-bb-10.2.36-MDEV-24449-MDEV-24709.tar.gz
MDEV-24709 Assertion !recv_no_ibuf_operations failed in ibuf_page_low()bb-10.2.36-MDEV-24449-MDEV-24709
recv_recovery_from_checkpoint_start(): Clear the recv_no_ibuf_operations flag at the same time when we enabled writes to the log. The failure to clear the flag might have caused some missed change buffer merges, at least to the secondary index of SYS_TABLES that were accessed by trx_resurrect_table_locks() while the last recovery batch was in progress. Thanks to Thirunarayanan Balathandayuthapani for suggesting this fix.
-rw-r--r--storage/innobase/log/log0recv.cc1
1 files changed, 1 insertions, 0 deletions
diff --git a/storage/innobase/log/log0recv.cc b/storage/innobase/log/log0recv.cc
index cc252530343..9fc86cf20d0 100644
--- a/storage/innobase/log/log0recv.cc
+++ b/storage/innobase/log/log0recv.cc
@@ -4002,6 +4002,7 @@ skip_apply:
mutex_enter(&recv_sys->mutex);
recv_sys->apply_log_recs = TRUE;
+ recv_no_ibuf_operations = is_mariabackup_restore_or_export();
mutex_exit(&recv_sys->mutex);