Leonid Yuriev
113b29e68d
mdbx: add LCK-tracking to resolve double-open issue with POSIX-filelocks.
...
Change-Id: I29377000e4dde3c43527302b55d0daec58b709f5
2019-08-31 00:55:15 +03:00
Leonid Yuriev
137d652d77
mdbx: refine attribute-based macros.
2019-08-25 04:37:15 +03:00
Leonid Yuriev
93f82f47bd
mdbx: refine setup_debug(), add MDBX_DBG_LEGACY_MULTIOPEN.
...
Change-Id: I5d144f6fa27b8f5885fa0a0fbd11fe1d44bcc41c
2019-08-25 04:36:28 +03:00
Leonid Yuriev
6f8238e1e9
mdbx: LCK-format version 3.
...
The LCK file is re-created at every opportunity when the process that
opens the database is the only one that works with it. Thus the change
of the format of the file LCK creates only minimal compatibility
problems.
Applications using different versions of _libmdbx_ will be able to work
with one database alternately, but not at the same time. This appears to
be an acceptable inconvenience in exchange for new features.
Change-Id: I9414b3fffd53d5519c8172c57345b1eaf6e51c77
2019-08-23 03:38:11 +03:00
Leonid Yuriev
8917fb30bf
mdbx: make lck-wait ops breakable for linux/posix.
...
Change-Id: Ieb113f3c01bceced99b122988f93331d5619c2be
2019-08-11 12:22:41 +03:00
Leonid Yuriev
673f867e3c
mdbx: minor refine Linux lck-implementation.
...
Change-Id: Ib95398f8d86eb94fc55b506066f78eda4a29f4a8
2019-08-10 23:25:17 +03:00
Leonid Yuriev
ce64c5aa37
mdbx: use OFD (open file) locks on Linux.
...
Change-Id: Id9718da28d4e367b0ff10976d2afaaf3d18122fb
2019-08-10 12:53:16 +03:00
Leonid Yuriev
a008b0b16f
mdbx: description of lck-implementation for Linux.
...
Change-Id: I8fe5f49a19e5cc61198ecd96dfe479d0e17c10a5
2019-08-09 21:36:02 +03:00
Leonid Yuriev
663f3f3c58
mdbx: conditionally use cacheflush() for linux < 2.6.11
...
Change-Id: Id34c67797e14f709f767bf1b687319cd2dfef874
2019-07-22 00:19:15 +03:00
Leonid Yuriev
4adb1ab2d8
mdbx: portability - rename lck-posix.c to lck-linux.c
...
Change-Id: I0ecee2b1a5d8e664eb795e5f5df2fa2d3cb73c83
2019-07-15 00:29:46 +03:00