mirror of
https://github.com/isar/libmdbx.git
synced 2025-01-08 05:14:12 +08:00
mdbx: fix dirtyroom
inheritance for nested transactions.
Change-Id: If2036ab3b7909c51e54526a535d65cdee1e0b287
This commit is contained in:
parent
bc33875a9e
commit
8b6608a9ca
@ -6974,7 +6974,6 @@ int mdbx_txn_begin_ex(MDBX_env *env, MDBX_txn *parent, MDBX_txn_flags_t flags,
|
|||||||
mdbx_free(txn);
|
mdbx_free(txn);
|
||||||
return rc;
|
return rc;
|
||||||
}
|
}
|
||||||
txn->tw.dirtyroom = parent->tw.dirtyroom;
|
|
||||||
|
|
||||||
/* Move loose pages to reclaimed list */
|
/* Move loose pages to reclaimed list */
|
||||||
if (parent->tw.loose_count) {
|
if (parent->tw.loose_count) {
|
||||||
@ -6997,6 +6996,7 @@ int mdbx_txn_begin_ex(MDBX_env *env, MDBX_txn *parent, MDBX_txn_flags_t flags,
|
|||||||
#endif /* MDBX_ENABLE_REFUND */
|
#endif /* MDBX_ENABLE_REFUND */
|
||||||
mdbx_tassert(parent, mdbx_dirtylist_check(parent));
|
mdbx_tassert(parent, mdbx_dirtylist_check(parent));
|
||||||
}
|
}
|
||||||
|
txn->tw.dirtyroom = parent->tw.dirtyroom;
|
||||||
|
|
||||||
mdbx_dpl_sort(parent->tw.dirtylist);
|
mdbx_dpl_sort(parent->tw.dirtylist);
|
||||||
if (parent->tw.spill_pages)
|
if (parent->tw.spill_pages)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user