Commit Graph

1359 Commits

Author SHA1 Message Date
Leonid Yuriev
c287f88dbd mdbx: fix update_gc() for rare case when no reclaiming was made before.
Change-Id: Ib84da8ad26f9ef538dce2472c9ee89918bf6e25a
2018-09-17 15:25:45 +03:00
Leonid Yuriev
844e39ebef mdbx-test: seeding keygen with actor_id for better spreading. 2018-09-17 15:25:45 +03:00
Leonid Yuriev
01ae5bad7d mdbx-test: add data-check before delete/update.
Change-Id: I5afc1cbd95b5db0b442714229510d6786bf68d43
2018-09-17 15:25:45 +03:00
Leonid Yuriev
68fd9c9908 mdbx: add mdbx_get2() for testing.
Change-Id: Icd0961e464936fa2d24fd3ed87b61de038e955c2
2018-09-17 15:25:45 +03:00
Leonid Yuriev
940138fbda mdbx: rework prefer_max_scatter inside mdbx_update_gc().
Change-Id: I6deceb73f8578d9306528e0204ba0895781057fe
2018-09-17 15:25:45 +03:00
Leonid Yuriev
79633ecfd7 mdbx-test: add int-key/int-data cases to 'gc.sh'.
Change-Id: Idb33be532b623b86ed4e3127d9f1fe8abb24cc6f
2018-09-17 15:25:45 +03:00
Leonid Yuriev
35cf4bb60f mdbx: add validation for DUPSORT flags.
Change-Id: Id1f3325764fb496413d060ea0468394f7e18ae37
2018-09-17 15:25:45 +03:00
Leonid Yuriev
a91eef0c0f mdbx-test: cleanup DUPSORT flags.
Change-Id: Id5845e67bf6b4c40fdfdabe937d42911c8b08f1b
2018-09-17 00:18:39 +03:00
Leonid Yuriev
ff336fa65e mdbx: fix mdbx_replace().
Change-Id: I2af00f101017795ca2b967479f86e5ea7e8ad37b
2018-09-17 00:18:39 +03:00
Leonid Yuriev
5cc4bec7b7 mdbx-test: avoid extra 'jitter' testcase loops.
Change-Id: I50a3a5a03c0baebee81a90155089eeb44448ff4e
2018-09-17 00:18:39 +03:00
Leonid Yuriev
49a3e04d92 mdbx: restore MDBX_SET behaviour.
Change-Id: I1ddab75fdeeff594bf4ccdb14c7ce0415feb28f8
2018-09-17 00:17:13 +03:00
Leonid Yuriev
0a6af9bca0 mdbx-test: switch to 'basic' testcase in 'gc.sh' script.
Change-Id: I2fbd4c5f9d20a4c51af65b0dd67f1182b39ca6ae
2018-09-17 00:17:09 +03:00
Leonid Yuriev
bcbf040f5d mdbx: drop obsolete commented-out mdbx_node_add().
Change-Id: I092469e251991921b19abb72afab19dcfb70f862
2018-09-16 19:13:02 +03:00
Leonid Yuriev
40edf7e323 mdbx: refine mdbx_update_gc(), add extra audit.
Change-Id: I70b5bba977ab6fadfdffed722226ebe02abe252c
2018-09-15 15:19:16 +03:00
Leonid Yuriev
c945359858 mdbx: remove "" from debug-strings.
Change-Id: I27f9052e2d2e318f4386f40f17c321e8cbf005c0
2018-09-15 15:18:15 +03:00
Leo Yuriev
d299a2601d mdbx: add SLAPD_LMDB_LEGACY option. 2018-09-14 16:09:29 +03:00
Leo Yuriev
1fca3d4c93 mdbx: fix add-node-args asserts. 2018-09-14 16:09:20 +03:00
Leo Yuriev
6043181636 mdbx-test: workaroung for MSVC bug. 2018-09-14 15:26:31 +03:00
Leo Yuriev
5a461a84e0 mdbx-ci: add test.db to appveyor artefacts (windows). 2018-09-14 15:11:38 +03:00
Leo Yuriev
bf29182eda mdbx-ci: rename 'test.exe' to 'mdbx_test.exe'. 2018-09-14 14:15:42 +03:00
Leo Yuriev
b4eb9dda5c mdbx-ci: push logs to appveyor separately. 2018-09-14 14:10:36 +03:00
Leo Yuriev
f25c20693f mdbx-test: check commandline length under Windows. 2018-09-14 14:02:28 +03:00
Leonid Yuriev
30949031c1 mdbx: check for pgno inside mdbx_page_get().
Change-Id: I2fed589d592228c7a98a8aa76f5b6489569b13d2
2018-09-14 02:04:25 +03:00
Leonid Yuriev
bf22699fb3 mdbx: avoid empty and unneeded large/overflow pages.
Change-Id: I388a60180b999889fc15a1f3f3243c007a15edc6
2018-09-13 21:49:27 +03:00
Leonid Yuriev
e08409d209 mdbx: add mdbx_cursor_check() for audit.
Change-Id: Ica2133dea40864fb746f2dea39d8c09364b1243e
2018-09-13 21:45:12 +03:00
Leonid Yuriev
70c796463b mdbx: fix tracking inside mdbx_cursor_del().
Change-Id: Ib1b3f00270d6aec18428da4caf0f173378b9b5b5
2018-09-13 21:20:48 +03:00
Leo Yuriev
3b80b358e5 mdbx-ci: temporary disable 64-bit Windows builds (test fail due command-line limitations). 2018-09-13 21:20:01 +03:00
Leo Yuriev
561d30518a mdbx: remove needless assert. 2018-09-13 21:18:02 +03:00
Leo Yuriev
01e016e6aa mdbx: fix tracking inside mdbx_cursor_del0().
Change-Id: If65804a610730cf80d73fc31c1e62fb9bf3b6c82
2018-09-13 21:12:39 +03:00
Leonid Yuriev
94aa20febc mdbx: rework mdbx_dpage_free(), drop mdbx_page_free().
Change-Id: Ida58003b355fe0271a835a50c78b930c73806e87
2018-09-13 21:05:26 +03:00
Leo Yuriev
f22c0856bf mdbx: fix tracking inside mdbx_rebalance(). 2018-09-13 21:05:01 +03:00
Leo Yuriev
76f7c118c6 mdbx: alter mdbx_rebalance(). 2018-09-13 21:02:14 +03:00
Leo Yuriev
ff738f1512 mdbx: alter mdbx_page_merge().
Change-Id: I33a3523e0efc914f6d85dfbbf69b97dd70d6c721
2018-09-13 20:59:10 +03:00
Leonid Yuriev
36fe81edad mdbx: refine mdbx_update_key() and mdbx_cursor_put().
Change-Id: I26b97f1eecff1f03e578193aebb5592ab48dd38e
2018-09-13 20:51:16 +03:00
Leonid Yuriev
8cd0107e6a mdbx: alter mdbx_page_loose() and rework mdbx_kill_page().
Change-Id: I646b6fb6cdcd05f5058356ee38f888519403a78f
2018-09-13 20:47:24 +03:00
Leo Yuriev
cbd0b42e20 mdbx: alter mdbx_page_split(). 2018-09-13 20:37:15 +03:00
Leonid Yuriev
6d33c137f6 mdbx: fix mdbx_cursor_put().
Change-Id: I280c6f275372952ce3411e564928ad6c3387b00c
2018-09-13 20:32:07 +03:00
Leonid Yuriev
78143d9a48 mdbx: fix mdbx_node_add_leaf2().
Change-Id: I07c5f7c1e3e21cbc4699a4fee69d651ac0779aca
2018-09-13 20:31:16 +03:00
Leo Yuriev
6206b67d32 mdbx: rework move-node and split add-node. 2018-09-13 20:28:40 +03:00
Leonid Yuriev
771ac1928b mdbx: add more const (minor).
Change-Id: I8aa44db6ed5da6a70bc8a011b83ab49a8f9f47c6
2018-09-13 20:17:12 +03:00
Leonid Yuriev
b6aace0825 mdbx: refine page-type macros.
Change-Id: I9f331bf17c1de1a1402d66e8b4081f31133e2b59
2018-09-13 20:06:13 +03:00
Leo Yuriev
a30828b457 mdbx: alter mdbx_node_shrink(). 2018-09-13 19:56:53 +03:00
Leo Yuriev
ecb0e268b0 mdbx: more asserts for page-type. 2018-09-13 19:54:02 +03:00
Leonid Yuriev
859f306c9f mdbx-test: refine gc.sh script. 2018-09-13 19:53:19 +03:00
Leonid Yuriev
82ff482a0a mdbx-test: add setloglevel().
Change-Id: If1262d0a0a76e00e4453e40b62022a5418655391
2018-09-13 19:47:43 +03:00
Leonid Yuriev
b2ddd49b77 mdbx: assertions for LEAF/BRANCH-pages mixing.
Change-Id: I52ddc64b99fa5c07e2d50a52cc17989db5ab35d5
2018-09-13 19:45:06 +03:00
Leonid Yuriev
69c14f3694 mdbx: minore refine mdbx_page_alloc().
Change-Id: Ie5e5db2a0d24547544c55467cafa6237aead8c84
2018-09-13 19:44:32 +03:00
Leo Yuriev
22e7630d53 mdbx: fix MDBX_CORRUPTED due open/shrink collision. 2018-09-13 19:32:03 +03:00
Leo Yuriev
a150b791a4 mdbx: audit freeing large/overflow pages. 2018-09-13 18:15:40 +03:00
Leonid Yuriev
94b1553637 mdbx: fix mdbx_ovpage_free().
Change-Id: I453921b356f412fad59efd6ce31ddb75f0d84358
2018-09-13 18:15:40 +03:00