mirror of
https://github.com/isar/libmdbx.git
synced 2025-01-10 03:04:14 +08:00
mdbx: backport - fix mdbx_dbi_sequence().
Change-Id: Ic620896ef42c1c2d85c07c146b72e773ab43a67d
This commit is contained in:
parent
cc84f85722
commit
5acf2b126f
@ -12356,6 +12356,15 @@ int mdbx_dbi_sequence(MDBX_txn *txn, MDBX_dbi dbi, uint64_t *result,
|
||||
if (unlikely(TXN_DBI_CHANGED(txn, dbi)))
|
||||
return MDBX_BAD_DBI;
|
||||
|
||||
if (unlikely(txn->mt_dbflags[dbi] & DB_STALE)) {
|
||||
MDBX_cursor mc;
|
||||
MDBX_xcursor mx;
|
||||
/* Stale, must read the DB's root. cursor_init does it for us. */
|
||||
int rc = mdbx_cursor_init(&mc, txn, dbi, &mx);
|
||||
if (unlikely(rc != MDBX_SUCCESS))
|
||||
return rc;
|
||||
}
|
||||
|
||||
MDBX_db *dbs = &txn->mt_dbs[dbi];
|
||||
if (likely(result))
|
||||
*result = dbs->md_seq;
|
||||
|
Loading…
x
Reference in New Issue
Block a user