mdbx: fix assertion inside mdbx_txn_begin_ex() for nested txn with spilled parent.

Change-Id: Ie1f3cd3df6beb296a7bbdc72b39c1c4cb9105083
This commit is contained in:
Leonid Yuriev 2020-12-25 14:25:29 +03:00
parent 51ec5c442b
commit 6ef7b2f588

View File

@ -6742,9 +6742,9 @@ int mdbx_txn_begin_ex(MDBX_env *env, MDBX_txn *parent, MDBX_txn_flags_t flags,
~(MDBX_NOTLS | MDBX_TXN_RDONLY | MDBX_WRITEMAP |
/* Win32: SRWL flag */ MDBX_SHRINK_ALLOWED)) == 0);
else
mdbx_assert(env,
(txn->mt_flags & ~(MDBX_WRITEMAP | MDBX_SHRINK_ALLOWED |
MDBX_NOMETASYNC | MDBX_SAFE_NOSYNC)) == 0);
mdbx_assert(env, (txn->mt_flags & ~(MDBX_WRITEMAP | MDBX_SHRINK_ALLOWED |
MDBX_NOMETASYNC | MDBX_SAFE_NOSYNC |
MDBX_TXN_SPILLS)) == 0);
txn->mt_signature = MDBX_MT_SIGNATURE;
txn->mt_userctx = context;
*ret = txn;