Leonid Yuriev
971f924c44
mdbx-build: rearrange source files, rework CMakeLists.txt and refine GNUMakefile (squashed).
...
Change-Id: Id73d346695011dab2f670bb9e6293a1e5a1835ca
2020-04-17 00:37:57 +03:00
Jens Alfke
f414876e99
mdbx: fixed AddressSanitizer errors after closing db.
...
Unpoison memory before unmapping, to avoid leaving dangling poisoned
address space. This caused Clang AddressSanitizer false errors after
database was closed.
More for https://github.com/erthink/libmdbx/issues/73
Close https://github.com/erthink/libmdbx/pull/93
Change-Id: I9cf19a06521330a90a62ed15317e1f966f0bd56f
2020-04-15 02:29:05 +03:00
Leonid Yuriev
1b451cce06
mdbx: minor README update.
...
Change-Id: I8975d515ffff0ccfd6adc5d76908ee96d89b230d
2020-04-14 14:57:58 +03:00
Leonid Yuriev
ab2c98e41c
mdbx: support for Android/Bionic.
...
Change-Id: Ia6a4d8a7848ffe3e488b4a92c9ec53c61c78a9bb
2020-04-13 23:36:56 +03:00
Leonid Yuriev
595482ca57
mdbx: fix typo (extra closing parenthesis).
...
Change-Id: Icae740a640ab59dedc7608a725cc24623dba62bd
2020-04-13 23:35:08 +03:00
Leonid Yuriev
0986cb9379
mdbx-posix: fix feature-testing for PTHREAD_MUTEX_ROBUST.
...
Change-Id: I16f008b8448a70d4145ba2bcfe22b3326c8a0e21
2020-04-13 22:46:55 +03:00
Leonid Yuriev
abf38e97cc
mdbx: minor fix prev commit.
...
More for https://github.com/erthink/libmdbx/issues/97
Change-Id: I09ffe3430aa07bf5b01d9ad991affa004bb998a6
2020-04-11 20:51:24 +03:00
Leonid Yuriev
f89c3eda17
mdbx: crutch for WSL.
...
Fixes https://github.com/erthink/libmdbx/issues/97
Change-Id: Ia863ffc8cd939b1af65f21ab0c5c8197abf4e793
2020-04-11 20:33:36 +03:00
Leonid Yuriev
5a81413f17
mdbx-posix: fix comment typo.
...
Change-Id: I4573926a50ba392222dc738be3a7b9b3fabbb368
2020-04-11 17:21:36 +03:00
Leonid Yuriev
c590eb656f
mdbx: fix null-deref in an ASAN-enabled build while opening DB with error.
...
More for https://github.com/erthink/libmdbx/issues/95
Change-Id: I6250fe7b0fbbcae497c2b5c1da9b4e9f78ecf0f0
2020-04-11 14:55:03 +03:00
Leonid Yuriev
17d7d48281
mdbx: fix null-deref in an ASAN-enabled build while opening DB with MDBX_RDONLY.
...
Fixes https://github.com/erthink/libmdbx/issues/95
Change-Id: I1c000d3a456897f73367a590ef9fbda8ae90391c
2020-04-11 03:06:05 +03:00
Leonid Yuriev
9b94e45e25
mdbx-make: add CFLAGS_EXTRA for convenience.
...
Change-Id: I838f5b60cf9479e230a74da1bf80d30a8a7b437e
2020-04-11 02:37:50 +03:00
Leonid Yuriev
129597bbed
mdbx: update iOS note in the README.
...
More for https://github.com/erthink/libmdbx/issues/92
Change-Id: I19700ea02c42daed05de699941200fc527a5c966
2020-04-10 21:44:06 +03:00
Jens Alfke
48b6f76159
mdbx: Don't include <sys/vmmeter.h> on Apple platforms ( #94 )
...
A simpler fix for the issue of this header being missing on iOS.
It's not actually needed at all on Mach-based OSs.
Fixes https://github.com/erthink/libmdbx/issues/92
2020-04-10 21:40:58 +03:00
Leonid Yuriev
19454f26e6
mdbx-cmake: more for iOS.
...
Change-Id: Iebc6fafe23b3c39462bbf497e60148daffd519a9
2020-04-08 22:02:17 +03:00
Leonid Yuriev
99f07f5054
mdbx: add iOS notes to README.
...
Change-Id: Ia46a43376370a73b179dbc4ab65e43956ee8c43a
2020-04-08 02:05:18 +03:00
Leonid Yuriev
469c045aa9
cmake-dist: add options-support to cmake.
...
Related to https://github.com/erthink/libmdbx/issues/86
Change-Id: I9a0f2e0250608339373f34a55dfa2db88eed0f8c
2020-04-07 23:10:30 +03:00
Leonid Yuriev
5a94808c27
mdbx-cmake: add workaround for iOS.
...
Related to https://github.com/erthink/libmdbx/issues/92
Change-Id: Ie1f5aff110d807e3bee729e999bdce9f9125ee6e
2020-04-07 23:10:12 +03:00
Leonid Yuriev
81dca1f7e9
mdbx-cmake: add MDBX_BUILD_TOOLS option.
...
Change-Id: Ib6329fdea66dd52720021b80a6fecdaa078ceb2b
2020-04-07 23:06:18 +03:00
Leonid Yuriev
d752de0ee0
mdbx-cmake: sync cmake-compiler module with erthink upstream.
...
Change-Id: I4eeeb2bc2800bfb44c915533843c59438733ff4b
2020-04-07 22:58:55 +03:00
Leonid Yuriev
ed6863851e
mdbx: crutch for iOS.
...
Workaround for https://github.com/erthink/libmdbx/issues/92
Change-Id: Id8ed900d1310212ae0edd4bf6ab11bdba9c106a1
2020-04-07 17:35:49 +03:00
Leonid Yuriev
921f43da6f
mdbx: fix ceiling/flooring madvise-edge inside mdbx_sync_locked().
...
Fixes https://github.com/erthink/libmdbx/issues/91
Change-Id: I17da72d9a53a2c7453d81488bd3297063de0b7d1
2020-04-07 03:54:48 +03:00
Leonid Yuriev
94e58d7acc
mdbx: more explicit casting to size_t (paranoia).
...
Change-Id: I1c65943cdcdd77cc12bc27d9ced19765ea7911bb
2020-04-07 03:48:23 +03:00
Leonid Yuriev
bf0cff9a8a
mdbx: add & use floor_powerof2().
...
Change-Id: Ib5be7d5a68dc7944e208d75094050383ccdfa6d0
2020-04-07 03:48:20 +03:00
Leonid Yuriev
a846fb0d21
mdbx: rename roundup_powerof2() to ceil_powerof2().
...
Change-Id: Ie22f10ffa6637ef74f2c705fad5fc45a8d19d22e
2020-04-07 03:45:11 +03:00
Leonid Yuriev
4ad1c2daed
mdbx: minor fix/workaround to avoid GCC 10.x pedantic warnings.
...
Change-Id: If67c1ae593ad2c39130054475c37321dca761f5b
2020-04-07 01:54:58 +03:00
Leonid Yuriev
d37d3b54f4
mdbx-make: refine install/uninstall targets.
...
Change-Id: Id8390b6ff462f55237534a06a92d03b8666b518f
2020-04-07 00:36:56 +03:00
Leo Yuriev
cf7cce9079
mdbx-make: workaround for non-GNU tar.
...
Related to https://github.com/erthink/libmdbx/issues/85#issuecomment-606490013
and https://github.com/erthink/libmdbx/issues/86
Change-Id: I9e7d08214dbaf214af29bb2d3ab2f9fd9b76f9fc
2020-04-04 17:40:13 +03:00
Leo Yuriev
3f7c9846e7
mdbx: use uintptr_t instead of size_t for pointer-wide values and types.
...
More for https://github.com/erthink/libmdbx/issues/88
Change-Id: Ic625096df3c09d0dd578c7b79aa302be35480699
2020-04-04 16:52:44 +03:00
Leo Yuriev
75de63dff1
mdbx: refine type-casting inside mdbx_thread_self() to avoid warning.
...
2 of 2 for https://github.com/erthink/libmdbx/issues/88
Change-Id: Ic4994141d23a5417b18f6b03a3e4038859fb9210
2020-04-04 16:52:42 +03:00
Leo Yuriev
089d7212e7
mdbx: fix mdbx_build_info for undefined flags case.
...
1 of 2 for https://github.com/erthink/libmdbx/issues/88
Change-Id: I079b329abe8f20793dc78c90ea55f874693dde43
2020-04-04 16:52:39 +03:00
Leo Yuriev
d329ea1fe0
mdbx-tools: fix txnid_t casting inside mdbx_stat.
...
Change-Id: I69799d8caca3e6692a433b2e62e7b2867b152b00
2020-04-04 16:01:05 +03:00
Leonid Yuriev
8f5ae79b51
mdbx: bump version to 0.7.x
...
Change-Id: I6cb06fbd7119eed086b54a9760db1e0edf5de07b
v0.7.0
2020-03-18 17:19:12 +03:00
Leonid Yuriev
86b1f2017a
mdbx: add note about Wine limitations.
...
Change-Id: I0d09c6161f3ed8eacbbedbb9f274d81cd5cfdd2c
2020-03-18 17:19:12 +03:00
Leonid Yuriev
9b1cddf520
mdbx-doc: update Rust bindings info.
...
Resolves https://github.com/erthink/libmdbx/issues/85
Change-Id: I3df494eddeab6dab3dc8b82e5949e627917e3aca
2020-03-02 13:52:23 +03:00
Leonid Yuriev
251d34d6e6
mdbx-doc: more for custom comparators.
...
Change-Id: I3326c5bdedbbdb01b1865bff68aa7ba8bc7056cc
2020-03-02 13:50:33 +03:00
Leo Yuriev
8358dda7f1
mdbx-doc: add link to telegram group.
...
Change-Id: I6440939d3150af7dedbbcd0e855f3032c5229064
2020-02-29 00:57:22 +03:00
Leo Yuriev
76e29c21f1
mdbx: merge branch 'devel' (crutches for Wine).
...
Change-Id: I1779bc6987449e403216584cdd2846e910f34c8a
2020-02-28 19:05:47 +03:00
Leo Yuriev
56222db3ba
mdbx-test: follow MDBX_UNABLE_EXTEND_MAPSIZE changes.
...
Change-Id: I3c0074db11e229c5a7aaac6a589a42c041666b17
2020-02-28 17:39:52 +03:00
Leo Yuriev
5072b45026
mdbx: rename MDBX_MAP_RESIZED to MDBX_UNABLE_EXTEND_MAPSIZE.
...
Change-Id: I22fbdb4f08fd7a6ae37da42e6827677ae8a8337b
2020-02-28 16:40:56 +03:00
Leo Yuriev
63449a44c5
mdbx-cmake: #if/#endif instead of cmake-conditions for posix/windows sources.
...
Change-Id: Ic95bd3ba345160cf1d68c79f11d6560d4c41cb2b
2020-02-28 15:51:12 +03:00
Leonid Yuriev
ecffc831fa
mdbx-tools: avoids extra error messages "bad txn" from mdbx_chk when DB is corrupted.
...
Change-Id: I6b92aced83bcf7e0c8e5c7108ddcf60714c9b30c
2020-02-27 16:04:00 +03:00
Leonid Yuriev
6c76af5181
mdbx-doc: refine prev commit.
...
Change-Id: I3ec7544eeee5a2ebfa268d667a1724e8251e7e2e
2020-02-25 15:19:49 +03:00
Leonid Yuriev
061d3cc8fd
mdbx-doc: clarify ACI for no-sync modes, reformat text.
...
Change-Id: I56b4f167eb334b4903d121f7cd6f33aa0b612dcd
2020-02-25 15:02:20 +03:00
Leonid Yuriev
6248b67f75
mdbx-windows: more for running under Wine.
...
Wine unable create mapped-view large tran secton size.
More for https://github.com/erthink/libmdbx/issues/83
Change-Id: I93e98d58a827c785f8257cd9cac387a333e59621
2020-02-24 20:46:36 +03:00
Leonid Yuriev
fbf55e17cb
mdbx-windows: one more workaround for Wine.
...
SetFileInformationByHandle() is not implemented by Wine.
Change-Id: I61783c8d173397094cd6cbad7efc9d7aac57b470
002c:Call KERNEL32.SetFileInformationByHandle(00000060,00000006,0022f890,00000008) ret=127dd1b2
002c:fixme:file:SetFileInformationByHandle 0000000000000060, 6, 000000000022F890, 8
002c:Ret KERNEL32.SetFileInformationByHandle() retval=00000000 ret=127dd1b2
Related to https://github.com/erthink/libmdbx/issues/83
2020-02-22 20:02:17 +03:00
Leonid Yuriev
289f2896d0
mdbx-windows: more for Wine.
...
Related to https://github.com/erthink/libmdbx/issues/83 .
UnlockFile() cold return ERROR_LOCK_VIOLATION when file not locked, instead of ERROR_NOT_LOCKED.
Current versions of Wine seem to work correctly.
Change-Id: Ibc5bd4352184efc7f88705e7ae04d6656286a96e
2020-02-21 19:58:32 +03:00
Leonid Yuriev
4fed2d9fc0
mdbx-windows: minor workaround for MSVC "unresolved external symbol __except1 ..."
...
Workaround for MSVC error LNK2019: unresolved external symbol __except1 referenced in function __ftol3_except.
2020-02-19 16:31:25 +03:00
Leo Yuriev
9aa816dc73
mdbx-windows: using RegGetValueA() instead of wchar_t version.
...
Change-Id: I0848eaf2083985ae27fec605358329830b0733c2
2020-02-19 16:00:40 +03:00
Leo Yuriev
f750086bc1
mdbx-windows: rework workaround for Wine.
...
Resolves https://github.com/erthink/libmdbx/issues/83
in accordance with https://bugs.winehq.org/show_bug.cgi?id=48620
Change-Id: Ieb4385efdcd86c865184a783363cf6e90da14f61
2020-02-18 22:51:34 +03:00