Commit Graph

1589 Commits

Author SHA1 Message Date
Leonid Yuriev
0a5dcdb120 mdbx-dist: fix typo.
Change-Id: I474184db5f68fed83e00c0cd10a4493d6ce0ae93
2019-10-06 18:45:52 +03:00
Leonid Yuriev
ffa8fb1390 mdbx-ci: enable MDBX_DEBUG for Coverity-builds.
Change-Id: I750187782f240136aaf9a36b70606fe68d1331cb
2019-10-06 18:45:52 +03:00
Leonid Yuriev
7d621f6f0a mdbx: auto-define _GNU_SOURCE under control of MDBX_DISABLE_GNU_SOURCE.
Change-Id: I314d88b86517e3c44ad35fe02d3a27cb987c6d60
2019-10-06 18:45:52 +03:00
Leonid Yuriev
3c82ed0323 mdbx-ci: extend travis-ci.org build matrix.
Change-Id: Ia3e10276098e9fdcb877f94ad499f561ee5e98dd
2019-10-06 18:45:52 +03:00
Leonid Yuriev
85cd04b712 mdbx-test: using c++17 (for std::string_view).
Change-Id: I79d9bac8ea8ba6c337d71683549a37c8434b93fa
2019-10-06 18:45:52 +03:00
Leonid Yuriev
f629914217 mdbx-test: add dataset verification to hill testcase.
Change-Id: I8b781e98a02a8c32eeb82e54821b0941556d9f8c
2019-10-06 13:07:15 +03:00
Leonid Yuriev
440bfec193 mdbx: allow 256-byte pages.
Change-Id: I697de67683fb040ea0e360515a5a0839d97e9aa6
2019-10-05 23:36:55 +03:00
Leonid Yuriev
8291de71cb mdbx: support keys and dupsort values upto maxnode (half of a page) size.
Change-Id: I7717d55a0d6a7fdc4dc3caba8f8d3ad46a132f61
2019-10-05 23:36:55 +03:00
Leonid Yuriev
d9e1d7f23a mdbx: fix assertions inside pnl_search().
Change-Id: I735e54823b64a1ca03d7132c9ccc4e443d9b25a5
2019-10-04 18:52:15 +03:00
Leonid Yuriev
aa92d6b7e7 mdbx: add paranoid assertions to qsort and bsearch macros.
Change-Id: I68efcf83576dd01e2f0c37ca8afb30967f5369a9
2019-10-04 18:52:15 +03:00
Leonid Yuriev
e3b5381f30 mdbx-test: fix enabling MDBX_DBG_AUDIT.
Change-Id: If30f607f4c74f2bc39bd6b85dabbeb474284b989
2019-10-04 18:52:15 +03:00
Leonid Yuriev
529d484884 mdbx: fix audit for retired-pages tracking (minor, i.e. false-negative).
Change-Id: Ied44bc18efec7178ca5cc5f3324cfc75be24125a
2019-10-04 18:52:15 +03:00
Leonid Yuriev
39d43a5b57 mdbx: alter mdbx_cursor_put() paths.
Change-Id: I1836f8237162ffa34ce432038131fb6171fb7104
2019-10-04 18:52:15 +03:00
Leonid Yuriev
9e92ea2372 mdbx: add mdbx_page_check().
Change-Id: I8350d774f841726ca967be732593e33bfa8a6230
2019-10-04 18:52:15 +03:00
Leonid Yuriev
8768641872 mdbx: refine/simplify MDBX_node.
Change-Id: Idb3843727a409c3ef8d1d54e226a6f578a57c32e
2019-10-04 15:59:03 +03:00
Leonid Yuriev
daddd53793 mdbx: refine mdbx_page_copy().
Change-Id: I73ad272b468430e7bf79462750887e75ef71bd60
2019-10-04 15:59:03 +03:00
Leonid Yuriev
bf818ddf1e mdbx: fix assertion inside mdbx_txn_begin().
Change-Id: I0184c094e0f1fdc1a3ed9aede803cbfc2595ff05
2019-10-04 15:59:03 +03:00
Leonid Yuriev
5420a3b2fb mdbx-test: less detailed logging for Windows to avoid test-timeout.
Change-Id: I66e66e3a5c589106fe58dda554491890e0a22011
2019-10-02 13:52:54 +03:00
Leonid Yuriev
a644c50307 mdbx-ci: enable non-console progress indicator explicitly.
Change-Id: I58c27cc17f1ae11d476e5a338efe7ee515efc389
2019-10-02 12:08:07 +03:00
Leonid Yuriev
632e688202 mdbx-test: rework progess inticator.
Change-Id: Iaf3f7823ab7a0fe9f00607eb803390669c37005f
2019-10-02 02:51:50 +03:00
Leonid Yuriev
315e58578d mdbx: don't log empty file read error upon creation it.
Change-Id: I9cb9f9bee23817331f91ffd0847c599cf1dc0a25
2019-10-02 00:12:04 +03:00
Leonid Yuriev
4d49112a56 mdbx-test: refix logging.
Change-Id: I8852cca84669b4da2a994f2d5d2cec833e21f2f6
2019-10-02 00:12:04 +03:00
Leonid Yuriev
e1e2e2e935 mdbx: provide additional info via mdbx_env_info_ex().
Change-Id: Icfc751da73f090833800ad5429a9b296b4e34700
2019-10-01 17:09:57 +03:00
crypto.sowle
f918d89408 mdbx: English translation for osal.h
Change-Id: Iec7c3334f1866df243e7fcec89858ef37415a4a2
2019-10-01 16:27:38 +03:00
Leonid Yuriev
f0246463c0 mdbx: rework sync_timestamp.
Change-Id: I0e9ef9722735f89055814ba7eec0610ecdea8f0a
2019-10-01 15:01:33 +03:00
Leonid Yuriev
5693fad51d mdbx: add mdbx_osal_monotime_to_16dot16().
Change-Id: Ia65057def67cebf67252a77665efde4223b14d10
2019-10-01 14:47:26 +03:00
Leonid Yuriev
22f6e53520 mdbx: update README and refine API description.
Change-Id: I162eab823df0dbf6528dce74a9b9842fb8b79d1b
2019-09-30 03:07:07 +03:00
Leonid Yuriev
83da954725 mdbx: rework env_sync() for MDBX_NOMETASYNC, add mdbx_env_sync_poll().
Change-Id: I4d212c663853b00e221d17cb8483353231497b48
2019-09-30 00:15:13 +03:00
Leonid Yuriev
91ee841fc2 mdbx: clarify mdbx_env_set_flags().
Change-Id: I45d9af8cbaf9710e78c93d157c70fc2d305f3100
2019-09-30 00:15:13 +03:00
Leonid Yuriev
87f8c01ac4 mdbx: add space argument for oom-callback.
Change-Id: I27634e02046df375fffae66de3124e8cd90cc61c
2019-09-30 00:15:13 +03:00
Leonid Yuriev
86496e4480 mdbx: refine retired-next-reader insode mdbx_txn_info().
Change-Id: Iba57365cc4b7f4f09a0698502bc7aafcb6e67478
2019-09-28 14:41:49 +03:00
Leonid Yuriev
dcd3c497d9 mdbx-windows: rename mdbx_dll_handler() to avoid confusion with callbacks.
Change-Id: I1ee9e9aa46da33f06cf935d3be059f938416efb5
2019-09-28 00:46:16 +03:00
Leonid Yuriev
e41369fbc6 mdbx-build: minor fix build-info & options.
Change-Id: I72020c99a081845a155d7fda2ff30b7907124760
2019-09-27 11:33:30 +03:00
Leonid Yuriev
20447c877d mdbx: refine mdbx.h and API description, etc (5 of 5).
Change-Id: I851736cccb4d0271d6f351e1358cc5c4e1257bb4
2019-09-27 02:28:17 +03:00
Leonid Yuriev
1ab33333bc mdbx: refine options and build-info.
Change-Id: Ib1a778dd27a0ea8b3a05484b2208e2222736b2d3
2019-09-25 19:03:04 +03:00
Leonid Yuriev
40ee895aae mdbx: refine internal debug facilities.
Change-Id: I934cb8587f07c59268b16a0dd99daeb7ac440e62
2019-09-24 10:07:50 +03:00
Leonid Yuriev
a0025d84fd mdbx: refine txnid-safety for 32-bit archs.
Change-Id: I21d3a50fbc7ae0c625c51e919cb214740c1e97cb
2019-09-23 23:04:39 +03:00
Leonid Yuriev
b3c2118eb4 mdbx: explicity types inside LCK-file, reserve ABA-solver for 32-bit archs.
Change-Id: I2d1235365709858e2deb9f195f0fe8403721c705
2019-09-23 23:04:39 +03:00
Leonid Yuriev
3549744f40 mdbx: incremental/combined linear+binary search for dirty-pages list.
Change-Id: I20f606a0a5d3729bfc92cb20c9db00cc1971d2ad
2019-09-23 14:24:01 +03:00
Leonid Yuriev
f3a51be7ff mdbx: rewrite internal bsearch for pages-lists.
Change-Id: I77615a2146d83d4304c05c3bafb8bfc89a1a4fd0
2019-09-23 14:24:01 +03:00
Leonid Yuriev
aceab9be44 mdbx: replace internal qsort implementation (up to 25% faster).
Change-Id: I20cd1c7cf9d5d7dbf70f5fb1865efeecb4bc42fc
2019-09-23 14:24:01 +03:00
Leonid Yuriev
5a94d734cc mdbx: auto-sorting for dirty-pages list.
Change-Id: I12f3de68c020aeacba2ac80cedf4cae6cb590c6b
2019-09-23 14:23:55 +03:00
Leonid Yuriev
f5bd9b863c mdbx-ci: update travis-ci config.
Change-Id: I096d9ab1bb83413147c4b22f616e07d93541863c
2019-09-21 18:15:43 +03:00
Leonid Yuriev
83fbcb660f mdbx: add mdbx_txn_info().
Change-Id: I7bef500c23899874c996694b7cc52a38366730f0
2019-09-21 18:15:43 +03:00
Leonid Yuriev
0b500798df mdbx: refund loose-pages.
Change-Id: I33a5916b1a0876dde28f88658ab20a6a29fdccd7
2019-09-21 18:15:43 +03:00
Leo Yuriev
44d94a76e5 mdbx: maintaining retired pages sequence. 2019-09-21 01:36:55 +03:00
Leo Yuriev
c80a5cabd6 mdbx: internal rename befree to retired.
Change-Id: Ic72449fe242df0f0f88b671e56570e00b5e6202f
2019-09-20 20:44:35 +03:00
Leo Yuriev
8423a0a8bd mdbx: txnid-safety for non-64-bit and/or not-atomic platforms. 2019-09-20 20:23:25 +03:00
Leo Yuriev
da9dc75fbc mdbx-cmake: build-config MinSizeRel by default. 2019-09-19 17:01:28 +03:00
Leo Yuriev
b20363d187 mdbx-cmake: avoid cmake warnings in amalgamated build. 2019-09-19 17:01:28 +03:00