mdbx: purge deleted spilled pagenums on refund.

Change-Id: I325fbad82cbecb71c35dd1edd1a2abccb8108541
This commit is contained in:
Leonid Yuriev 2020-12-27 20:42:11 +03:00
parent 7bf147d8c2
commit 0ab263b329

View File

@ -4030,7 +4030,14 @@ static bool mdbx_refund(MDBX_txn *txn) {
break;
}
return before != txn->mt_next_pgno;
if (before == txn->mt_next_pgno)
return false;
if (txn->tw.spill_pages)
/* Squash deleted pagenums if we refunded any */
mdbx_pnl_purge_odd(txn->tw.spill_pages, 1);
return true;
}
static __cold void mdbx_kill_page(MDBX_env *env, MDBX_page *mp, pgno_t pgno,