Leonid Yuriev
6ca0f144fa
mdbx: workaround for MSVC 19.27 static_assert() bug.
...
Change-Id: Ia143795a57e800bc39e126cd90f34a6abde81ca3
2020-08-31 02:35:11 +03:00
Leonid Yuriev
eca3904dfa
mdbx++: minor fix env::setup().
...
Change-Id: I751cbf5c9d1d83a3b4da2af1f5950d85ce2934cd
2020-08-29 16:36:30 +03:00
Leonid Yuriev
12e19cedc0
mdbx: minor fix mdbx_replace_ex().
...
Change-Id: I2e1f27b1d73b450643743cf9d4ad35d5cd4547de
2020-08-29 16:36:30 +03:00
Leonid Yuriev
317816d6c7
mdbx: refine/simplify mdbx_cursor_del().
...
Change-Id: Ibd72817a33427483a4440eecc911815420b2e13f
2020-08-29 14:46:15 +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
aa7695c513
mdbx++: Add support for C++17 polymorphic allocators.
...
Change-Id: I76054829551c247a4d8f81288fc47db47ead0288
2020-08-28 16:45:30 +03:00
Leonid Yuriev
08faeda430
mdbx: refine mdbx_replace_ex().
...
We can skip update only when a data exactly the same,
but user's md_dcmp() may returns zero even data is NOT matches byte-to-byte.
So to skip update the cmp_len fast() should be used instead of md_dcmp().
Change-Id: I6ad0f7cfc6a18722b46e565deef3a544ddf9968a
2020-08-28 16:45:30 +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
e3f0db7708
mdbx: refine/fix handling MDBX_MULTIPLE in the mdbx_cursor_put().
...
Change-Id: I06ac9d73cec01afb492b5c663acf310d19e4900b
2020-08-28 16:45:29 +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
061750bccb
mdbx-doc: fix LMDB/MDBX typo.
...
Change-Id: I6e492eebc43cde7ef274e9f64559f401500a780b
2020-08-24 01:19:42 +03:00
Leonid Yuriev
c53627f5ac
mdbx: fix null-deref during MDBX_TXN_RDONLY_PREPARE in the MDBX_EXCLUSIVE mode.
...
Change-Id: I20b2bd4137293261a546910c8175be531d38b2c9
2020-08-23 16:28:00 +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
100ac532ed
mdbx-docs: update ChangeLog.
...
Change-Id: I3c54dc41321b737046ce44757ae4a62e4e1317b8
2020-08-07 13:09:22 +03:00
Leonid Yuriev
3292677fe6
mdbx-docs: fix doxygen typo, etc.
...
Change-Id: I541ad3ecb9b9af015cfac9aad4eb72d8731b8ab2
2020-08-07 12:31:08 +03:00
Leonid Yuriev
54a09967a1
mdbx: refine mode_t for lck-file.
...
Change-Id: I7674a3a1c0a5778f0f362faa1d608c25e242d92d
2020-08-06 01:48:56 +03:00
Leonid Yuriev
17380fe079
mdbx: minor fix for MDBX_DBG_LEGACY_MULTIOPEN.
...
Change-Id: I7d1c30699708c4b9e47e1b781e96c9a4b6c2b109
2020-08-06 01:48:56 +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
135bead730
mdbx: disable warning C4204 for MSVC.
...
Change-Id: Idf7246f5ee349294cea1ed15d69daa49e4dddedb
2020-07-31 01:33:16 +03:00
Leonid Yuriev
7ce33be933
mdbx: fix zero-length arrays for C++.
...
Change-Id: I24ee4b34064f1face40d63861fb2f8982b922f7d
2020-07-31 01:33:16 +03:00
Leonid Yuriev
f4021c8028
mdbx: refine mdbx_dump_val().
...
Change-Id: I72dac7c44c842d16d6b8776248ba20014d0709a9
2020-07-31 01:33:16 +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
9e90718bd5
mdbx: add check_env().
...
Change-Id: Iff9258d1e31349da77ef030cfe6da7bcfc5c5a19
2020-07-31 01:33:16 +03:00
Leonid Yuriev
0387d6f6d4
mdbx: rename MDBX_ENV_CHECKPID.
...
Change-Id: Id0afbea99b0747c6d7a5062c1c4a82ebc69f4f40
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
2cd7fcb16d
mdbx: fix minor Coverity issues.
...
Change-Id: I21c44de18e4e620ecec38ec837446150736faf79
2020-07-24 17:43:35 +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
bb3d4ab9ba
mdbx-ci: build github-pages by doxygen.
...
Change-Id: I9d84ca299cf0b8579157f84dae42fcbb09a6f8bc
2020-07-23 11:58:04 +03:00
Leonid Yuriev
e3efef40c4
mdbx: initial support for doxygen.
...
Change-Id: I5258b9f5dac981f03658ed35a799a52250a3e136
2020-07-23 11:58:04 +03:00
Leonid Yuriev
19e4fc1414
mdbx: minor fix .gitignore
...
Change-Id: I3b54830fed6ba161bfb631e6989f616df106450d
2020-07-23 11:58:04 +03:00
Leonid Yuriev
3d31884c3b
mdbx-chk: always skip key ordering checking to avoid MDBX_CORRUPTED
when using custom comparators.
...
Change-Id: Ieb6ea4a1c36b0e661afc13da365505ffbb5d0b5e
2020-07-23 11:47:05 +03:00
Leonid Yuriev
b6085afb5a
mdbx-test: minor fix for MSVC-2015.
...
Change-Id: I631009ffe0b04428026492d1cab691b58fdd160a
2020-07-08 03:13:07 +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