Commit Graph

  • 594834bc9c mdbx: Merge branch 'nexenta' into devel. Leo Yuriev 2017-07-04 09:22:09 +03:00
  • d5a0fe539f mdbx: Merge branch 'nexenta' (preparation to stable stage). v0.0.0 Leo Yuriev 2017-07-04 08:55:48 +03:00
  • 3c5ae4cc9c mdbx: disable C4548 as workaround for buggy WinSDK 10.0.10240.0 Leo Yuriev 2017-07-03 12:50:48 +03:00
  • 78ae12aa10 mdbx: fix MSVC 'padding' warnings, minor refine fields ordering. Leo Yuriev 2017-07-03 09:56:46 +03:00
  • 1d702aa94f mdbx: more warning control for MSVC. Leo Yuriev 2017-07-03 06:30:43 +03:00
  • 283eb0aff0 test: add 'volatile' to rdtsc() and friends (fix for modern clang). Leo Yuriev 2017-07-03 05:11:52 +03:00
  • 229514c93e mdbx: update TODO. Leonid Yuriev 2017-07-02 16:54:18 +03:00
  • 5dd68f70fa mdbx: use /W4 (level4 for warnings) and /WX (treat warnings as errors). Leonid Yuriev 2017-07-02 16:48:09 +03:00
  • 3e6a672286 mdbx: fix MSVC warnings, add uint16-range-asserts. Leonid Yuriev 2017-07-02 09:07:57 +03:00
  • 2ed74ee78f mdbx: fix MSVC size_t/uint64_t warnings (minor). Leo Yuriev 2017-06-30 07:25:56 +03:00
  • 9cb3abf379 mdbx: update TODO. Leo Yuriev 2017-06-30 00:21:28 +03:00
  • 186d2ee065 mdbx: add 'mti_reader_finished_flag' for speedup find_oldesd(). Leo Yuriev 2017-06-30 00:20:33 +03:00
  • acfa096aba mdbx: more for lockless/readonly mode (testing needed). Leo Yuriev 2017-06-30 00:16:16 +03:00
  • bfa8e439ba mdbx: use GNU C11 by default. Leo Yuriev 2017-06-24 19:34:29 +03:00
  • 5fbb8d1018 mdbx: fix C11 warnings abount atomic. Leo Yuriev 2017-06-24 19:33:34 +03:00
  • 5ab319bbb1 mdbx: update TODO. Leo Yuriev 2017-06-16 14:29:37 +03:00
  • ca83480c34 mdbx: pragma lib ntdll.lib Leonid Yuriev 2017-06-20 07:25:31 +03:00
  • 28ba127db2 test: typo fix. Leonid Yuriev 2017-06-20 07:18:09 +03:00
  • 9a2fff91f3 mdbx: dynamic mapsize/geometry and API (mostly done). Leo Yuriev 2017-06-21 01:34:56 +03:00
  • 45defdc170 mdbx: refine err returning (MDBX_EPERM, etc). Leo Yuriev 2017-06-21 01:42:27 +03:00
  • 10b0197026 mdbx: drop mdbx_get_errno_checked(). Leo Yuriev 2017-06-21 01:41:25 +03:00
  • 151d4540de mdbx: refine internal constant (use UINT32_C, etc minors). Leo Yuriev 2017-06-21 01:19:04 +03:00
  • f93818a926 mdbx: fix MAX_MAPSIZE for Win32. Leo Yuriev 2017-06-21 01:20:21 +03:00
  • edc936dc28 mdbx: rework mdbx_oomkick() and speedup mdbx_find_oldest(). Leo Yuriev 2017-06-16 04:16:30 +03:00
  • 81661ff952 mdbx: add shared cache for oldest reader's txnid. Leo Yuriev 2017-06-14 23:33:13 +03:00
  • c01aeb5c68 mdbx: refine meta_txnid(). Leo Yuriev 2017-06-15 05:02:14 +03:00
  • ae71c2aa36 mdbx: simplify find-oldest inside mdbx_page_alloc(). Leo Yuriev 2017-06-14 23:33:44 +03:00
  • 760f7d1331 mdbx: fix nasty 'inverted if-condition' inside mdbx_reader_check0(). Leo Yuriev 2017-06-14 21:34:43 +03:00
  • ddc3787936 mdbx: fix MDBX_RESULT_TRUE handling inside mdbx_mutex_failed()...mdbx_oomkick(). Leo Yuriev 2017-06-14 23:34:11 +03:00
  • 71e2fe3df0 mdbx: add MDBX_DBG_DUMP for mdbx_setup_debug(). Leo Yuriev 2017-06-15 04:06:07 +03:00
  • 2392c70e2b mdbx: refine MDBX_oom_func description. Leo Yuriev 2017-06-14 19:36:32 +03:00
  • bce8731e60 mdbx: fix mdbx_txn_straggler() for write-txn (backport from devel). Leo Yuriev 2017-06-13 19:48:50 +03:00
  • 0ef41bef2b mdbx: fix mdbx_txn_straggler() for write-txn. Leo Yuriev 2017-06-13 19:27:52 +03:00
  • e7f9f2bd5c ci: add Coverity Scan (initial). Leo Yuriev 2017-06-12 15:41:36 +03:00
  • 6f53dd0719 mdbx: add mdbx_dbi_flags_ex(). Leo Yuriev 2017-06-09 16:35:41 +03:00
  • 3ca64535b6 mdbx: add NTAPI to OSAL. Leo Yuriev 2017-06-06 21:20:16 +03:00
  • d2d513014d mdbx: add mdbx_lck_upgrade() to OSAL. Leo Yuriev 2017-06-06 20:18:09 +03:00
  • 204904df7c mdbx: disallow begin txn if env not yet opened. Leo Yuriev 2017-06-06 18:28:04 +03:00
  • fbce45cb98 mdbx: allow calling mdbx_env_sync() inside transaction. Leo Yuriev 2017-06-06 17:59:12 +03:00
  • 1d15ae4b13 mdbx: zeroing MDBX_page.mp_validator for Valgrind/AddressSanitizer. Leo Yuriev 2017-06-06 17:41:06 +03:00
  • 465459dc58 mdbx: add MDBX_txn.mt_owner and MDBX_THREAD_MISMATCH. Leo Yuriev 2017-06-06 17:05:30 +03:00
  • 3bf3a08f96 mdbx: fix write-txn thread cleanup. Leo Yuriev 2017-06-06 16:42:21 +03:00
  • 318646794e mdbx: partial fix MSVC level-4 warnings. Leonid Yuriev 2017-06-05 22:46:15 +03:00
  • 90b30e7584 mdbx: level-4 warnings for debug-build. Leonid Yuriev 2017-06-05 21:04:42 +03:00
  • bfa6dea784 mdbx: fix size_t/unsigned/int warnings. Leonid Yuriev 2017-06-05 20:48:05 +03:00
  • 7e85ad82f1 mdbx: refine read_header(), add MDBX_TOO_LARGE. Leonid Yuriev 2017-06-05 22:45:13 +03:00
  • 61d7ea283f mdbx: size_t for sync_threshold and mapsize. Leo Yuriev 2017-06-05 17:26:08 +03:00
  • 802c10f13f mdbx: log2shift instead of multiplication by pagesize. Leo Yuriev 2017-06-05 17:16:21 +03:00
  • 9ef81ac16c mdbx: add 'unlikely' to IS_OVERFLOW(). Leo Yuriev 2017-06-05 16:56:59 +03:00
  • 439ae3983c mdbx: use 2^N constants for fill-threshold. Leo Yuriev 2017-06-05 16:56:10 +03:00
  • 59c22ab036 mdbx: use 32-bit pgno_t (page numbers). Leo Yuriev 2017-06-05 14:22:52 +03:00
  • 1343b46466 mdbx: add txnid-list functions. Leo Yuriev 2017-06-05 14:02:44 +03:00
  • 52f52de2d5 mdbx: include meta-pages into a coredump. Leo Yuriev 2017-05-31 18:58:55 +03:00
  • 95ebdb7065 mdbx: MAX_PAGESIZE always 64K. Leo Yuriev 2017-05-31 17:10:17 +03:00
  • 19dd181b6f mdbx: fix STATIC_ASSERT for MSVC. Leo Yuriev 2017-05-31 17:09:43 +03:00
  • 7f4684abff mdbx: update TODO. Leo Yuriev 2017-05-31 16:44:43 +03:00
  • 61a3766e23 mdbx: update DB format and signatures. Leo Yuriev 2017-05-30 16:22:42 +03:00
  • d99b2a4b16 mdbx: use F_SETNOSIGPIPE to SIGPIPE husing on a OS X. Lorenz Bauer 2017-05-31 14:06:25 +03:00
  • 98a8fbdc7a mdbx: restore SIGPIPE hushing in the db-copy-thread. Leo Yuriev 2017-05-31 14:04:40 +03:00
  • e7ee0bc762 mdbx: refine testing-jitter, add MDBX_DBG_JITTER. Leonid Yuriev 2017-06-06 03:10:52 +03:00
  • 009618560f mdbx: refine mdbx_is_dirty(). Leo Yuriev 2017-05-30 15:19:46 +03:00
  • d5b0e68326 mdbx: fix merge/rebase error (remove mm_txnid field). Leo Yuriev 2017-05-29 20:44:17 +03:00
  • a36b065cd9 mdbx: logging MDBX_PROBLEM reasons. Leo Yuriev 2017-05-29 20:17:02 +03:00
  • 11e8727483 mdbx: fix missing braces. Leo Yuriev 2017-05-29 20:16:09 +03:00
  • 70fe982c3a mdbx: fix MDBX_WANNA_RECOVERY description. Leo Yuriev 2017-05-29 19:27:49 +03:00
  • d91785f635 mdbx: disable unnecessary assertion in mdbx_is_dirty(). Leo Yuriev 2017-05-29 19:27:17 +03:00
  • 0f676db491 mdbx: add locking while open/close/drop dbi-handles (avoid dbi-related races). Leo Yuriev 2017-05-28 18:50:09 +03:00
  • bd5d092a2b mdbx: check system pagesize (paranoia). Leo Yuriev 2017-05-28 18:49:05 +03:00
  • a0ddf167dd mdbx: common database format for 32/64 targets (remove 'size_t' structures). Leo Yuriev 2017-05-28 18:35:32 +03:00
  • fca74ab80c mdbx: refine meta-commit in WRITEMAP mode. Leo Yuriev 2017-05-28 18:31:33 +03:00
  • 2347282b4f mdbx: add assertions for reclaiming-edge. Leo Yuriev 2017-05-28 13:06:29 +03:00
  • 236ddda1ae mdbx: more assertions for mdbx_txn_renew0(). Leo Yuriev 2017-05-28 13:48:36 +03:00
  • 2ea97ae281 mdbx: refine find_oldest() and meta_head(). Leo Yuriev 2017-05-28 13:04:36 +03:00
  • 91bc3129d5 mdbx: refine mdbx_page_search(). Leo Yuriev 2017-05-28 13:43:52 +03:00
  • 9318e4cabb test: fix oom_callback() nasty bug. Leo Yuriev 2017-05-28 13:09:36 +03:00
  • f945e8a062 mdbx: fix cache-aligned size for MDBX_reader. Leo Yuriev 2017-05-28 13:48:11 +03:00
  • bb5e1b43af mdbx: relax mdbx_is_dirrty() assertion for map-range. Leo Yuriev 2017-05-28 13:09:05 +03:00
  • 17c8057684 mdbx: fix gcc 'uninitialized' warning with -Og. Leo Yuriev 2017-05-28 13:07:29 +03:00
  • 77f0e5e38e mdbx: drop unused debug features. Leo Yuriev 2017-05-27 20:03:46 +03:00
  • 60fed8bbca mdbx: fix first-rdonly-blocker bug. Leo Yuriev 2017-05-26 20:28:09 +03:00
  • 5c3691eff1 mdbx: split atomics for 32/64 uints. Leo Yuriev 2017-05-26 20:27:27 +03:00
  • 76f459c08e mdbx: two-phase txnid to avoid bottom-top DMA updates. Leo Yuriev 2017-05-26 20:00:52 +03:00
  • dd33bea1d8 tools: mdbx_chk - don't 'rolled-back' in cooperative more. Leo Yuriev 2017-05-26 18:17:17 +03:00
  • bd70135db1 mdbx: re-read and check meta-pages in mdbx_read_header() for consistency. Leo Yuriev 2017-05-26 18:10:23 +03:00
  • 93c5a84bcd mdbx: more checks mdbx_read_header() for metapage's content. Leo Yuriev 2017-05-26 17:25:08 +03:00
  • 1c170cb866 mdbx: add MAX_PAGENO, MIN_PAGENO, MAX_MAPSIZE, MIN_MAPSIZE. Leo Yuriev 2017-05-26 17:23:09 +03:00
  • 18cf804d0b mdbx: add STATIC_ASSERT_MSG, refine STATIC_ASSERT. Leo Yuriev 2017-05-26 17:11:48 +03:00
  • b038767a18 mdbx: add 'mdbx_chk' to Makefile's 'check' target. Leo Yuriev 2017-05-26 16:17:24 +03:00
  • 4293840055 mdbx: fix meta-invalidate race in MDBX_WRITEMAP mode (when target == head). Leo Yuriev 2017-05-26 15:44:00 +03:00
  • f4d3b76f81 mdbx: minor refine and rename mdbx_sync_locked(). Leo Yuriev 2017-05-26 15:39:58 +03:00
  • 9959fe8711 mdbx: reorder fields in metapages. Leo Yuriev 2017-05-26 15:46:45 +03:00
  • c02a3ac687 mdbx: ignore meta-pages with wrong pagesize. Leo Yuriev 2017-05-26 15:20:25 +03:00
  • 0e49b1b2b4 mdbx: update 'mapsize' while opening with txn-increment. Leo Yuriev 2017-05-26 15:11:31 +03:00
  • d642127d10 tools: fix 'tail' show in mdbx_chk. Leo Yuriev 2017-05-26 12:00:05 +03:00
  • 5d836d2b03 mdbx: clarify steady/fluid/weak names of a head. Leo Yuriev 2017-05-26 11:45:13 +03:00
  • 1e0654a4a8 tool: show operational txnid in mdbx_chk. Leo Yuriev 2017-05-26 11:08:21 +03:00
  • 47cc45dec4 mdbx: don't check present durability mode for MDBX_RDONLY. Leo Yuriev 2017-05-26 10:50:20 +03:00
  • 700f3e9c2a mdbx: more checks for meta-params. Leo Yuriev 2017-05-25 14:07:58 +03:00
  • 9eeb00f448 mdbx: trinity of meta-pages. Leo Yuriev 2017-05-24 21:43:29 +03:00
  • 141306644d mdbx: fix mdbx_env_copy_asis(). Leo Yuriev 2017-05-25 17:51:15 +03:00