From d91785f635efb31f6258cf86b0c8b48da90716ac Mon Sep 17 00:00:00 2001 From: Leo Yuriev Date: Mon, 29 May 2017 19:27:17 +0300 Subject: [PATCH] mdbx: disable unnecessary assertion in mdbx_is_dirty(). --- src/defs.h | 1 + src/mdbx.c | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/defs.h b/src/defs.h index 79e65d44..5e3db8cb 100644 --- a/src/defs.h +++ b/src/defs.h @@ -322,6 +322,7 @@ # define VALGRIND_ENABLE_ADDR_ERROR_REPORTING_IN_RANGE(a,s) # define VALGRIND_CHECK_MEM_IS_ADDRESSABLE(a,s) (0) # define VALGRIND_CHECK_MEM_IS_DEFINED(a,s) (0) +# define RUNNING_ON_VALGRIND (0) #endif /* USE_VALGRIND */ #ifdef __SANITIZE_ADDRESS__ diff --git a/src/mdbx.c b/src/mdbx.c index a6281ec9..02a2ea76 100644 --- a/src/mdbx.c +++ b/src/mdbx.c @@ -10259,7 +10259,8 @@ int mdbx_is_dirty(const MDBX_txn *txn, const void *ptr) { * в пределах mmap, но за границей распределенных страниц. Это тяжелая * ошибка, к которой не возможно прийти без каких-то больших нарушений. * Поэтому не проверяем этот случай кроме как assert-ом, ибо бестолку. */ - mdbx_tassert(txn, env->me_map + env->me_mapsize >= (char *)page); + /* if (!RUNNING_ON_VALGRIND) + mdbx_tassert(txn, env->me_map + env->me_mapsize >= (char *)page); */ } /* Страница вне используемого mmap-диапазона, т.е. либо в функцию был