Leonid Yuriev
9cf18176f0
mdbx-test: fix build for __ANDROID_API__ < 24
(using pthread_barrier_t
stub).
2022-01-05 17:47:45 +03:00
Leonid Yuriev
b19ebf0c2e
mdbx: fix minor unused parameter
warning.
2022-01-05 17:47:45 +03:00
Leonid Yuriev
489f7a3136
mdbx-cmake: add workaround for LTO on Android ( https://reviews.llvm.org/D79919 ).
2022-01-05 17:47:45 +03:00
Leonid Yuriev
066bb696e3
mdbx: avoid including sys/sem.h
when MDBX_LOCKING != MDBX_LOCKING_SYSV
.
...
Fixes https://github.com/erthink/libmdbx/issues/258 .
2022-01-05 17:47:09 +03:00
Leonid Yuriev
024900ee9c
mdbx: fix/refine handling options.rp_augment_limit
detent while loading GC records.
2022-01-05 11:03:21 +03:00
Leonid Yuriev
ab83d173ac
mdbx: minor refine logging for internal GC-related ops.
2022-01-05 10:50:39 +03:00
Leonid Yuriev
d316bde561
mdbx: minor cleanup comment.
2022-01-05 10:45:23 +03:00
Leonid Yuriev
38e9aa79e7
mdbx: support make dist
for debug-includes.
2022-01-05 10:45:15 +03:00
Leonid Yuriev
a6340c6b03
mdbx: minor fix open-MADV logging.
2022-01-05 10:45:15 +03:00
Leonid Yuriev
070ba5ded4
mdbx: check for GCC/clang in debug-includes (insignificant internals).
2022-01-04 13:41:25 +03:00
Leonid Yuriev
f836c928a8
mdbx: Happy New Year! (release v0.11.3).
...
Acknowledgements:
-----------------
- [gcxfd <i@rmw.link>](https://github.com/gcxfd ) for reporting, contributing and testing.
- [장세연 (Чан Се Ен)](https://github.com/sasgas ) for reporting and testing.
- [Alex Sharov](https://github.com/AskAlexSharov ) for reporting, testing and provide resources for remote debugging/investigation.
New features, extensions and improvements:
------------------------------------------
- [Added](https://github.com/erthink/libmdbx/issues/236 ) `mdbx_cursor_get_batch()`.
- [Added](https://github.com/erthink/libmdbx/issues/250 ) `MDBX_SET_UPPERBOUND`.
- C++ API is finalized now.
- The GC update stage has been [significantly speeded](https://github.com/erthink/libmdbx/issues/254 ) when fixing huge Erigon's transactions (Ethereum ecosystem).
Fixes:
------
- Disabled C++20 concepts for stupid AppleClang 13.x
- Fixed internal collision of `MDBX_SHRINK_ALLOWED` with `MDBX_ACCEDE`.
Minors:
-------
- Fixed returning `MDBX_RESULT_TRUE` (unexpected -1) from `mdbx_env_set_option()`.
- Added `mdbx_env_get_syncbytes()` and `mdbx_env_get_syncperiod()`.
- [Clarified](https://github.com/erthink/libmdbx/pull/249 ) description of `MDBX_INTEGERKEY`.
- Reworked/simplified `mdbx_env_sync_internal()`.
- [Fixed](https://github.com/erthink/libmdbx/issues/248 ) extra assertion inside `mdbx_cursor_put()` for `MDBX_DUPFIXED` cases.
- Avoiding extra looping inside `mdbx_env_info_ex()`.
- Explicitly enabled core dumps from stochastic tests scripts on Linux.
- [Fixed](https://github.com/erthink/libmdbx/issues/253 ) `mdbx_override_meta()` to avoid false-positive assertions.
- For compatibility reverted returning `MDBX_ENODATA`for some cases.
Signed-off-by: Leonid Yuriev <leo@yuriev.ru>
2021-12-31 11:52:40 +03:00
Leonid Yuriev
1786374021
mdbx: update ChangeLog.
2021-12-31 10:29:54 +03:00
Leonid Yuriev
6866fa3eaa
mdbx: revert returning MDBX_ENODATA
from cursor-next.
2021-12-30 22:12:04 +03:00
Leonid Yuriev
9511bc491a
mdbx: more unlikely()
.
2021-12-30 19:40:22 +03:00
Leonid Yuriev
ae5df65af0
mdbx: refine page_alloc()
and update_gc()
to reduce looping.
...
Resolves https://github.com/erthink/libmdbx/issues/254 .
2021-12-30 17:36:33 +03:00
Leonid Yuriev
2ba90e63b1
mdbx: remove obsolete current retired-list record from gc before reserve/backlogging free-pages to reduce looping.
2021-12-28 00:10:00 +03:00
Leonid Yuriev
b30ccbde9e
mdbx: don't reserve/backlog free-pages if retired-list was already put into gc.
2021-12-28 00:10:00 +03:00
Leonid Yuriev
c3c088b8c3
mdbx: minor unify gc-update debug logging (cosmetics).
2021-12-28 00:10:00 +03:00
gcxfd
3c82ced097
mdbx: add link to gcxfd's rust wrapper.
...
Resolve https://github.com/erthink/libmdbx/pull/255
2021-12-17 14:32:20 +03:00
Leonid Yuriev
d2377f11d3
mdbx: minor cleanup spaces in the ChangeLog (cosmetics).
2021-12-13 20:22:59 +03:00
Leonid Yuriev
c70d2d62d1
mdbx: fix mdbx_override_meta()
to avoid false-positive assertions.
...
Fixed https://github.com/erthink/libmdbx/issues/253 .
2021-12-13 13:03:49 +03:00
Leonid Yuriev
29eb4c2bed
mdbx: update ChangeLog.
2021-12-13 04:27:48 +03:00
Leonid Yuriev
4e44dc69f9
mdbx: add MDBX_SET_UPPERBOUND
for cursors.
...
Resolves https://github.com/erthink/libmdbx/issues/250 .
2021-12-13 04:24:34 +03:00
Leonid Yuriev
bee5df20fd
mdbx: fix MDBX_SHRINK_ALLOWED
collision with MDBX_ACCEDE
inside mdbx_env_sync_internal()
.
2021-12-13 04:12:43 +03:00
Leonid Yuriev
2f5606702e
mdbx-tests: explicit enable coredumps on Linux.
2021-12-13 04:12:43 +03:00
Leonid Yuriev
6f2c1e52ad
mdbx: add mdbx_cursor_get_batch()
.
...
Resolve https://github.com/erthink/libmdbx/issues/236
2021-12-11 05:58:39 +03:00
Leonid Yuriev
32e495021f
mdbx-cmake: reporting the build options (cosmetics).
2021-12-10 17:17:34 +03:00
Леонид Юрьев (Leonid Yuriev)
ca19796514
mdbx-cmake: disable C++20 for CLANG < 10.
2021-12-09 15:54:16 +03:00
Леонид Юрьев (Leonid Yuriev)
3e3560753b
mdbx-cmake: minor fix detecting Elbrus/LCC.
2021-12-09 15:52:12 +03:00
Leonid Yuriev
0265c847b8
mdbx++: remove preliminary
label from C++ API.
2021-12-09 02:10:08 +03:00
Leonid Yuriev
739e02655e
mdbx++: disable C++20 concepts for stupid AppleClang 13.x (hotfix).
2021-12-08 05:10:47 +03:00
Leonid Yuriev
df6b9028ec
mdbx: update ChangeLog.
2021-12-08 03:25:46 +03:00
Leonid Yuriev
f4057b2c3b
mdbx: avoid extra looping inside mdbx_env_info_ex()
.
2021-12-07 01:45:41 +03:00
Leonid Yuriev
839da86cac
mdbx: minor fix handling MDBX_SET_LOWERBOUND
to avoid MDBX_BAD_VALSIZE
.
...
Related to https://github.com/erthink/libmdbx/issues/248#issuecomment-986542620 .
2021-12-07 01:30:43 +03:00
Леонид Юрьев (Leonid Yuriev)
a899056fd1
mdbx: fix extra assertion.
...
Fixes https://github.com/erthink/libmdbx/issues/248 .
2021-12-06 23:28:08 +03:00
Леонид Юрьев (Leonid Yuriev)
c484a92933
mdbx: minor refine prev commit.
2021-12-06 23:00:38 +03:00
Леонид Юрьев (Leonid Yuriev)
da855b13a3
mdbx: rework/simplify mdbx_env_sync_internal()
.
2021-12-04 06:56:44 +03:00
Леонид Юрьев (Leonid Yuriev)
8ef8733ddc
mdbx: minor refine mdbx_env_set_option(MDBX_opt_sync_bytes)
.
2021-12-04 06:55:41 +03:00
gcxfd
45a11f3dc2
mdbx: Make the documentation of MDBX_INTEGERKEY
clearer.
...
Resolves https://github.com/erthink/libmdbx/pull/249 .
2021-12-03 22:29:28 +03:00
Leonid Yuriev
3fdd810653
mdbx-test: engage mdbx_env_set_syncperiod()
& mdbx_env_set_syncbytes()
.
...
Related to https://github.com/erthink/libmdbx/issues/248 .
2021-12-03 21:55:40 +03:00
Leonid Yuriev
f355f247c3
mdbx: add inlined mdbx_env_get_syncbytes()
& mdbx_env_get_syncperiod()
.
2021-12-03 21:55:40 +03:00
Leonid Yuriev
4b886e2a58
mdbx: don't return MDBX_RESULT_TRUE
(-1) from mdbx_env_set_option()
.
2021-12-03 15:33:22 +03:00
Леонид Юрьев (Leonid Yuriev)
d47eed079e
mdbx: release v0.11.2
...
Acknowledgements:
-----------------
- [장세연 (Чан Се Ен)](https://github.com/sasgas ) for contributing to C++ API.
- [Alain Picard](https://github.com/castortech ) for [Java bindings](https://github.com/castortech/mdbxjni ).
- [Alex Sharov](https://github.com/AskAlexSharov ) for reporting and testing.
- [Kris Zyp](https://github.com/kriszyp ) for reporting and testing.
- [Artem Vorotnikov](https://github.com/vorot93 ) for support [Rust wrapper](https://github.com/vorot93/libmdbx-rs ).
Fixes:
------
- [Fixed compilation](https://github.com/erthink/libmdbx/pull/239 ) with `devtoolset-9` on CentOS/RHEL 7.
- [Fixed unexpected `MDBX_PROBLEM` error](https://github.com/erthink/libmdbx/issues/242 ) because of update an obsolete meta-page.
- [Fixed returning `MDBX_NOTFOUND` error](https://github.com/erthink/libmdbx/issues/243 ) in case an inexact value found for `MDBX_GET_BOTH` operation.
- [Fixed compilation](https://github.com/erthink/libmdbx/issues/245 ) without kernel/libc-devel headers.
Minors:
-------
- Fixed `constexpr`-related macros for legacy compilers.
- Allowed to define 'CMAKE_CXX_STANDARD` using an environment variable.
- Simplified collection statistics of page operation .
- Added `MDBX_FORCE_BUILD_AS_MAIN_PROJECT` cmake option.
- Remove unneeded `#undef P_DIRTY`.
Signed-off-by: Леонид Юрьев (Leonid Yuriev) <leo@yuriev.ru>
2021-12-02 21:55:52 +03:00
Леонид Юрьев (Leonid Yuriev)
d2b15b5958
mdbx: more unlikely()
.
2021-12-02 20:22:37 +03:00
Леонид Юрьев (Leonid Yuriev)
d96bc98244
mdbx: minor refine/fix MDBX_ENODATA
for compatibility.
...
Related to https://github.com/erthink/libmdbx/issues/243
2021-12-02 20:22:37 +03:00
Леонид Юрьев (Leonid Yuriev)
c2cab7a6a8
mdbx: using clang-format-13
(cosmetics).
2021-12-02 20:22:31 +03:00
Леонид Юрьев (Leonid Yuriev)
38df3ca5ad
mdbx: update/fix new libmdbx-rs
library name.
2021-12-02 15:10:06 +03:00
Leonid Yuriev
5e4b2c9ddf
mdbx: add BTC address for donations/sponsorship.
2021-11-27 17:02:27 +03:00
Leonid Yuriev
d777f5bb38
mdbx: update ChangeLog.
2021-11-27 00:29:36 +03:00
Leonid Yuriev
e912f87b2a
mdbx: clarify notes about custom comparators usage.
2021-11-26 23:49:38 +03:00