From 343f74b90f61b81a388184536595e790fe98a773 Mon Sep 17 00:00:00 2001 From: Mattias Jonsson Date: Mon, 12 Aug 2013 10:52:08 +0200 Subject: [PATCH] Bug#17228383: VALGRIND WARNING IN IBUF_DELETE_REC Since the mtr_t struct is marked as invalid in DEBUG_VALGRIND build during mtr_commit, checking mtr->inside_ibuf will cause this warning. Also since mtr->inside_ibuf cannot be set in mtr_commit (assert check) and mtr->state is set to MTR_COMMITTED, the 'ut_ad(!ibuf_inside(&mtr))' check is not needed if 'ut_ad(mtr.state == MTR_COMMITTED)' is also checked. --- storage/innobase/ibuf/ibuf0ibuf.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/storage/innobase/ibuf/ibuf0ibuf.c b/storage/innobase/ibuf/ibuf0ibuf.c index 0351951f3d2..306cdefc304 100644 --- a/storage/innobase/ibuf/ibuf0ibuf.c +++ b/storage/innobase/ibuf/ibuf0ibuf.c @@ -4373,7 +4373,6 @@ ibuf_delete_rec( BTR_MODIFY_TREE, pcur, mtr)) { mutex_exit(&ibuf_mutex); - ut_ad(!ibuf_inside(mtr)); ut_ad(mtr->state == MTR_COMMITTED); goto func_exit; } @@ -4394,7 +4393,6 @@ ibuf_delete_rec( ibuf_btr_pcur_commit_specify_mtr(pcur, mtr); func_exit: - ut_ad(!ibuf_inside(mtr)); ut_ad(mtr->state == MTR_COMMITTED); btr_pcur_close(pcur); @@ -4731,7 +4729,6 @@ loop: BTR_MODIFY_LEAF, &pcur, &mtr)) { - ut_ad(!ibuf_inside(&mtr)); ut_ad(mtr.state == MTR_COMMITTED); mops[op]++; ibuf_dummy_index_free(dummy_index);