mirror of
https://github.com/isar/libmdbx.git
synced 2024-12-30 02:34:13 +08:00
mdbx: merge branch 'master' into devel.
Change-Id: Ib1d07cf6eb2e4c76b3be969b28bf2317cb326835
This commit is contained in:
commit
90309ec0bf
2
.github/actions/spelling/expect.txt
vendored
2
.github/actions/spelling/expect.txt
vendored
@ -137,6 +137,7 @@ calloc
|
||||
cas
|
||||
casename
|
||||
cassert
|
||||
castis
|
||||
castortech
|
||||
cattr
|
||||
cbegin
|
||||
@ -1391,6 +1392,7 @@ rw
|
||||
samedata
|
||||
samelength
|
||||
SAMSUNG
|
||||
sasgas
|
||||
savailable
|
||||
scalability
|
||||
sched
|
||||
|
1
AUTHORS
1
AUTHORS
@ -30,3 +30,4 @@ Contributors
|
||||
- Sebastien Launay <sebastien@slaunay.fr>
|
||||
- Vladimir Romanov <vromanov@gmail.com>
|
||||
- Zano Foundation <crypto.sowle@gmail.com>
|
||||
- 장세연 <sasgas@castis.com>
|
||||
|
18
ChangeLog.md
18
ChangeLog.md
@ -3,6 +3,7 @@ ChangeLog
|
||||
|
||||
## v0.9.3 (in development)
|
||||
|
||||
TODO:
|
||||
- Engage new terminology (https://github.com/erthink/libmdbx/issues/137).
|
||||
- Rework/speedup the implementation of the dirty page list (lazy compactification, lazy sorting via merge).
|
||||
- Resolve few TODOs (https://github.com/erthink/libmdbx/issues/123, https://github.com/erthink/libmdbx/issues/124,
|
||||
@ -11,10 +12,25 @@ ChangeLog
|
||||
- Finalize C++ API (few typos and trivia bugs are still likely for now).
|
||||
- Packages for ROSA Linux, ALT Linux, Fedora/RHEL, Debian/Ubuntu.
|
||||
|
||||
Acknowledgements:
|
||||
|
||||
- Mahlon E. Smith (http://www.martini.nu/) for FreeBSD port of libmdbx.
|
||||
- 장세연 (http://www.castis.com) for bug fixing and PR.
|
||||
|
||||
Removed options and features:
|
||||
|
||||
- Drop `MDBX_HUGE_TRANSACTIONS` build-option (now no longer required).
|
||||
- Drop `MDBX_HUGE_TRANSACTIONS` build-option (now no longer required).
|
||||
|
||||
Added features:
|
||||
|
||||
- Package for FreeBSD is available now by Mahlon E. Smith.
|
||||
- New API functions to get/set various options (https://github.com/erthink/libmdbx/issues/128).
|
||||
- Unlimited/Dynamic size of retired and dirty page lists (https://github.com/erthink/libmdbx/issues/123).
|
||||
|
||||
Fixes:
|
||||
|
||||
- Fixed 4-byte aligned access to 64-bit integers.
|
||||
- Fixed missing cleanup (null assigned) in the C++ commit/abort (https://github.com/erthink/libmdbx/pull/143).
|
||||
|
||||
|
||||
## v0.9.2 scheduled at 2020-11-27
|
||||
|
14
src/mdbx.c++
14
src/mdbx.c++
@ -1314,20 +1314,18 @@ txn_managed::~txn_managed() noexcept {
|
||||
|
||||
void txn_managed::abort() {
|
||||
const error err = static_cast<MDBX_error_t>(::mdbx_txn_abort(handle_));
|
||||
if (MDBX_UNLIKELY(err.code() != MDBX_SUCCESS)) {
|
||||
if (err.code() != MDBX_THREAD_MISMATCH)
|
||||
handle_ = nullptr;
|
||||
if (MDBX_LIKELY(err.code() != MDBX_THREAD_MISMATCH))
|
||||
handle_ = nullptr;
|
||||
if (MDBX_UNLIKELY(err.code() != MDBX_SUCCESS))
|
||||
err.throw_exception();
|
||||
}
|
||||
}
|
||||
|
||||
void txn_managed::commit() {
|
||||
const error err = static_cast<MDBX_error_t>(::mdbx_txn_commit(handle_));
|
||||
if (MDBX_UNLIKELY(err.code() != MDBX_SUCCESS)) {
|
||||
if (err.code() != MDBX_THREAD_MISMATCH)
|
||||
handle_ = nullptr;
|
||||
if (MDBX_LIKELY(err.code() != MDBX_THREAD_MISMATCH))
|
||||
handle_ = nullptr;
|
||||
if (MDBX_UNLIKELY(err.code() != MDBX_SUCCESS))
|
||||
err.throw_exception();
|
||||
}
|
||||
}
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
|
Loading…
x
Reference in New Issue
Block a user