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
Leonid Yuriev
0e83a8e5ef
mdbx-doc: add note for Reproducible builds.
...
More for https://github.com/erthink/libmdbx/issues/201
2021-06-02 17:08:40 +03:00
Leonid Yuriev
f951f246b8
mdbx: allow to predefine/override MDBX_BUILD_TIMESTAMP
for builds reproducibility.
...
Resolve https://github.com/erthink/libmdbx/issues/201
2021-06-02 14:50:22 +03:00
Leonid Yuriev
50328de63c
mdbx: release v0.10.1
...
Acknowledgements:
-----------------
- [Alexey Akhunov](https://github.com/AlexeyAkhunov ) and [Alex Sharov](https://github.com/AskAlexSharov ) for bug reporting and testing.
New features:
-------------
- Added `-p` option to `mdbx_stat` utility for printing page operations statistic.
- Added explicit checking for and warning about using unfit github's archives.
Fixes:
------
- Fixed minor "foo not used" warnings from modern C++ compilers when building the C++ part of the library.
- Fixed confusing/messy errors when build library from unfit github's archives (https://github.com/erthink/libmdbx/issues/197 ).
- Fixed `#elsif` typo.
- Fixed rare unexpected `MDBX_PROBLEM` error during altering data in huge transactions due to wrong spilling/oust of dirty pages (https://github.com/erthink/libmdbx/issues/195 ).
v0.10.1
2021-06-01 03:21:59 +03:00
Leonid Yuriev
a6c8c20bd9
mdbx: update ChangeLog.
2021-05-28 01:46:24 +03:00
Leonid Yuriev
ea1fcc2246
mdbx: fix insignificantly Coverity warnings.
2021-05-28 00:54:11 +03:00
Leonid Yuriev
8915db5f83
mdbx-tools: cleanup MDBX_NOSUBDIR
(needless).
2021-05-28 00:36:24 +03:00
Leonid Yuriev
a7167ce715
mdbx: allow open DB on 9P/WSL2 filesystem in exclusive mode.
...
Related to https://github.com/erthink/libmdbx/issues/97
2021-05-26 21:08:37 +03:00
Leonid Yuriev
3e0c7758ef
mdbx: fallback to non-OFD locks after EINVAL
.
...
Related to https://github.com/erthink/libmdbx/issues/97
2021-05-26 20:33:55 +03:00
Leonid Yuriev
b0830db25a
mdbx: add 9P
(WSL2 DrvFs) to blacklist of remote filesystems.
...
Related to https://github.com/erthink/libmdbx/issues/97
2021-05-26 20:33:08 +03:00
Leonid Yuriev
bcc546bdfa
mdbx-windows: refix WSL1/WSL2 detection.
...
Refix https://github.com/erthink/libmdbx/issues/97
2021-05-25 15:18:15 +03:00
Leonid Yuriev
2b161db6d8
mdbx: update ChangeLog.
2021-05-21 00:12:55 +03:00
Leonid Yuriev
6bedb02ac0
mdbx: fix lru-counter overflow by module 2^31.
...
2 of 2 fixes for https://github.com/erthink/libmdbx/issues/195
2021-05-20 17:42:22 +03:00
Leonid Yuriev
bc6a690733
mdbx: simplify & fix mdbx_txn_keep()
and mdbx_cursor_keep()
.
...
1 of 2 fixes for https://github.com/erthink/libmdbx/issues/195
2021-05-20 15:10:38 +03:00
Leonid Yuriev
84b699a47c
mdbx: fix elsif
typo.
2021-05-18 22:44:31 +03:00
Leonid Yuriev
7addfc8358
mdbx: explicit checking for and warning about using unfit github's archives.
...
Related to https://github.com/erthink/libmdbx/issues/197 and https://github.community/t/disable-tarball
2021-05-13 12:19:18 +03:00
Leonid Yuriev
841fc15dd3
mdbx: little more likely/unlikely.
2021-05-12 19:24:19 +03:00
Leonid Yuriev
0875d16656
mdbx: fix/refine mdbx_env_info_ex()
to distinguish a not-available and overflow cases for returned timestamps.
2021-05-12 17:51:31 +03:00
Leonid Yuriev
9c7c709b3e
mdbx: avoid underflow during monotime/16dot16 conversion.
2021-05-12 17:44:18 +03:00
Leonid Yuriev
c5268f1da7
mdbx-tools: add support of page operations stat to mdbx_stat
.
2021-05-12 14:41:09 +03:00
Leonid Yuriev
16d686bc42
mdbx: account msync/fsync write in page operations.
2021-05-12 14:40:58 +03:00
Leonid Yuriev
137f80e177
mdbx: refile rollback-writes inside mdbx_setup_dxb()
.
2021-05-12 14:40:58 +03:00
Leonid Yuriev
7d8099fc77
mdbx: refine mdbx_wipe_steady()
.
2021-05-12 14:40:58 +03:00
Leonid Yuriev
5731ad11c8
mdbx: don't use bool flags for mdbx_msync()
.
2021-05-12 14:40:58 +03:00
Leonid Yuriev
23e11e3a57
mdbx: refine/fix MDBX_MAYBE_UNUSED
for modern GCC 11.x and C20.
2021-05-12 14:40:58 +03:00
Leonid Yuriev
76b9cb5dcc
mdbx-tools: minor refine built-in usage/help.
2021-05-12 11:33:25 +03:00
Leonid Yuriev
9746dd20df
mdbx-tools: refine/fix quiet
mode.
2021-05-12 11:33:25 +03:00
Leonid Yuriev
dc9869f1a1
mdbx-ci: minor fix 'mingw' workflow (prev commit).
2021-05-11 21:25:16 +03:00
Leonid Yuriev
1d9f495c46
mdbx-ci: build both dll and static library by MinGW for testing.
...
Related to https://github.com/erthink/libmdbx/issues/196
2021-05-11 21:25:16 +03:00
Leonid Yuriev
ebab75642e
mdbx: add public MDBX_MAYBE_UNUSED
.
...
This also should fix C++ mdbx API build by MSVC 2015.
2021-05-11 21:07:40 +03:00
Leonid Yuriev
ed58ff9f81
mdbx++: add [[maybe_unused]]
to internal functions which depends on platform and compiler features.
2021-05-11 16:53:47 +03:00
Leonid Yuriev
605326b6e8
mdbx-cmake: don't specify filename extension while linking with ntdll
.
2021-05-11 08:07:42 +03:00
Leonid Yuriev
2071958f35
mdbx: remove extra notice/debug logging.
2021-05-11 00:24:01 +03:00
Leonid Yuriev
4fee14d1cf
mdbx: logging all reasons of MDBX_PROBLEM
.
...
Related to https://github.com/erthink/libmdbx/issues/195
2021-05-10 16:15:58 +03:00
Leonid Yuriev
244fab6c04
mdbx: fix extra conversion of an error during nested dupsort-DB update to MDBX_PROBLEM
.
...
Hope this fixes https://github.com/erthink/libmdbx/issues/195
2021-05-10 16:15:03 +03:00
Leonid Yuriev
74ea79ac1b
mdbx: minor reorder/shrink transaction fields.
2021-05-10 16:05:19 +03:00