Leonid Yuriev
de4a6baf80
mdbx-test: add --db-upto-mb
option for stochastic script.
2021-07-13 13:49:33 +03:00
Leonid Yuriev
584326e9b6
mdbx-make: rename MDBX_TEST_EXTRA
to MDBX_SMOKE_EXTRA
.
2021-07-13 13:48:56 +03:00
Leonid Yuriev
a7becdc6b3
mdbx-test: add --size-upper-upto
for simplify cross-testing 32-bit code with QEMU on 64-bit host.
2021-07-13 13:48:12 +03:00
Leonid Yuriev
4de2dcebb5
mdbx: increase the MDBX_READERS_LIMIT
to 32767
.
...
Fixes https://github.com/erthink/libmdbx/issues/219 .
2021-07-11 02:44:19 +03:00
Leonid Yuriev
678a80dd19
mdbx: fix hang/shutdown on big-endian platforms without __cxa_thread_atexit()
.
...
Change-Id: I1bf706abaaf42d5b40751d85ed7c7a83d02acaf5
2021-07-11 02:25:39 +03:00
Leonid Yuriev
55d1f5e9c0
mdbx++: remove extra noexcept
for buffer::&assign_reference()
.
2021-07-11 02:25:39 +03:00
Leonid Yuriev
c18bf4f898
mdbx: minor clarify mdbx_mapresize()
.
2021-07-11 02:25:39 +03:00
Leonid Yuriev
728e7f92b2
mdbx: minor fix mdbx_mresize()
to preserve result code for read-only cases.
2021-07-11 02:25:39 +03:00
Leonid Yuriev
1740043678
mdbx: minimize the size of poisoned/unpoisoned regions to avoid ASAN hangs.
...
More for second case of https://github.com/erthink/libmdbx/issues/217
2021-07-11 02:25:26 +03:00
Leonid Yuriev
891d68838a
mdbx: return MDBX_TOO_LARGE
under Valgrind/ASAN if being opened DB is 100 larger than RAM.
...
More for second case of https://github.com/erthink/libmdbx/issues/217
2021-07-11 02:25:07 +03:00
Leonid Yuriev
108398c213
mdbx: refine rollback while opening weak/invalid DB.
...
More for https://github.com/erthink/libmdbx/issues/217
2021-07-11 02:24:51 +03:00
Leonid Yuriev
8bdee27248
mdbx: create/refactoring override_meta()
.
2021-07-11 02:24:51 +03:00
Leonid Yuriev
00c6dc9788
mdbx: re-verify head
and steady
meta-pages while opening db by the first process.
...
Basic fix for https://github.com/erthink/libmdbx/issues/217
2021-07-11 02:24:06 +03:00
Leonid Yuriev
fb67682a79
mdbx: refine mdbx_validate_meta()
.
2021-07-10 17:24:26 +03:00
Leonid Yuriev
5ed50a4739
mdbx: remove filesize
arg from header/meta read functions (refactoring).
2021-07-10 16:10:30 +03:00
Leonid Yuriev
c30c3def8b
mdbx: the filesize
field of mdbx_mmap_t
now is not specific for Windows.
2021-07-10 16:10:30 +03:00
Леонид Юрьев (Leonid Yuriev)
2f74f405ae
mdbx: avoid returning MDBX_TXN_FULL
error when possible.
2021-07-09 18:29:31 +03:00
Леонид Юрьев (Leonid Yuriev)
c7e05f63e6
mdbx-test: remove vector[...]
from Valgrind's suppressions.
2021-07-09 17:44:27 +03:00
Leonid Yuriev
d65305564f
mdbx-test: more suppressions for Valrgind (for case db-page less than systen-page).
2021-07-09 17:44:27 +03:00
Leonid Yuriev
660c302525
mdbx-test: adapt long-stochastic
script for old bash version (Mac OS).
2021-07-09 17:44:27 +03:00
Leonid Yuriev
d7aad3a7cf
mdbx-make: distinct smoke*
and test*
targets.
2021-07-09 17:44:27 +03:00
Leonid Yuriev
15ed0f6a84
mdbx++: workaround for compile-time 'uninitialized' warning (i.e. a GCC's bug) from GCC 10.x with enabled UB-sanitizer.
2021-07-09 17:44:27 +03:00
Leonid Yuriev
ffb8d23632
mdbx++: minor fixes for UN-sanitizer.
2021-07-09 17:44:27 +03:00
Leonid Yuriev
682632756f
mdbx-test: add options support for long-stochastic
script.
2021-07-09 17:44:27 +03:00
Leonid Yuriev
39c5e66ed1
mdbx: fix safe64_reset()
for platforms without atomic 64-bit compare-and-swap.
2021-07-09 17:44:27 +03:00
Leonid Yuriev
b66780633e
mdbx-tools: linking with math library (-lm
).
2021-07-06 13:45:26 +03:00
Leonid Yuriev
bd2bb51f0f
mdbx++: rework buffer::silo
to avoid use std::string
.
2021-07-06 13:45:26 +03:00
Леонид Юрьев (Leonid Yuriev)
ac69464143
mdbx-make: change prefix of the 'TIP' messages (cosmetics).
2021-07-04 13:23:53 +03:00
Leonid Yuriev
62889b5b7f
mdbx-test: use mdbx::buffer
from mdbx++.
2021-07-04 13:23:53 +03:00
Leonid Yuriev
c4a696be1d
mdbx-test: add workaround for CLANG/LLVM STL stupidity of std::set<>
.
2021-07-04 00:11:04 +03:00
Leonid Yuriev
cf5f31c577
mdbx: make __cold
attribute first (cosmetic).
2021-07-03 01:51:04 +03:00
Leonid Yuriev
fa49e5a57b
mdbx++: rename slice::from/to_FOO_bytes()
to `slice::envisage_from/to_FOO_length()'.
2021-07-02 21:20:04 +03:00
Leonid Yuriev
750a17e41e
mdbx: more spelling.
2021-07-02 21:19:58 +03:00
Leonid Yuriev
5d4281fbbe
mdbx: minor fix spelling.
2021-06-26 18:54:00 +03:00
Leonid Yuriev
2c18225654
mdbx-make: minor cleanup shell in/out redirection spaces.
2021-06-26 17:38:52 +03:00
Leonid Yuriev
cc6610f42c
mdbx: more/refine C++ crutches for mad MSVC compiler.
2021-06-24 15:42:03 +03:00
Leonid Yuriev
77a1f32e2a
mdbx: use VERSION.txt
instead of VERSION
to avoid collision with #include <version>
.
2021-06-24 14:59:29 +03:00
Leonid Yuriev
63e7276c7d
mdbx: update ChangeLog.
2021-06-18 15:13:51 +03:00
Leonid Yuriev
a5e10b4ea1
mdbx: minor refine mdbx_cursor_eof()
.
2021-06-18 01:17:48 +03:00
Leonid Yuriev
b8e621cb2f
mdbx: mdbx: avoid log a warning about empty header during DB creation.
...
Resolve https://github.com/erthink/libmdbx/issues/205 .
2021-06-18 01:09:26 +03:00
Leonid Yuriev
68a164da2b
mdbx-test: add mdbx_cursor_eof()
checking.
...
Related to https://github.com/erthink/libmdbx/issues/207 .
2021-06-17 21:44:48 +03:00
Leonid Yuriev
5db855d728
mdbx: fix false-negative mdbx_cursor_eof()
result.
...
Fixes https://github.com/erthink/libmdbx/issues/207 .
2021-06-17 21:44:24 +03:00
Leonid Yuriev
06aa596519
mdbx-test: fix minor warnings from old GCC versions.
2021-06-17 21:43:15 +03:00
Leonid Yuriev
d47864dedf
mdbx-cmake: use GNUInstallDirs
variables for all cases.
...
Resolves https://github.com/erthink/libmdbx/issues/209 .
2021-06-17 17:21:20 +03:00
Leonid Yuriev
581ca4fdf4
mdbx-ci: performs make's install
target during check.
...
Related to https://github.com/erthink/libmdbx/issues/208 .
2021-06-17 15:15:57 +03:00
Leonid Yuriev
6771b7526c
mdbx-make: use only portable option of install
utility.
...
Fixes https://github.com/erthink/libmdbx/issues/208 .
2021-06-17 15:15:54 +03:00
Leonid Yuriev
d7c06b1337
mdbx: partial fix for recursive SRW-lock with MDBX_NOTLS
on Windows.
...
Here are some changes to avoid recursive acquisition of SRW-lock,
which is still in use:
- Read transactions don't acquire the shared SRW-lock with `MDBX_NOTLS.
- Memory-mapping of DB is always kept while DB opened,
therefore following limitations are:
- DB file can't be shrinked while it used,
including auto-shrink due to auto-compactification with corresponding geometry settings.
- The upper limit of DB size can't be changed while DB is used.
- The DB can grow within the upper size limit defined while opening by a first process,
but this does not work under Wine since there is no `NtExtendSection()` function.
Partially fix https://github.com/erthink/libmdbx/issues/203
2021-06-10 13:42:30 +03:00
Leonid Yuriev
18bc28bea2
mdbx: announce more TODO.
2021-06-10 02:47:40 +03:00
Leonid Yuriev
93e6e64eb0
mdbx: update ChangeLog.
2021-06-09 13:48:03 +03:00
Leonid Yuriev
0cd1eac6a8
mdbx: don't check other meta pages if one is specified for verification/recovery.
...
Fixes https://github.com/erthink/libmdbx/issues/202
2021-06-08 20:27:18 +03:00