Commit Graph

2004 Commits

Author SHA1 Message Date
Leonid Yuriev
5eafc6e738 mdbx: minor refine txn_commit().
Re-assign `rc` variable to release register from allocation.

Change-Id: Ibafd70efd53591d3bf190417e1b2f3b20299e7d2
2019-12-31 19:38:41 +03:00
Leonid Yuriev
7d1eff5116 mdbx: minor refine cursor_put().
Use `rc2` variable to simplify register(s) allocation.

Change-Id: Ie47210a4b494e9aeaa8492830cfbcbbde02b485c
2019-12-31 19:38:41 +03:00
Leonid Yuriev
36c7d7a435 mdbx: minor refine page_alloc (MIN_TXNID).
Change-Id: Iac20f79280e5b464b39f7ac5b1efe01585c5bf02
2019-12-31 19:38:41 +03:00
Leonid Yuriev
03a68e87ba mdbx: fix commit typo (minor).
Change-Id: I3e6564eb9a1404c3aaffb7dd9143dc64e7d822af
2019-12-31 19:38:41 +03:00
Leonid Yuriev
8c7cdfdc79 mdbx: fix ASAN issues (minor).
This resolves https://github.com/leo-yuriev/libmdbx/issues/73

Change-Id: Ifb59f5ba66321bb362b81085e0f25a82a2d76d5f
2019-12-29 01:19:31 +03:00
Leonid Yuriev
b3a5ab692b mdbx-tests: add notls into long-stochastic.
More for https://github.com/leo-yuriev/libmdbx/issues/72

Change-Id: I62468a38844292bc4073e36d70e7b7ee8d1a6009
2019-12-28 02:28:36 +03:00
Leonid Yuriev
c7ae4ace9d mdbx: fix assertion for MDBX_NOTLS option.
This fixes https://github.com/leo-yuriev/libmdbx/issues/72

Change-Id: I9e2b02e33e7e702eb093c0c1049c54b76d8d23b5
2019-12-28 02:17:38 +03:00
Leonid Yuriev
7b6880bdc9 mdbx-windows: treat STATUS_INVALID_ADDRESS same as STATUS_CONFLICTING_ADDRESSES for some cases.
Change-Id: I542c7f4010f880428e3c7b10413e4f98c4aa7b48
2019-12-25 00:46:01 +03:00
Leonid Yuriev
379a789839 mdbx: minor refine MDBX_MMAP_INCOHERENT_FILE_WRITE.
Change-Id: I1e77eccc64b470bf3c7aeb8f6b905b72e818f7a0
2019-12-25 00:46:01 +03:00
Leonid Yuriev
bdb4ccb352 mdbx: copy for txn only used dbiseqs.
Change-Id: I6fd2d8598b5e86c0d5b8d7eef535e81525cd14ee
2019-12-25 00:46:01 +03:00
Leonid Yuriev
53d5cb0151 mdbx: rework MADV_DONTNEED threshold.
Change-Id: I99058b96e9c54c56d37c6c963b01cf18458d37ba
2019-12-24 18:16:04 +03:00
Leonid Yuriev
f2fd2280e4 mdbx: more for QEMU cross-testing.
Change-Id: Iad5e7f977c744b2edf1987d38523ba0e1f6e46ab
2019-12-23 00:02:54 +03:00
Leonid Yuriev
2acaaeb2ff mdbx-chk: fix - don't check some numbers if btree-walking was disabled.
Change-Id: I3e1abb7fa7720ecb3fc22e6b4a9b1b56494fb8a0
2019-12-22 14:01:50 +03:00
Leonid Yuriev
a5fb5887f9 mdbx: minor refine/fix lock-related erro logging.
Change-Id: Id507819b6b2b0c1a57ec71bd031c5068cb2098e1
2019-12-21 23:33:12 +03:00
Leonid Yuriev
e3d328621e mdbx-posix: checking for file removal during LCK-seizing.
Change-Id: I7626ceda62fc4dac86323bec4194ae46bc19d9d3
2019-12-21 23:33:12 +03:00
Leonid Yuriev
ccb45730f2 mdbx: use page's mp_txnid for basic integrity checking.
Change-Id: I50d6f1251e4fd84e535a708e78dd24d84ec53780
2019-12-21 23:33:12 +03:00
Leonid Yuriev
d11bfef36b mdbx: aligned page-buffer.
Change-Id: Id469c353c47a5a486747bf2c21ee8c003cd2d103
2019-12-21 23:33:12 +03:00
Leonid Yuriev
e70a7f620e mdbx: clarify field description (minor).
Change-Id: Ide20e32b4ee6784a7baf2044f52877afbd9ceff1
2019-12-21 23:33:12 +03:00
Leonid Yuriev
7abd625c05 mdbx-tools: print warning about Windows system limitation.
Change-Id: I8a7765bfe604dc2a4016d3e27622d41f93f06b04
2019-12-21 23:33:12 +03:00
Leonid Yuriev
c79879f290 mdbx-tools: update mdbx_stat captions.
Change-Id: Ic78f7e5bec97a67e8dc3ce21847dcaa1f66a45f9
2019-12-21 23:33:12 +03:00
Leonid Yuriev
e8686a4170 mdbx-cmake: add MDBX_FORCE_ASSERTIONS. 2019-12-21 23:33:12 +03:00
Leonid Yuriev
78e146692a mdbx: alter rule for wipe of steady-point.
Change-Id: Idac7ffd5e89d282aebcbe7382e20a960d5b39f25
2019-12-21 23:33:12 +03:00
Leonid Yuriev
cddf9ca8a2 mdbx: toggle of readers-refresh after wipe steady-point.
Change-Id: I43985fb667b727a8b41dcd5c33e6012160dee16e
2019-12-21 23:33:12 +03:00
Leonid Yuriev
c554b5c45d mdbx: move toggle of readers-refresh to sync_locked().
Change-Id: I99adf32fb39d600a37c4b25f7e8ea49e5bac6cf0
2019-12-21 23:33:12 +03:00
Leonid Yuriev
0350fc41f8 mdbx: clean copy for undo meta.
Change-Id: I2abc1d701dc52caa268210489aa27803fd7a2c3b
2019-12-21 23:33:12 +03:00
Leonid Yuriev
edbdb682d5 mdbx: refine page_flush().
Change-Id: I8270226e4eae721404dbb56d5d591bceaa4613b9
2019-12-21 23:33:12 +03:00
Leonid Yuriev
7f9502fbfe mdbx: rename txn_dbi_exists().
Change-Id: I3a18d73cb49cfa814f1400743ed889d9c3e979ce
2019-12-21 23:33:12 +03:00
Leonid Yuriev
867c537655 mdbx: refine sync-to-disk (lazy/dsync fds).
Change-Id: I4bad81a1a0b5ccbefdc598f58a7d683fa7d8b504
2019-12-21 23:33:12 +03:00
Leonid Yuriev
2db5736554 mdbx: purpose-oriented openfile().
Change-Id: I657689dab538af9a27c27f58eeb4e5ca43bdbc38
2019-12-20 03:20:26 +03:00
Leonid Yuriev
116d14bb76 mdbx: merge branch 'devel'. 2019-12-20 03:18:38 +03:00
Leonid Yuriev
f5cd5cb736 mdbx: close branch 'obsolete/0.2'.
Change-Id: Icc11278329bc25ff5f96321bde9f9fd3c9a108e8
2019-12-20 01:02:05 +03:00
Leonid Yuriev
2ce913450d mdbx: close branch 'obsolete/0.1'.
Change-Id: I1353a5c6ca47aa3371c63b32477ffd19143c76a8
2019-12-20 01:01:35 +03:00
Leonid Yuriev
4e8e17be90 mdbx: close branch 'obsolete/0.0'.
Change-Id: Ib9d86e5543c82f84491b12c91988bec5e38b10c1
2019-12-20 00:59:53 +03:00
Leonid Yuriev
13d68a1200 mdbx: rework & clarify backlog for gc-update.
Change-Id: I31f2b6919810b894e69af34bfee9a5b7f5a513fc
2019-12-19 01:09:54 +03:00
Leonid Yuriev
b6a00a881e mdbx: refine page_get().
Change-Id: I7399782f891d3c6baebedb918f8beffc509e66df
2019-12-18 03:06:07 +03:00
Leonid Yuriev
996b0fa8d3 mdbx: add/remove __hot attribute for internals.
Change-Id: Ia2aa7b81cb3f7342aece720b3cf0bd04f6d8ca64
2019-12-18 03:04:50 +03:00
Leonid Yuriev
83a11c1645 mdbx: more __restrict for pointers.
Change-Id: Ic58bf084f0e80f16aa695cddf3dd2c5627f8a836
2019-12-18 03:03:38 +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
a77921dc67 mdbx: more __always_inline as workaround for wrong non-inlining of functions.
Change-Id: Id4f44de7a883f2d5fbc00e4c3ed915a8c4f07bfe
2019-12-15 00:57:03 +03:00
Leonid Yuriev
61d2e07cf0 mdbx: fix minor typo.
Change-Id: Id82209bfeeb6b6ade00e8aaecc0b9ce4b817e832
2019-12-14 00:57:45 +03:00
Leonid Yuriev
76099d951c mdbx-windows: interpret ERROR_ACCESS_DENIED from OpenProcess() as 'process exists'.
Change-Id: I22e3e3d3d72531e76848793f1e3522d0c1767618
2019-12-13 16:17:31 +03:00
Leonid Yuriev
bf6d09a878 mdbx-windows: use manual-reset events to avoid non-atomic races.
Change-Id: I93b9f114c7c1a205dba18dcc363cf4ba8a27d7e0
2019-12-09 10:59:57 +03:00
Leonid Yuriev
041188c5e2 mdbx-windows: don't use FILE_FLAG_NO_BUFFERING for compatibility with small DB-pages.
Change-Id: Ib8e51ef0ae713455c52e08447f06baede080f368
2019-12-09 10:55:14 +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
8ac13aba75 mdbx: update README.
Change-Id: Iaacc035917e42fea7266a6cd3ec2e0cc4eee41cb
2019-12-07 22:32:48 +03:00
Leonid Yuriev
feb8dbf6d9 mdbx-test: fix single-actor mode for Windows. 2019-12-07 03:08:03 +03:00
Leonid Yuriev
f22c127c44 mdbx-tools: reformat (cosmetic).
Change-Id: I077a266e0a646f3283453d429bff87545839fada
2019-12-07 03:08:03 +03:00
Leonid Yuriev
64eeb623be mdbx-tests: add db-resize to jitter case.
Change-Id: I414e8f3fa676ab7e6716a58cfbc213e0ad4258f9
2019-12-07 03:08:00 +03:00
Leonid Yuriev
8fed86b368 mdbx: avoid use MREMAP_MAYMOVE for simplification, add TODO.
Change-Id: I6991a411fcced941ef76d58ece608e34e4cdb355
2019-12-07 03:06:00 +03:00