Leonid Yuriev
f2d2a4c698
mdbx-doc: minor fix typo / wrong reference to mdbx_cursor_set()
.
...
Change-Id: I22216ffc2ad2d7545d87969df4284239f8caecb5
2021-03-14 16:31:38 +03:00
Leonid Yuriev
8133d93678
mdbx: add LIBMDBX_NO_EXPORTS_LEGACY_API
build option.
...
Change-Id: I9d9dcffe63fce843e22132c3829adca57714d818
2021-02-02 00:25:48 +03:00
Leonid Yuriev
f698f07ff9
mdbx: fix operation for unusual small/large system page size.
...
More for https://github.com/erthink/libmdbx/issues/157
Change-Id: I4f2ed54b50653d0375538b82c48590d1037cd93b
2021-01-29 21:19:58 +03:00
Leonid Yuriev
86db3670aa
mdbx-doc: use multiple Doxygen's groups for cursor functions (haven't effect with current Doxygen).
...
Change-Id: I00263bfd19588e83410f449886b7eefce4bcf0e1
2021-01-26 22:19:14 +03:00
Leonid Yuriev
7ae5ddefe5
mdbx-doc: fix typo and add refs to c_crud_hints
anchor.
...
Change-Id: I46b26ee6f9ca4e1f06c573b61a42d8fbedefd836
2021-01-26 22:18:28 +03:00
Leonid Yuriev
251eda6fb8
mdbx: HNY!
...
Change-Id: I86c7028001b349e3d06b837dc8e2f7e60fb3b1a2
2021-01-26 07:27:13 +03:00
Leonid Yuriev
4e13d1239a
mdbx: 'runtime options' feature release.
...
Resolve https://github.com/erthink/libmdbx/issues/128
Change-Id: I67411f623ecb917d3be1cdc6aa78b879d8e68b4c
2021-01-23 01:13:20 +03:00
Leonid Yuriev
4ae2a107bf
mdbx: add MDBX_opt_loose_limit
runtime option.
...
More for https://github.com/erthink/libmdbx/issues/128
Change-Id: I298bf1eef24575df72615ee07e93f5073405e8e0
2021-01-22 23:52:03 +03:00
Leonid Yuriev
dc34041600
mdbx: alter defaults for MDBX_opt_rp_augment_limit
and MDBX_opt_txn_dp_limit
runtime options.
...
Change-Id: I08cdbfb18089a3fed4b32d931ca4423027a9939f
2021-01-22 23:16:21 +03:00
Leonid Yuriev
b82d1d5063
mdbx: add MDBX_opt_spill_parent4child_denominator
runtime option.
...
More for https://github.com/erthink/libmdbx/issues/128
Change-Id: If1549c3855eb59c107eb115e6dbca515e81644f9
2021-01-22 18:18:52 +03:00
Leonid Yuriev
56aaad03bc
mdbx: add MDBX_opt_spill_max_denominator
and MDBX_opt_spill_min_denominator
runtime options.
...
More for https://github.com/erthink/libmdbx/issues/128
Change-Id: I6b1b00e30ac11e9c2e3d3d3a29cc73079b41d539
2021-01-22 17:25:44 +03:00
Leonid Yuriev
a906569c58
mdbx: merge branch 'master' into devel-rebase.
...
Change-Id: I96d944f283029b9c60e45683ee66b4564273b407
2021-01-19 23:51:52 +03:00
byronhe
3a441d6d3a
Update mdbx.h
2021-01-04 17:49:25 +03:00
Leonid Yuriev
082df3a573
mdbx: refine MDBX_opt_* descriptions and defaults.
...
Change-Id: I99ddf530d5683b755bc8bab1ea1098b0cc00b181
2020-12-17 22:03:14 +03:00
Leonid Yuriev
76716c23b0
mdbx: add MDBX_opt_txn_dp_initial
& MDBX_opt_txn_dp_limit
.
...
More for https://github.com/erthink/libmdbx/issues/128
Change-Id: I4be3c7476e9ce16ed4f27691d0df653552930e3c
2020-12-03 17:17:30 +03:00
Leonid Yuriev
4cd08f0ef9
mdbx: add MDBX_opt_rp_augment_limit
.
...
More for https://github.com/erthink/libmdbx/issues/128
Change-Id: I94f3350b72ad11d0b586aaef1574f7654223bc40
2020-12-02 20:07:55 +03:00
Leonid Yuriev
461ba000e3
mdbx: add MDBX_opt_dp_reserve_limit
.
...
More for https://github.com/erthink/libmdbx/issues/128
Change-Id: I620b6dcd833fcff19680770974f32431ab91c0ab
2020-12-02 12:42:16 +03:00
Leonid Yuriev
8f60050991
mdbx: initial support for set/get_options.
...
Initial for https://github.com/erthink/libmdbx/issues/128
Change-Id: I540784c8b54d7443748e3c95f89a7390b818c811
2020-12-02 12:42:13 +03:00
Leonid Yuriev
3d41abd318
mdbx: use unsigned
for DEFINE_ENUM_FLAG_OPERATORS
to be more consistent with C/C++standards.
...
Change-Id: Iadbd59694606b577602f8e86ec371c3599639b19
2020-11-29 05:49:20 +03:00
Leonid Yuriev
8381ed1d2e
mdbx: minor fix comment copy&paste typo.
...
Change-Id: I34d4eaebdcf7a4e3bda7f0834e6e14d17e26f7db
2020-11-29 05:49:20 +03:00
Leonid Yuriev
28a275cba2
mdbx: minor refine MDBX_CXX#_CONSTEXPR
macros for Doxygen.
...
Change-Id: I35d8cb6badacdee089e2382b34524e108423acfc
2020-11-29 05:49:20 +03:00
Leonid Yuriev
659fbb3df7
mdbx-doc: fix MDBX_INTEGERDUP
description.
...
Resolve https://github.com/erthink/libmdbx/issues/140
Change-Id: Ifb24cbbc9cba7d0c09da8e99e6d87412d151d093
2020-11-24 07:50:52 +03:00
Leonid Yuriev
94fae97f88
mdbx: avoid paranoid CLANG's enum ops UB.
2020-11-17 15:00:51 +03:00
Leonid Yuriev
5e02e7fb56
mdbx: add MDBX_SET_LOWERBOUND
for mdbx_cursor_get()
.
...
Change-Id: I3638fdd10be8dfe128c43b465e9ca71f89175b3e
2020-11-17 08:13:46 +03:00
Leonid Yuriev
b6f0070f85
mdbx: add mdbx_cursor_copy()
.
...
Change-Id: I476f1230beec6a550897bef236745530154c1079
2020-11-16 07:07:38 +03:00
Leonid Yuriev
1f6e325d71
mdbx-doc: refine Doxygen configuration.
...
Change-Id: I8fbcb30f18ff9f8efafbf97c22a1dfbebe7e0926
2020-10-31 02:55:22 +03:00
Leonid Yuriev
b1d21d571f
mdbx: minor refine/fix MDBX_SAFE_NOSYNC
description.
...
Change-Id: I26c6f56363b9ec89dd321961133784b410cea1e0
2020-10-27 20:02:17 +03:00
Leonid Yuriev
e1d9ac8b29
mdbx: merge branch 'devel'.
...
Change-Id: I75e7f183fba291faa7e380e7c95c3a7bb44fe6ac
2020-10-27 20:02:00 +03:00
Leonid Yuriev
31857210c5
mdbx: minor reformat doxygen comments.
...
Change-Id: I0dbe6ddc1423a1fdcb2eb73b2e982e398de1faa7
2020-10-26 00:42:21 +03:00
Alex Sharov
97b47dea87
mdbx-docs: refine docs for geo.shrink_threshold ( #125 )
2020-10-22 14:12:04 +03:00
Leonid Yuriev
b964b2abf5
mdbx: more spelling.
...
Change-Id: I45e42c1d8ef51f910b8e41279b92e54a6b2ce772
2020-10-21 01:00:48 +03:00
Leonid Yuriev
f73a8a8680
mdbx: add latency gathering for commit stages.
...
Change-Id: If68ceb6e69e5e565ce9de0fd9a80424b6da280c5
2020-10-21 01:00:48 +03:00
Leonid Yuriev
7cf92b66cf
mdbx: add LIBMDBX_INLINE_API (both inline and non-inline of some API functions).
...
Change-Id: I00c2b6d3d2a0467080791ea0c1c2242742a20c78
2020-10-17 01:00:36 +03:00
Leonid Yuriev
de1856a73c
mdbx: workaround for broken DEFINE_ENUM_FLAG_OPERATORS
from Windows SDK.
...
Change-Id: I5335c72061b7c5b6b29c683061a5da95544b9753
2020-10-10 23:53:35 +03:00
Leonid Yuriev
6e82dd5d0c
mdbx: minor refine description of mdbx_env_delete()
.
...
Change-Id: I095c741fba08b08c6302116d9601438d813524a1
2020-10-10 18:30:21 +03:00
Leonid Yuriev
0627d902dd
mdbx: add mdbx_env_delete()
.
...
Resolves https://github.com/erthink/libmdbx/issues/119
Related to https://github.com/Kerollmops/heed/issues/58
Change-Id: Iec5bf5978e45bb6843f3ed8dd06ea4d34f2895cb
2020-10-10 00:58:53 +03:00
Leonid Yuriev
c4e3b95301
mdbx: clarify the mdbx_env_open()
's pathname
parameter description.
...
Change-Id: I1afafe621b2047abe4af02d37d51142a94abb982
2020-10-10 00:52:41 +03:00
Leonid Yuriev
44b1a3bcff
mdbx: release v0.9.1
...
Added features:
- Preliminary C++ API with support for C++17 polymorphic allocators.
- [Online C++ API reference](https://erthink.github.io/libmdbx/ ) by Doxygen.
- Quick reference for Insert/Update/Delete operations.
- Explicit `MDBX_SYNC_DURABLE` to sync modes for API clarity.
- Explicit `MDBX_ALLDUPS` and `MDBX_UPSERT` for API clarity.
- Support for read transactions preparation (`MDBX_TXN_RDONLY_PREPARE` flag).
- Support for cursor preparation/(pre)allocation and reusing (`mdbx_cursor_create()` and `mdbx_cursor_bind()` functions).
- Support for checking database using specified meta-page (see `mdbx_chk -h`).
- Support for turn to the specific meta-page after checking (see `mdbx_chk -h`).
- Support for explicit reader threads (de)registration.
- The `mdbx_txn_break()` function to explicitly mark a transaction as broken.
- Improved handling of corrupted databases by `mdbx_chk` utility and `mdbx_walk_tree()` function.
- Improved DB corruption detection by checking parent-page-txnid.
- Improved opening large DB (> 4Gb) from 32-bit code.
- Provided `pure-function` and `const-function` attributes to C API.
- Support for user-settable context for transactions & cursors.
- Revised API and documentation related to Handle-Slow-Readers callback feature.
Deprecated functions and flags:
- For clarity and API simplification the `MDBX_MAPASYNC` flag is deprecated.
Just use `MDBX_SAFE_NOSYNC` or `MDBX_UTTERLY_NOSYNC` instead of it.
- `MDBX_oom_func`, `mdbx_env_set_oomfunc()` and `mdbx_env_get_oomfunc()`
replaced with `MDBX_hsr_func`, `mdbx_env_get_hsr` and `mdbx_env_get_hsr()`.
Fixes:
- Fix `mdbx_strerror()` for `MDBX_BUSY` error (no error description is returned).
- Fix update internal meta-geo information in read-only mode (`EACCESS` or `EBADFD` error).
- Fix `mdbx_page_get()` null-defer when DB corrupted (crash by `SIGSEGV`).
- Fix `mdbx_env_open()` for re-opening after non-fatal errors (`mdbx_chk` unexpected failures).
- Workaround for MSVC 19.27 `static_assert()` bug.
- Doxygen descriptions and refinement.
- Update Valgrind's suppressions.
- Workaround to avoid infinite loop of 'nested' testcase on MIPS under QEMU.
- Fix a lot of typos & spelling (Thanks to Josh Soref for PR).
- Fix `getopt()` messages for Windows (Thanks to Andrey Sporaw for reporting).
- Fix MSVC compiler version requirements (Thanks to Andrey Sporaw for reporting).
- Workarounds for QEMU's bugs to run tests for cross-builded library under QEMU.
- Now C++ compiler optional for building by CMake.
TODO for next version(s):
- Rework/speedup the implementation of the dirty page list (lazy compactification, lazy sorting via merge).
- Finalize C++ API (few typos and trivia bugs are likely for now).
- Packages for ROSA Linux, ALT Linux, Fedora/RHEL, Debian/Ubuntu.
Change-Id: I668d77e4545d444b60708b8c64a66ce43b2c56a0
2020-09-30 13:28:01 +03:00
Leonid Yuriev
f6850f5367
mdbx: Support for user-settable cursor context.
...
Change-Id: I9bd60c432924e39020b2d3af3280f13c44d6cd91
2020-09-29 21:15:25 +03:00
Leonid Yuriev
72e136b9da
mdbx-doc: fix/refine README & Doxygen docs.
...
Change-Id: I79cfb44f84fbf0f118b0d209af1ef62bb9dae72a
2020-09-29 21:15:25 +03:00
Leonid Yuriev
c8a0951566
mdbx: rework API and Docs around Handle-Slow-Readers (no algorithmic changes).
...
Change-Id: I5b76a8400ce6f5f241f8e4a7f53d746fe39f8e1e
2020-09-29 21:15:25 +03:00
Leonid Yuriev
6294e1710a
mdbx: support for user-settable transaction context.
...
Change-Id: Ib4a345628e2c1ca2f95ac7615ea53d94911e5198
2020-09-29 20:59:55 +03:00
Leonid Yuriev
5627521f16
mdbx++: more spelling.
...
Change-Id: I3f33e695fb918c6a57c39047bba54a72ecb9bc5b
2020-09-27 17:01:59 +03:00
Leonid Yuriev
12339d4e7c
mdbx: rename bootid' fields to be neutral for endianess.
...
Change-Id: I7d52d3c2c93dcc6e886d336885070eb1aee1c284
2020-09-26 02:23:09 +03:00
Leonid Yuriev
860aa017db
mdbx: Merge branch 'master' into devel.
...
Change-Id: Ic130cd181097332aa2f49019d75403e18d8cba0d
2020-09-25 01:14:57 +03:00
Josh Soref
448728f584
mdbx: a lot of spelling (squashed).
...
Many Thanks to Josh Soref for these fixes.
https://github.com/jsoref
Resolves https://github.com/erthink/libmdbx/pull/118 .
Change-Id: I4e09347da5c9d7a77cdd918a3b15284371440076
2020-09-25 01:01:25 +03:00
Leonid Yuriev
58708f7162
mdbx: add mdbx_env_turn_for_recovery().
...
Change-Id: Ic02a5adf9ad398ae5b499e8808157e41ec42457e
2020-09-23 10:05:38 +03:00
Leonid Yuriev
d9daf2944d
mdbx: add env_open_for_recovery() (squashed).
...
Change-Id: I0151b21610def433745c33d1f6e0b66ce655d1a9
2020-09-19 01:48:24 +03:00
Leonid Yuriev
10b170c6cd
mdbx: add mdbx_cursor_create() and mdbx_cursor_bind().
...
Change-Id: I223de3cca7865d58f17a59ab27ec6be730e04a90
2020-09-15 02:05:25 +03:00
Leonid Yuriev
234d65dc9d
mdbx++: update copyright & license note.
...
Change-Id: If6aac3dec6d05247aec5af956385066619685c35
2020-09-14 21:19:56 +03:00
Leonid Yuriev
cacc4aa829
mdbx++: changes after codereview-1 (part 2 of 2).
...
Change-Id: I8e1ca134bb8c5d447895f116247dfd12fa6871f0
2020-09-14 21:19:56 +03:00
Leonid Yuriev
17d9ed31f9
mdbx: support for building by GCC 4.8
...
Change-Id: I4ad5c5be60233ae68936e0cbca1a0f01ec786bad
2020-09-13 21:22:41 +03:00
Leonid Yuriev
1bc49f680d
mdbx++: more songs&dances about constexpr for old/mad compilers.
...
Change-Id: I00d7629ea9009b918f687f1e2a9f5ca8adba5ac2
2020-09-13 21:22:41 +03:00
Leonid Yuriev
cd4caeb03d
mdbx: add mdbx_panic() to C API.
...
Change-Id: I009a7889311b57ae2210822a8087889f900919f8
2020-09-10 15:37:59 +03:00
Leonid Yuriev
58bcfb006e
mdbx: add mdbx_printf_args() macro.
...
Change-Id: I7fca72f8cc912d8644ecf149b755c78fb3cc7e23
2020-09-10 15:35:43 +03:00
Leonid Yuriev
369612a9b2
mdbx: Merge branch 'master' into c++.
...
Change-Id: I7431973ca96afe98d991ffd0a876a15e6ed94714
2020-09-10 01:33:32 +03:00
Leonid Yuriev
50c25f479d
mdbx++: more Doxygen descriptions and refinement.
...
Change-Id: Iec4cfa220f140c0fcc858f51283af2f9c4dd7a65
2020-09-10 01:15:35 +03:00
Leonid Yuriev
64e35a1e44
mdbx-doc: add and describe MDBX_SYNC_DURABLE.
...
Change-Id: Id51e8c764a073e7c502d8d0b95ace0e14510e85b
2020-09-07 12:38:08 +03:00
Leonid Yuriev
f393ae1c51
mdbx-doc: fix typos.
...
Change-Id: Iff6be053a796f57cc89e29e016a52b7654953cda
2020-09-07 12:38:08 +03:00
Leonid Yuriev
81f82ae7b3
mdbx++: added partial doxygen descriptions and refined some methods.
...
Change-Id: I98bd4cb6e296970abbd40ffa049eff6051f30135
2020-09-07 03:10:25 +03:00
Leonid Yuriev
2bcd2e510e
mdbx: Merge branch 'devel' into c++.
...
Change-Id: Iedfe7e7ae21d08628c24b4dd5a788bc43cced2f5
2020-09-05 13:48:40 +03:00
Leonid Yuriev
b1877d08ae
mdbx: rework mdbx_chk & tree-traversal.
...
Change-Id: Idc131539426fe0cbb97a105cff2d0a12b1496bfe
2020-09-05 01:57:02 +03:00
Leonid Yuriev
06a8cb1e5a
mdbx-doc: Quick reference for Insert/Update/Delete operations.
...
Change-Id: Iae2011ea431302fae1d1627297a061d6d01f7555
2020-09-05 00:26:06 +03:00
Leonid Yuriev
b095ad872c
mdbx: add MDBX_ALLDUPS & MDBX_UPSERT, rework handling of others.
...
Change-Id: I27d437540d883935d78242e4fc7e28951ab9f496
2020-09-05 00:26:06 +03:00
Leonid Yuriev
33b1cf2931
mdbx++: Initial C++ API (some extra methods are not implemented).
...
Change-Id: I0478d0c94dcd12b52916e87815e5731817407c3c
2020-09-05 00:26:06 +03:00
Leonid Yuriev
1d48cb88fe
mdbx: Add mdbx_txn_break().
...
Change-Id: Id38a09a0a95d092d75f2eb4fad2cbd7805cd59d0
2020-08-28 21:20:51 +03:00
Leonid Yuriev
ec7126420f
mdbx-doc: Quick reference for Insert/Update/Delete operations.
...
Change-Id: Iae2011ea431302fae1d1627297a061d6d01f7555
2020-08-28 19:08:45 +03:00
Leonid Yuriev
04a77d3bf3
mdbx: add MDBX_ALLDUPS & MDBX_UPSERT, rework handling of others.
...
Change-Id: I27d437540d883935d78242e4fc7e28951ab9f496
2020-08-28 19:08:45 +03:00
Leonid Yuriev
88a4b8cb9b
mdbx++: Initial C++ API (some extra methods are not implemented).
...
Change-Id: I0478d0c94dcd12b52916e87815e5731817407c3c
2020-08-28 16:45:30 +03:00
Leonid Yuriev
8707fb89f3
mdbx: fix pure
attribute for mdbx_key_from_ptrfloat().
...
Change-Id: I0403aced54d1ecad83079696c01ab3e0813691b0
2020-08-28 16:44:20 +03:00
Leonid Yuriev
0c6cecaacb
mdbx-doc: fix Doxygen \see refs.
...
Change-Id: Ia66553fe9c230931462f19871946afcdd7591e73
2020-08-27 13:19:44 +03:00
Leonid Yuriev
bda4ebc939
mdbx-doc: minor Doxygen refines.
...
Change-Id: I6417e2c16b3bbb9536e0c0825eea22547163457b
2020-08-23 16:28:00 +03:00
Leonid Yuriev
cb64ba8258
mdbx: add workaround for MSVC-2019 __has_cpp_attribute() bug.
...
Change-Id: Ie17bc57a9f20dda32af617560641fc1b69dc03a0
2020-08-23 16:23:59 +03:00
Leonid Yuriev
0a75417d5f
mdbx: add pure- & const-function attributes to C API.
...
Change-Id: Ie4d1742f3d4717a0cd1fd5677b9b1ae641193d45
2020-08-23 13:29:44 +03:00
Leonid Yuriev
3292677fe6
mdbx-docs: fix doxygen typo, etc.
...
Change-Id: I541ad3ecb9b9af015cfac9aad4eb72d8731b8ab2
2020-08-07 12:31:08 +03:00
Leonid Yuriev
ffa10a25d6
mdbx: use enums & bool in the C API.
...
Change-Id: I952f578cceb7d02ade16f545d47245d4d9106441
2020-08-06 01:48:56 +03:00
Leonid Yuriev
3bcf808005
mdbx: separate and describe MDBX_DB_ACCEDE.
...
Change-Id: I1a846d196eb00138c1c5ec453537757b1df78d31
2020-08-06 01:48:56 +03:00
Leonid Yuriev
b3dde2bafc
mdbx: minor refines for Doxygen.
...
Change-Id: Iacedc42fc1c7e680306fdae819c165e8b40f6a5a
2020-08-06 01:48:56 +03:00
Leonid Yuriev
87de3fc25f
mdbx: add MDBX_TXN_RDONLY_PREPARE.
...
Change-Id: I95647d1679b69d1e97514a45f20d7373174244d5
2020-08-06 01:48:56 +03:00
Leonid Yuriev
1e7a1da14e
mdbx: separate transaction flags.
...
Change-Id: Ib9a0f6946e1ecf35059e2dccc91319ae130c9f9b
2020-08-06 01:48:56 +03:00
Leonid Yuriev
5e43ee61a2
mdbx: drop/deprecate MDBX_MAPASYNC.
...
Change-Id: I472f97f568a32325eb056c8ee4d2f2350a473bda
2020-08-06 01:48:56 +03:00
Leonid Yuriev
0a01b46112
mdbx: add mdbx_thread_register() and mdbx_thread_unregister().
...
Change-Id: I605bc75a20631e781043fafcc26f5e59cb40adaa
2020-07-31 01:33:16 +03:00
Leonid Yuriev
b91918b027
mdbx: add mdbx_env_get_maxdbs().
...
Change-Id: Ie4bdd2f8a46130f277ef98861a5fca98f55bad54
2020-07-31 01:33:16 +03:00
Leonid Yuriev
1e3c4dc0ef
mdbx: define & use bool type for C API.
...
Change-Id: Icb6cd635a4813bfc92d31bdc527414bdddce4a63
2020-07-31 01:33:16 +03:00
Leonid Yuriev
c778d3cfd4
mdbx: bump version to 0.9.x (not a release, but API changes).
...
Change-Id: I756f1224739df53d8503cf308c2c908f6ecd3fd1
2020-07-31 00:45:34 +03:00
Leonid Yuriev
67d27c81d7
mdbx-docs: fix typos & add refs for Doxygen.
2020-07-30 21:16:08 +03:00
Leonid Yuriev
dcd61289d8
mdbx-doc: more for Doxygen (refs, build options).
...
Change-Id: I8b15bce3d6638a24bdafa3171ae10f01311862d7
2020-07-29 02:18:44 +03:00
Leonid Yuriev
aa07d7a3a2
mdbx-docs: more for Doxygen (seems done).
...
Change-Id: I089748d738705b77e13887391a7e65a1ad327fea
2020-07-25 04:34:15 +03:00
Leonid Yuriev
a902538e34
mdbx: more Doxygen tags (almost done).
...
Change-Id: I696e717e37a905f68af059c51f9df327c257332e
2020-07-24 22:49:21 +03:00
Leonid Yuriev
5f4f828bae
mdbx-doc: provide non-API docs via doxygen (squashed).
...
Change-Id: Ie33858517f964f794ec182a1e8bb630730a0f172
2020-07-23 18:44:32 +03:00
Leonid Yuriev
e3efef40c4
mdbx: initial support for doxygen.
...
Change-Id: I5258b9f5dac981f03658ed35a799a52250a3e136
2020-07-23 11:58:04 +03:00
Leonid Yuriev
9720ed39f5
mdbx: using enum
instead of #define for flags/modes.
...
Resolve https://github.com/erthink/libmdbx/issues/108
Change-Id: I45897300375d2b5b9361aaba81dadcf9801fe3cf
2020-07-08 02:26:46 +03:00
Leonid Yuriev
2e0d2e65af
mdbx: fix minor typos.
2020-07-07 23:16:43 +03:00
Leonid Yuriev
e989cb05ed
mdbx: deprecate mdbx_dbi_open_ex() and custom comparators.
...
Change-Id: I1d20f77b9ba5d8d5ec891df17019377afb466b06
2020-07-07 19:33:59 +03:00
Leonid Yuriev
fab6ddee14
mdbx: add MDBX_DEPRECATED macro.
...
Change-Id: I87e14b37a6d152fa1f69f4a74e16244870dedb0f
2020-07-07 19:33:17 +03:00
Leonid Yuriev
fc9ae9ebc6
mdbx: bump version to 0.8.2
...
Change-Id: I99ace837318d3aef4086392272c8256d966ef2fd
2020-07-06 16:37:35 +03:00
Leonid Yuriev
5dbb0b4cfe
mdbx: rename internal flags & fields for clarity.
...
Change-Id: I79d6d8e88b0b4c30cbb8a464ca17f07dc2ab44c6
2020-07-06 14:35:41 +03:00
Leonid Yuriev
0afc21eed9
mdbx: add mdbx_get_keycmp() & mdbx_get_datacmp().
...
Change-Id: I11f8a54f7eb21b0bab575c8f6b89081b7eaf1bb8
2020-06-24 17:15:56 +03:00
Leonid Yuriev
428f753c03
mdbx: add key-to-value functions.
...
Change-Id: Ie0acd8c58833047931444fd9d94d5b82e6d541bb
2020-06-24 17:15:56 +03:00
Leonid Yuriev
0fc2d39cce
mdbx: allow mixind with/without MDBX_WRITEMAP for the same database.
...
Change-Id: I916bb9e9b44a58cf78786e76a8c42d62e0bfc579
2020-06-20 23:55:15 +03:00
Leonid Yuriev
0117473cbc
mdbx: bump version to 0.8.x
...
Change-Id: I6d2a1a3b04341461288e18c66d11e79d343750b0
2020-06-05 03:00:43 +03:00
Leonid Yuriev
f5066996b8
mdbx-doc: clarify mdbx_cursor_put() description.
...
Fixes https://github.com/erthink/libmdbx/issues/110 .
Change-Id: Ieaeae763661d42ac333e2c12cdc141d01e719a54
2020-06-04 13:37:35 +03:00
Leonid Yuriev
44be200e28
mdbx-doc: clarify mdbx_del() and mdbx_cursor_del() description.
...
Related to https://github.com/erthink/libmdbx/issues/109 .
Change-Id: I810597f8a1217db3a16cc7c3de3822218ab7d055
2020-06-04 13:37:30 +03:00
Leonid Yuriev
97b4679ca8
mdbx-doc: clarify MDBX_GET_BOTH_RANGE description.
...
Related to https://github.com/erthink/libmdbx/issues/109 .
Change-Id: Id4026121128699ba8141bed9a7c577ce52635da3
2020-06-04 12:48:20 +03:00
Leonid Yuriev
5cc1cb3f87
mdbx: add mdbx_dbi_dupsort_depthmask().
...
Change-Id: Ib056663f26baea517d6f2b9d58cd64c643619ef9
2020-05-25 14:53:38 +03:00
Leonid Yuriev
42dd0219e4
mdbx: minor fix/refine comments.
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
8b2a5a0fc7
mdbx: update MDBX_NOSUBDIR description.
...
Change-Id: I1d86e2d9147494dff9cf54795416370eafbb53b7
2020-04-30 16:59:52 +03:00
Leonid Yuriev
fac0d47913
mdbx: add MDBX_CP_FORCE_RESIZEABLE option.
...
Change-Id: I5fcdae7933dbbfbf8629e8a0423545a4f6b9f6b6
2020-04-29 18:57:00 +03:00
Leonid Yuriev
eea1432e80
mdbx: auto-reset running transaction in mdbx_txn_renew().
...
Change-Id: If93ad13bb5a6dab8dd5fcb80882b5eb83fdf3dad
2020-04-26 03:32:50 +03:00
Leonid Yuriev
3b741a6d5f
mdbx: automatically abort errored transaction in mdbx_txn_commit().
...
Change-Id: I2cfac73c69a8ff46870778f174555724f8363a79
2020-04-26 03:23:04 +03:00
Leonid Yuriev
5765d92ac7
mdbx: return MDBX_EBADSIGN when mdbx_env_close() called concurrently from several threads.
...
Change-Id: I03a8c87bc51eefc5236baa52cee8b12a9f8aa0e2
2020-04-20 17:00:41 +03:00
Leonid Yuriev
b64e47078f
mdbx: add __deprecated MDBX_MAP_RESIZED for compatibility.
...
Change-Id: I82431409ecaf4a1a85ddc777ae43b086715785d9
2020-04-19 17:33:32 +03:00
Leonid Yuriev
83e303b059
mdbx: alter MDBX_CURSOR_FULL description.
...
Change-Id: I70d13e7503d10c6050bd17e4dd8bd814e46799af
2020-04-19 17:33:32 +03:00
Leonid Yuriev
1e9cc6b0a5
mdbx: more 'const' for API.
...
Change-Id: Iedea253733105acc4010e07a65a594f8ea52ce56
2020-04-19 17:33:32 +03:00
Leonid Yuriev
8f5ae79b51
mdbx: bump version to 0.7.x
...
Change-Id: I6cb06fbd7119eed086b54a9760db1e0edf5de07b
2020-03-18 17:19:12 +03:00
Leonid Yuriev
251d34d6e6
mdbx-doc: more for custom comparators.
...
Change-Id: I3326c5bdedbbdb01b1865bff68aa7ba8bc7056cc
2020-03-02 13:50:33 +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
5072b45026
mdbx: rename MDBX_MAP_RESIZED to MDBX_UNABLE_EXTEND_MAPSIZE.
...
Change-Id: I22fbdb4f08fd7a6ae37da42e6827677ae8a8337b
2020-02-28 16:40:56 +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
2356f3281b
mdbx: use underscores for GNU-attributes.
...
Change-Id: Iefd371dd91da1db8ee86554208536b3004535317
2020-02-17 14:01:11 +03:00
Leonid Yuriev
0714c07e28
mdbx: minor clarify MDBX_EKEYMISMATCH description.
...
Change-Id: I310feb62bc849e01dc3faf0b93a16b654b53d3bd
2020-02-03 17:07:41 +03:00
Leonid Yuriev
e475db7ade
mdbx: add MDBX_DBG_LEGACY_OVERLAP.
...
Change-Id: I7aecb925b553587efd6698dc3d52682ca98aa950
2020-02-02 15:07:04 +03:00
Leonid Yuriev
01f65bc872
mdbx: more info about "one threat - one transaction".
...
Change-Id: I070750b081e02113577dac13488d01f9d18e759b
2020-02-02 02:46:41 +03:00
Leonid Yuriev
a594f79e5f
mdbx: refine/clarify error messages.
...
Change-Id: If2a38bdfb4a9fce176acb87fa452709bcfc5c972
2020-02-02 02:46:41 +03:00
Leonid Yuriev
17fe5f106b
mdbx: check read/write txn overlapping for the same thread (MDBX_TXN_OVERLAPPING).
...
Change-Id: If3488df96bd1903d5e4ca0a1fea504075dbd4a20
2020-02-02 02:46:41 +03:00
Leonid Yuriev
db27654330
mdbx: rename MDBX_LAST_LMDB_ERRCODE and fix description.
...
Change-Id: I9a855871ae8821d0d10472c48b5467fd507c01a5
2020-02-02 02:46:41 +03:00
Leonid Yuriev
08753b46a1
mdbx: cleanup tabs (cosmetics).
...
Change-Id: If941ea89d844f98f274da4ddfc3f2ae97986eeb7
2020-02-01 20:44:29 +03:00
Leonid Yuriev
898b6ee433
mdbx: fix mdbx_env_copy() argument description.
...
This resolves https://github.com/leo-yuriev/libmdbx/issues/78
Change-Id: I4d92f3939f617ffd11941793e819a0513649fed8
2020-01-26 15:27:30 +03:00
Leonid Yuriev
2ce9ace4d3
mdbx: documenting and checking key and value alignment for MDBX_INTEGERKEY and MDBX_INTEGERDUP.
...
This resolves https://github.com/leo-yuriev/libmdbx/issues/79 .
Change-Id: I819a6eca3018361e5896d5ccce7e4c0ca57c8b38
2020-01-26 14:54:40 +03:00
Leonid Yuriev
bf28856ac5
mdbx: add key-making functions.
...
Related to https://github.com/leo-yuriev/libmdbx/issues/76
Change-Id: I1edc8efd323af9adb53e6c2155e2ea39a1e575f4
2020-01-22 03:43:09 +03:00
Leonid Yuriev
700f3514b3
mdbx: bump version to 0.6.x
...
Change-Id: I925ab0aaefb1a8f9860925c2e8e7c81015428b2e
2020-01-21 00:17:55 +03:00
Leonid Yuriev
7c894f0542
mdbx: HNY!
...
Change-Id: Idbd21263408f87ac2715675c9f7ccc6c44d41c9a
2020-01-21 00:17:55 +03:00
Leonid Yuriev
f3a95fe26b
mdbx: minor refine API description.
...
Change-Id: If5615ebff66fe6928d24d22e1300fdf59361527d
2020-01-05 00:34:31 +03:00
Leonid Yuriev
0a487d0b9e
mdbx: bump version to 0.5
...
Change-Id: Id2c82b5cbe567cffe193b86ecf13af93e58363c1
2019-12-31 20:59:13 +03:00
Leonid Yuriev
66ca7a519e
mdbx: rework MDBX_DBG_DUMP to avoid performance degradation.
...
Change-Id: I556ae61e03fdf7d6798072bbc2583ae5d01cbf9f
2019-12-17 18:02:13 +03:00
Leonid Yuriev
4eccf901ea
mdbx: rename MDBX_NOSYNC to MDBX_SAFE_NOSYNC for clarity.
...
Change-Id: I1d04600832cb7c86c578d72f3d6163ee22d134b7
2019-12-15 15:17:24 +03:00
Leonid Yuriev
60f4134841
mdbx: disable by-default workaround for obsolete E2K bug.
...
Change-Id: I9d6aaf0154e3c9f03dab7948575f4792a13dc988
2019-12-08 14:56:56 +03:00
Leonid Yuriev
a8da25c9d4
mdbx: fix minor typo.
...
Change-Id: I98a60691fe35b1e53e33627ab72203ed05e07e51
2019-12-06 22:07:30 +03:00
Leonid Yuriev
ba935ab8f1
mdbx: bump version to 0.4
...
Change-Id: I5c034cdc81df246f47e9d86c29ea5f58888a6581
2019-12-02 02:04:43 +03:00
Leonid Yuriev
d83de5bd09
mdbx: deprecate some API.
...
Change-Id: I0770f5ec89dc0cc71381dea1d420c2a3b506ce7f
2019-11-30 01:29:48 +03:00
Leonid Yuriev
d80654fa07
mdbx: rework max key-length and limit API.
...
Change-Id: I3d783f69d4ea438d8a8a0505fa9163715fbdcf9c
2019-11-30 01:29:48 +03:00
Leonid Yuriev
497aa53e28
mdbx: fix minor typos.
...
Change-Id: Ib0c62eace9c766844a3f44124b525a3c6373c620
2019-11-18 00:13:27 +03:00
Leonid Yuriev
d20b9d9ed7
mdbx: move boot-id from LCK to meta.
...
Change-Id: I7a371feb1a2c43e3606c516fe7b4c7d7a4ff6e73
2019-11-18 00:02:37 +03:00
Leonid Yuriev
dc03299dc6
mdbx: actualize list of supported OS.
2019-11-17 23:57:03 +03:00
Leonid Yuriev
42d9e06598
mdbx: add MDBX_ACCEDE environment opening flag.
...
Change-Id: If0a08d6fce127f35ff2992988715b7dc1fdb70a9
2019-11-16 00:23:03 +03:00
Leonid Yuriev
5af02290e6
mdbx: portability fixes for SunOS/Solaris/OpenIndiana.
...
Change-Id: I0442367e798903598d706c65b536a127ca982fce
2019-11-11 15:13:56 +03:00
Leonid Yuriev
bb2d2877c4
mdbx: add auto-readahead note/description.
...
Change-Id: Ie425416fd1afe9092b73acae4a7e3cdb5c3d8168
2019-11-11 13:10:22 +03:00
Leonid Yuriev
647d832556
mdbx: initial mdbx_check_fs_rdonly() and mdbx_check_fs_local().
...
Change-Id: Iff48f1ad1ef54c1e51dceebce16097be030206bd
2019-11-08 18:40:29 +03:00