summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThirunarayanan Balathandayuthapani <thiru@mariadb.com>2023-02-28 20:19:06 +0530
committerThirunarayanan Balathandayuthapani <thiru@mariadb.com>2023-03-02 11:22:40 +0530
commit550b8d76b3be360b1c7984a2531e094cd4c37f8c (patch)
treea581a5f6230a81101db2e48536014b2b03ef4716
parent6ac44ac3abec2263bc7ab9745cd52cc0ad214d8a (diff)
downloadmariadb-git-550b8d76b3be360b1c7984a2531e094cd4c37f8c.tar.gz
MDEV-30752 Assertion `!index->is_ibuf()' failed around
cmp_dtuple_rec_with_match_bytes - InnoDB shouldn't use the adaptive hash index for change buffer indexes.
-rw-r--r--storage/innobase/btr/btr0cur.cc5
1 files changed, 3 insertions, 2 deletions
diff --git a/storage/innobase/btr/btr0cur.cc b/storage/innobase/btr/btr0cur.cc
index ec1b72244b4..8d19064a658 100644
--- a/storage/innobase/btr/btr0cur.cc
+++ b/storage/innobase/btr/btr0cur.cc
@@ -1011,9 +1011,10 @@ dberr_t btr_cur_t::search_leaf(const dtuple_t *tuple, page_cur_mode_t mode,
# ifdef UNIV_SEARCH_PERF_STAT
info->n_searches++;
# endif
+ bool ahi_enabled= btr_search_enabled && !index()->is_ibuf();
/* We do a dirty read of btr_search_enabled below,
and btr_search_guess_on_hash() will have to check it again. */
- if (!btr_search_enabled);
+ if (!ahi_enabled);
else if (btr_search_guess_on_hash(index(), info, tuple, mode,
latch_mode, this, mtr))
{
@@ -1335,7 +1336,7 @@ release_tree:
reached_latched_leaf:
#ifdef BTR_CUR_HASH_ADAPT
- if (btr_search_enabled && !(tuple->info_bits & REC_INFO_MIN_REC_FLAG))
+ if (ahi_enabled && !(tuple->info_bits & REC_INFO_MIN_REC_FLAG))
{
if (page_cur_search_with_match_bytes(tuple, mode,
&up_match, &up_bytes,