Leonid Yuriev
2c8f115400
mdbx-test: fix nops_completed type.
...
Change-Id: I9b9930bc26d4301d0da0fdf59bc70befc37e2f6a
2020-05-25 14:53:38 +03:00
Leonid Yuriev
4da4ab3650
mdbx-test: alter/refine iteration loops.
...
Change-Id: I78657b0c736d84dc3fbb75ad28a9465cad0ff4b2
2020-05-25 14:53:38 +03:00
Leonid Yuriev
bfad1f7086
mdbx-test: redesign fitting internal parameters of "ttl" & "nested" testcases.
...
Change-Id: I3ade4ba9d78c00ff6911c3e35738f7dcbf63de64
2020-05-25 14:53:38 +03:00
Leonid Yuriev
d83a765dbe
mdbx-test: don't fail "ttl" & "nested" testcases on key-space overflow.
...
Change-Id: I6788a02ecd88bec086b1d12c3d9246c8de59ed29
2020-05-25 14:53:38 +03:00
Leonid Yuriev
a9705c4f34
mdbx-test: print reached depth from long-stochastic script.
...
Change-Id: I4a2a17d5e3fc833038f490a8b3a818843c0fc83a
2020-05-25 14:53:38 +03:00
Leonid Yuriev
f7aac55374
mdbx-test: output b+trees depths from 'hill' testcase.
...
Change-Id: I69451096186bf35ee5816f6c7f5a101781f58214
2020-05-25 14:53:38 +03:00
Leonid Yuriev
5cc1cb3f87
mdbx: add mdbx_dbi_dupsort_depthmask().
...
Change-Id: Ib056663f26baea517d6f2b9d58cd64c643619ef9
2020-05-25 14:53:38 +03:00
Leonid Yuriev
4dc7f0cb4b
mdbx-test: rework cycling for ttl & nested testcases.
...
Change-Id: If2f83187bd7998c2ddc7e2487a17d13648241b9c
2020-05-25 14:53:38 +03:00
Leonid Yuriev
a85ae436eb
mdbx-test: simplify txn commit/abort path.
...
Change-Id: I86780a43f9f7b1a52dfa97168ad53cf7389d5e2e
2020-05-25 14:53:38 +03:00
Leonid Yuriev
2e7e1079c4
mdbx-test: auto-reducing nops for nested and ttl testcases.
...
Change-Id: Ie060c580e87becbc033611e00532449522f3adbe
2020-05-25 14:53:35 +03:00
Leonid Yuriev
51a016245a
mdbx: using couple of condvars/events to avoid glitches on Windows.
...
Change-Id: I3256a8dcbb95c78e8dea3eb31ca73f42c58d2f61
2020-05-24 13:29:55 +03:00
Leonid Yuriev
a2bdbc97dc
mdbx: truncate clk-file when DB closed in sync-state.
...
Change-Id: I2e2438606118e3aa3fa9d60811fea99994403d32
2020-05-23 01:34:52 +03:00
Leonid Yuriev
86a4085bf9
mdbx-windows: minor cleanup lck_downgrade().
...
Change-Id: I7f36baefe3e3d76083171ae0c0f97d21ad1e877a
2020-05-23 01:34:52 +03:00
Leonid Yuriev
3990f1cc07
mdbx-test: implement 'speculum' checking for ttl testcase.
...
Change-Id: Ic825711893f782a71e75447575ac76644ac3f482
2020-05-23 01:34:50 +03:00
Leonid Yuriev
d1d65f8090
mdbx: removes wrong condition from the assertion.
...
Fixes https://github.com/erthink/libmdbx/issues/105
I decided to remove the extra check, since a sub-cursor cannot return data
and there is no point in adding assignments just for this check.
Change-Id: I6a983930abb37b8f6ab768602763495572adf7fd
2020-05-22 22:12:08 +03:00
Leonid Yuriev
78e592579a
mdbx: refine update_gc() for small pages with huge transactions.
...
Change-Id: I66080e11a780a6a711691918179bc21d9a121347
2020-05-17 19:16:35 +03:00
Leonid Yuriev
d3e609d7ff
mdbx: simplify page-merge for LEAF2.
...
Change-Id: I25ad34f02b86b47562fc3c74f5454432f687cbde
2020-05-17 19:16:19 +03:00
Leonid Yuriev
5e2067decd
mdbx-tools: use MDBX_ACCEDE to open DBI with custom comparators.
2020-05-15 22:03:29 +03:00
Leonid Yuriev
cefbe02130
mdbx-test: add dump-load.sh script.
2020-05-15 22:03:29 +03:00
Leonid Yuriev
6fa2748fc7
mdbx-tools: refine mdbx_stat.
2020-05-15 22:03:29 +03:00
Leonid Yuriev
efe4fd2cc9
mdbx-tools: use equal-or-greater comparator for dont-check-ordering mode.
2020-05-15 22:03:29 +03:00
Leonid Yuriev
3f0d2a6ac2
mdbx-tools: extends dump/load to support all mdbx attributes.
...
Change-Id: I04772ce0083c46b70f5342e92c7509c9a425724d
2020-05-15 22:03:29 +03:00
Leonid Yuriev
8f31aad0fb
mdbx: use MAX_TXN internally (cosmetics).
...
Change-Id: Ic8171dbfa8bb32272e46e939223316f6182d3a7a
2020-05-15 18:13:10 +03:00
Leonid Yuriev
463a8af35b
mdbx: copy unaligned keys/values instead of return error to avoid break compatibility.
...
Change-Id: I2f95674a3836568a5c51155ca70da0683c50b424
2020-05-15 11:30:35 +03:00
Leonid Yuriev
0ee51f816e
mdbx-test: revert removal of the vector[...]
pattern to avoid issues from old Valgrind.
...
Change-Id: Idb16591254cf7f89b5cb9971aef7bb107736ca80
2020-05-15 11:30:35 +03:00
Leonid Yuriev
c2c74075e7
mdbx: fix Valgrind minor warning with MDBX_DEBUG > 1.
...
Change-Id: Idb93c6a3843e76071a55cbd6c34ddd22541c77d3
2020-05-15 11:30:35 +03:00
Leonid Yuriev
68241762e7
mdbx-test: implement cleanup().
2020-05-15 11:30:35 +03:00
Leonid Yuriev
c6edd6fb91
mdbx: exclude MDBX_NOSUBDIR from persistent flags.
2020-05-15 11:30:35 +03:00
Leonid Yuriev
231a34b627
mdbx-make: add --table=+data.integer --keygen.split=29
to test-targets.
2020-05-15 11:30:35 +03:00
Leonid Yuriev
a2c534b391
mdbx-test: refine long_stochastic
script.
...
Change-Id: Ic2aecfcb7e7f9b7233c7e72b6a34fb565fab6922
2020-05-15 11:30:35 +03:00
Leonid Yuriev
42dd0219e4
mdbx: minor fix/refine comments.
2020-05-15 11:30:35 +03:00
Leonid Yuriev
e28d223d42
mdbx: fix MDBX_NODUPDATA handling for key-value data.
...
More for https://github.com/erthink/libmdbx/issues/99
in continue to 9428efd2ae
Change-Id: I56050ddf5e56807a11d8613780c3ba76cc16d324
2020-05-15 11:30:35 +03:00
Leonid Yuriev
8c8c86038a
mdbx: fix unsigned-to-ptrdiff casting inside estimate().
...
Fixup after a238179c23
Change-Id: I316e4aa1f41462fd0017f8e0a7f6d6e82aa4f3db
2020-05-15 11:30:35 +03:00
Leonid Yuriev
e6b48b613a
mdbx: more checking for MDBX_DEBUG.
...
Change-Id: Ie6bedda942bc5623e5d7cee5d2011e41009ea3d9
2020-05-15 11:30:35 +03:00
Leonid Yuriev
f6fe3b44de
mdbx: fix fetching of first/lower key in case starting from LEAF2-page during page merge.
...
More for b3f375c57f
2020-05-15 11:30:35 +03:00
Leonid Yuriev
57d76d1f7a
mdbx: checking the order of keys on all pages during the audit (squashed).
2020-05-15 11:29:23 +03:00
Leonid Yuriev
30bb2363e1
mdbx: use comparators instead of is_samedata().
2020-05-15 08:59:10 +03:00
Leonid Yuriev
b7fb9bdeb1
mdbx: fix mdbx_xcursor_init1() for prev created databases.
2020-05-15 08:59:10 +03:00
Leonid Yuriev
3afa4498fe
mdbx-doc: note about ntdll.lib for Windows.
...
Related to https://github.com/erthink/libmdbx/issues/101
2020-05-15 08:59:10 +03:00
Leonid Yuriev
0c62355fb5
mdbx-make: add ntdll for Windows.
2020-05-15 08:59:10 +03:00
Leonid Yuriev
d986d09b7b
mdbx: rework min/max length checking for keys & values (squashed).
2020-05-15 08:59:03 +03:00
Leonid Yuriev
9736a36efb
mdbx: add branch-less flags_db2sub().
2020-05-11 02:03:55 +03:00
Leonid Yuriev
e4ce115876
mdbx: fix MSVC warnings (minor).
...
Change-Id: I614ee9ec1c21586fbe08c6cedb395ac57a81914f
2020-05-10 03:56:25 +03:00
Leonid Yuriev
5b4b3fa9ea
mdbx-windows: fix MDBX_AVOID_CRT option & ntdll.def distribution.
...
Resolve https://github.com/erthink/libmdbx/issues/100
Change-Id: I18ab055e79e249fca856353b2585739c88e01758
2020-05-10 03:41:28 +03:00
Leonid Yuriev
a238179c23
mdbx: rename/reorganize internal fields for clarity.
...
Change-Id: I9b23a8ca271f30ebedda9cd8d21094b4797f8bb3
2020-05-09 20:00:31 +03:00
Leonid Yuriev
8ee3c6ddb0
mdbx: minor fix return MDBX_EBADSIGN.
...
Change-Id: Ia0da8b4c2a5f0776688c92ad50433eed5e83b73c
2020-05-09 20:00:25 +03:00
Leonid Yuriev
9428efd2ae
mdbx: avoid upsertion (early exit) the same key-value data.
...
Resolve https://github.com/erthink/libmdbx/issues/99
Change-Id: I6aac66d6cb6818951e29bc8a3626c342d6137151
2020-05-09 03:25:20 +03:00
Leonid Yuriev
86dad2d727
mdbx: drop obsolete/unused mn_hi & mn_lo.
...
Change-Id: Ie0099c5afa66ccb679b124f3feb095a364519edc
2020-05-09 03:25:20 +03:00
Leonid Yuriev
db635c9fbb
mdbx: fix/don't clean env-signature if open failed.
2020-05-09 02:48:56 +03:00
Leonid Yuriev
b67f2da821
mdbx-cmake: fix/rework LTO-support for clang.
...
Change-Id: I04340e98c92b4006d78fcd58a657841287271a70
2020-05-09 02:48:41 +03:00