diff --git a/src/lmdb/database.h b/src/lmdb/database.h index 0f12571da..5a3b674f4 100644 --- a/src/lmdb/database.h +++ b/src/lmdb/database.h @@ -123,8 +123,11 @@ namespace lmdb const auto wrote = f(*(*txn)); if (wrote) { - MONERO_CHECK(commit(std::move(*txn))); - return wrote; + const auto committed = commit(std::move(*txn)); + if (committed) + return wrote; + if (committed != lmdb::error(MDB_MAP_FULL)) + return committed.error(); } if (wrote != lmdb::error(MDB_MAP_FULL)) return wrote;