Leo Yuriev
02fc5fe158
mdbx: update internal version info.
2018-03-23 17:23:28 +03:00
Leo Yuriev
45f159ddd3
mdbx: mdbx_cursor_put(MDBX_APPEND+MDBX_NOOVERWRITE) should return MDBX_KEYEXIST instead of MDBX_EKEYMISMATCH.
...
When MDBX_APPEND is used the ordering of keys is important.
Therefore MDBX_EKEYMISMATCH should me returned when given key <= last.
On the other hand, if MDBX_NOOVERWRITE is also used
then the MDBX_KEYEXIST should be returned, but not MDBX_EKEYMISMATCH.
2018-03-23 17:21:27 +03:00
Leo Yuriev
6758348046
mdbx: import intrin-includes from t1ha.
2018-03-22 21:11:26 +03:00
Leo Yuriev
09ab6dd777
mdbx-make: add cross-compile targets for testing.
2018-03-22 21:11:26 +03:00
Leo Yuriev
61a2c56784
mdbx: fix/rework cache-line alignment.
2018-03-22 21:11:26 +03:00
Leo Yuriev
6a074cb85a
mdbx: fix unaligned access to mp_ptrs[] on fake-page.
...
Based on http://www.openldap.org/devel/gitweb.cgi?p=openldap.git;a=commitdiff;h=e77918a903d980ff789b7e32f71725481e870510
2018-03-22 21:11:26 +03:00
Leo Yuriev
dbc87a8a5e
mdbx: refine MDBX_CACHE_IS_COHERENT.
2018-03-22 20:38:20 +03:00
Leo Yuriev
3a42b76fb8
mdbx-tests: fix entropy_ticks() for multiarch.
2018-03-22 20:38:18 +03:00
Leo Yuriev
c52a57dac5
mdbx: fix for MIPS cacheflush().
2018-03-22 20:37:50 +03:00
Leo Yuriev
5ce40269b3
mdbx: fix gcc warning (minor).
2018-03-22 20:37:50 +03:00
Leo Yuriev
3d320253cd
mdbx-tests: drop duplicate sysdep-includes.
2018-03-21 22:19:17 +03:00
Leo Yuriev
86274513f9
mdbx: more __has_include().
2018-03-21 22:19:17 +03:00
Leo Yuriev
f5571e4027
mdbx: import byte-order macros from t1ha.
2018-03-21 22:19:17 +03:00
Leo Yuriev
62ae928b40
mdbx: add neutral __ia32__ and __amd64__ marcos.
2018-03-21 22:18:57 +03:00
Leo Yuriev
a282965aa0
mdbx: add check __ALIGNED__ for UNALIGNED_OK macro.
2018-03-21 21:10:57 +03:00
Leo Yuriev
3c5cc40c77
mdbx: fix README typos.
2018-03-21 14:13:54 +03:00
Leo Yuriev
475da5bcfe
mdbx: make mdbx_txn_lock() and mdbx_txn_unlock() exportable for mdbx_chk.
2018-03-20 22:19:32 +03:00
Leo Yuriev
679fb56787
mdbx: lookup suitable txnid for rollback to avoid meta-pages clashes.
2018-03-20 22:16:15 +03:00
Leo Yuriev
dd6cb30820
mdbx-chk: directly use mdbx_txn_lock() for write/recovery mode.
2018-03-20 21:37:42 +03:00
Leo Yuriev
8d748a845b
mdbx-tests: fix default value for inject_writefaultn.
2018-03-19 21:26:14 +03:00
Leo Yuriev
5872174db6
mdbx-tests: refine temp-dir for unix.
2018-03-19 21:01:05 +03:00
Leo Yuriev
52283d8c44
mdbx-tests: unify testdb name.
2018-03-19 20:50:30 +03:00
Leo Yuriev
838856f688
mdbx-tests: add osal_tempdir().
2018-03-19 20:50:30 +03:00
Leo Yuriev
0aa07cc09b
mdbx-tests: drop unused tableid variable (minor).
2018-03-19 20:20:47 +03:00
Leo Yuriev
e8dd15088a
mdbx: add __ARM_FEATURE_UNALIGNED __e2k__ for UNALIGNED_OK.
2018-03-19 19:59:00 +03:00
Leo Yuriev
d0e1c02a8a
mdbx-chk: rework/fix read-write mode.
2018-03-19 18:08:45 +03:00
Leo Yuriev
b2213c86fe
mdbx-build: add check-fault target.
2018-03-19 18:08:45 +03:00
Leo Yuriev
9ccd551ebc
mdbx-tests: minor refine log-levels.
2018-03-19 18:08:45 +03:00
Leo Yuriev
a2ec7f2be1
mdbx: add mdbx_txn_flags().
2018-03-19 18:08:45 +03:00
Leo Yuriev
d63c2484fe
mdbx-tests: add --inject-writefault=N option.
2018-03-19 18:08:45 +03:00
Leo Yuriev
638ed91e3e
mdbx-tests: add log_flush().
2018-03-19 16:51:10 +03:00
Leo Yuriev
64613c9061
mdbx: fix minor memleak (Coverity).
2018-03-19 16:16:31 +03:00
Leo Yuriev
c05d179035
mdbx: temporary workaround for Elbrus's libc bug.
...
https://bugs.mcst.ru/bugzilla/show_bug.cgi?id=2820
2018-03-19 15:05:56 +03:00
Leo Yuriev
195b53374e
mdbx: fix #pragma pack(pop) balance.
...
Thanks to <Sergey.V.Barannikov@mcst.ru>.
2018-03-14 16:05:43 +03:00
Leo Yuriev
f521b6615e
mdbx: fix #endif's comment (cosmetics).
2018-03-14 15:32:32 +03:00
Leo Yuriev
9bbc62f5a0
mdbx: refine internal warnings control.
2018-03-14 15:16:49 +03:00
Leo Yuriev
8c96b1e73b
mdbx: fix missing MDBX_DEVEL=0.
2018-03-14 15:07:16 +03:00
Leo Yuriev
436b4870e8
mdbx: -O3 by default for Elbrus.
2018-03-14 15:04:07 +03:00
Leo Yuriev
483c4abb3f
mdbx: remove Elbrus's alignment_reduction_ignored workaround.
2018-03-14 14:57:46 +03:00
Leo Yuriev
158ec27848
mdbx-test: support for Elbrus.
...
Change-Id: Iefded3bbffc6c93db0a78cef409f2ad10782c59b
2018-03-07 14:02:22 +03:00
Leo Yuriev
c267a71475
mdbx: workaround for "alignment-reduction-ignored" lcc's bug.
...
Change-Id: I000bfaffd78ef7b6e27d6178bc2a5defc32cc357
2018-03-07 13:59:51 +03:00
Leo Yuriev
a2099586ed
mdbx: disable -Wno-constant-logical-operand inplace.
...
Change-Id: I0f7745f40e3340ba6d14d985a735777667a7bdde
2018-03-07 13:18:30 +03:00
Leo Yuriev
f76c5188fb
mdbx: add stubs for __has_warning and __has_include.
...
Change-Id: Ic037a38d254e6d986b84a5bfd48106e43cf80320
2018-03-07 13:07:17 +03:00
Leo Yuriev
62603aeadc
mdbx: add ifdef-guard for clang < 3.8
...
Change-Id: Iba7a90e2548056cbdf07ae471eb002da7145821c
2018-03-07 13:06:39 +03:00
Leo Yuriev
62f36ea499
mdbx: bump version to 0.1
...
Change-Id: I31cdcd598c532d1dd96a4aea961495c838ce0b81
2018-03-07 12:25:35 +03:00
Leo Yuriev
ad4c5d8972
mdbx: add __cold/__hot for Elbrus.
2018-03-07 12:24:32 +03:00
Leo Yuriev
a93fafceff
mdbx: strip utf8-bom for Elbrus (minor).
...
Change-Id: I9030abe267c4abfa2c5c2deb439c0b8025b83047
2018-03-07 12:09:43 +03:00
Leo Yuriev
260c1d71dd
mdbx: add self_latter_reader_txnid into MDBX_envinfo.
...
Change-Id: I17ac6e921f99df6ed61096ff0fbfbacf5a7e4608
2018-02-04 17:13:27 +03:00
Leo Yuriev
72557af2b5
mdbx: HNY!
...
Change-Id: I2a91b986964d96bb3e5f848e3c17408bd7745866
2018-02-04 13:10:54 +03:00
Leo Yuriev
6a0ff097ee
mdbx: immediately share dbi-handles for present TBLs (major).
...
Change-Id: I75c998e06b3ccc25bd22ef389d119052d524d70b
2018-02-04 12:59:47 +03:00