123 Commits

Author SHA1 Message Date
Leonid Yuriev
b19e180fab mdbx: refine mdbx.h and API description, etc (3 of 5).
Change-Id: I05890bdf2e29c6c5a4b1f861f5bfda920e970126
2019-09-16 02:25:06 +03:00
Leonid Yuriev
4022110955 mdbx: reset returning-by-pointer result on error.
Change-Id: I5e0aa1eae343dc9acc36a95e4f7e11104efc83ce
2019-09-15 22:10:39 +03:00
Leonid Yuriev
5f22a5568d mdbx: allow MDBX_MAPASYNC for particular txn.
Change-Id: I0ed1a7567a3f7bfbae2bfa6995ad8f6c327d91a9
2019-09-15 22:10:15 +03:00
Leonid Yuriev
1402a511a4 mdbx: drop dup-defines MDBX_TXN_NOMETASYNC, MDBX_TXN_NOSYNC, MDBX_TXN_RDONLY. etc.
Change-Id: I7edef9477e15cb6c2291fe82c1b014ff81d2383a
2019-09-15 18:19:46 +03:00
Leonid Yuriev
4bcc1eef09 mdbx: disallow multi-opening without MDBX_DBG_LEGACY_MULTIOPEN.
Change-Id: I0e11d686954bd8c89dac9a46b4c5e17bc0dd6419
2019-09-12 21:41:57 +03:00
Leonid Yuriev
c8928675c6 mdbx: automatically create database directory.
Change-Id: Ic1d4c9ce6f29924f5c112afc3065f08584307d39
2019-09-12 14:56:07 +03:00
Leonid Yuriev
1d08f9e673 mdbx: refine mdbx.h and error strings (1 of 5).
Change-Id: Iaa6c4afeb9268d916ef1e8e23fdf12b7f603869f
2019-09-12 14:18:10 +03:00
Leonid Yuriev
eb4159ac88 mdbx-posix: support to close environment after fork() from a child process.
Change-Id: I20ab9cf4525bfcacd10043e2afe7e1aa26a2af6c
2019-09-12 01:19:23 +03:00
Leonid Yuriev
4b979826ec mdbx: fix update_gc() to avoid leaking values from uninit malloc'ed mem.
Change-Id: I5b98fc9f5d26ffdfe90af81d9fdd07f49c1e85c9
2019-09-12 00:09:25 +03:00
Leonid Yuriev
4ea1d2f8d2 mdbx: accept MDBX_EACCESS and MDBX_EPERM for without-LCK read-only mode.
Change-Id: I024243184c06ddf86bcc62d6e4b1b951d21789d5
2019-09-11 20:40:06 +03:00
Leonid Yuriev
6fc3b89f79 mdbx: add reader_check_timestamp info LCK.
Change-Id: I2f53b5996def8ff1d87a011fc662b94e2be3c467
2019-09-11 19:13:24 +03:00
Leonid Yuriev
0d8b59fa3b mdbx: check readers while opening.
Change-Id: Ieefc78d0d3922e3f98efa557f8e67aada68c4841
2019-09-11 18:58:51 +03:00
Leonid Yuriev
8f08e1c7ed mdbx: fix cross-build & qemu-testing issues.
Change-Id: I6b2343cc4e08c3cb706a190c4c515965182733a2
2019-09-11 18:58:51 +03:00
Leonid Yuriev
5cfcc0e3c1 mdbx-cmake: add template for build amalgamated source code.
Change-Id: Ie0908ab62460eb51f2f050fcce915fe4e64f61ca
2019-09-11 02:09:21 +03:00
Leonid Yuriev
3ec081c187 mdbx-build: add 'make dist' target.
Change-Id: I72c2ff2f90e9da4664bf542761fe445bb713a67a
2019-09-10 02:28:41 +03:00
Leonid Yuriev
e7095e9ada mdbx: remove UTF8-BOM (preparation for 'make dist').
Change-Id: I2d0ccc9f7bbed6d57b2fe6ef156f33531a4eeb69
2019-09-10 02:18:50 +03:00
Leonid Yuriev
be72cd81dc mdbx: add MDBX_MIN_PAGESIZE & MDBX_MAX_PAGESIZE.
Change-Id: I66ba4b637ed5acabb734bbd380e618e01019ade2
2019-09-10 02:13:33 +03:00
Leonid Yuriev
449307a69f mdbx-build: sourcery pinning (but cmake requires manually config-files removal for now). 2019-09-09 14:29:05 +03:00
Leonid Yuriev
1829a2a5c1 mdbx: workaround for FreeBSD shared mutexes initialization.
- pass inprocess_neighbor into mdbx_lck_init().
 - don't perform mutexes initialization if LCK already used in the current process.
 - don't perform additional in-process mutex initialization if LCK used in any other process(es), except for FreeBSD.
2019-09-04 11:46:03 +03:00
Leonid Yuriev
a55cffaae8 mdbx-osx: ignore fcntl(F_RDADVISE) error (RAM-disk, etc). 2019-09-04 03:09:18 +03:00
Leonid Yuriev
874418a301 mdbx: rework POSIX-lck and merge with Linux-lck.
Change-Id: Id8fbc81b9a2ad3a3a7499ecf9a012314e1f8062a
2019-09-03 02:43:14 +03:00
Leonid Yuriev
098f8a0d77 mdbx: add MDBX_READERS_LIMIT.
Change-Id: I2ee97004c084aeb6290c56b8f6415adc464a1bcb
2019-09-03 02:43:14 +03:00
Leonid Yuriev
f81374a9ce mdbx-build: amalgamation.
Change-Id: Ic32de6ee119df2bc12136b882f4f7cabaa1314a9
2019-09-03 02:30:55 +03:00