ืกืคืจืืืช libmdbx 0.10.4 (MDBX) ืฉืืืจืจื ืขื ืืืฉืื ืฉื ืืกื ื ืชืื ืื ืงืืืคืงืื ืืฉืืืฅ ืืคืชื-ืขืจื ืืขื ืืืฆืืขืื ืืืืืื, ืืกืคืจืืืช libfpta 0.3.9 (FPTA), ืืืืืฉืืช ืืืฆืื ืืืืื ืฉื ื ืชืื ืื ืขื ืืื ืืงืกืื ืืฉื ืืื ืืืจืืืืื ืขื ืืื MDBX. ืฉืชื ืืกืคืจืืืช ืืืคืฆืืช ืชืืช ืจืืฉืืื ืืช ืืืืฉืจืื ืฉื OSI. ืื ืืขืจืืืช ืืืคืขืื ืืืืจืืืืงืืืจืืช ืื ืืืืืืช ื ืชืืืืช, ืืื ืื Elbrus 2000 ืืจืืกื.
ืืืืื ื ืืืกืืืจืืช, libmdbx ืืื ืขืืืื ืืขืืืง ืฉื ื-LMDB DBMS ืืืื ืขืืืฃ ืขื ืืื ืืงืืืื ืฉืื ืืืืื ืืช, ืืขืจื ืชืืื ืืช ืืืืฆืืขืื. ืืืฉืืืื ื-LMDB, libmdbx ืฉืื ืืืฉ ืจื ืขื ืืืืืช ืงืื, ืืฆืืืืช API, ืืืืงืืช ืืืืืงืืช ืืืืืืืืืช. ืืกืืคืง ืืื ืขืืจ ืืืืืงืช ืชืงืื ืืช ืืื ื ืืกื ืื ืชืื ืื ืขื ืืื ืืืืืืช ืฉืืืืจ.
ืืืืื ื ืืื ืืืืืืช, libmdbx ืืฆืืข ACID, ืกืืืืจื ืฉืื ืืืื ืืืงืื ืืงืจืืืืช ืื ืืืกืืืช ืขื ืงื ื ืืืื ืืื ืืืจื ืขื ืคื ื ืืืืืช ืืืขืื. ืืงืืืคืงืฆืื ืืืืืืืืช, ื ืืืื ืืืื ืืกื ื ืชืื ืื ืืืืืืื ืืืขืจืืช ืฉืืืืชืช ืืืื ื ืชืืืื. ืืื 2016, ืคืจืืืงืืื ืืืืื ืื ืขื ืืื Positive Technologies ืืืื 2017 ืืฉืืฉืื ืืืืฆืจืื ืฉืื.
libmdbx ืืฆืืข C++ API, ืืื ืื ืืจืืืืช ืฉืคื ืื ืชืืืืช ืขื ืืื ืืืืืื ืขืืืจ Rust, Haskell, Python, NodeJS, Ruby, Go ื-Nim. ืขืืืจ libfpta, ืจืง ืชืืืืจ ื-API ืืืื ืืฆืืืืจ ืืฆืืจื ืฉื ืงืืืฅ ืืืชืจืช C/C++.
ืืืืืฉืื, ืฉืืคืืจืื ืืชืืงืื ืื ืืจืืืืื ืฉื ืืกืคื ืืื ืืืืฉืืช ืืงืืืืืช ื-9 ืืืื:
- ืืืคืฉืจ ืื ืืื ื ืืชื ืช ืืฉืืืืจ.
- ืชืืงื ืืื ืฉืืืืื, ืื ืกืืืืช ื ืืืจืืช ืืืื, ืืืืื/ืืงืคืื ืขืืืื ืืืชืจืืฉ ืืืืื ืืืฆืืข ืขืกืงื. ืืืขืื ืืืืชื ืขื ืืื ืืืืื Positive Tecnologies ืืืืื ืืืืงืืช ืคื ืืืืืช ืฉื ืืืืฆืจืื ืฉืืื.
- ืืืืืงืืช ืฉืืคืจื ืืชืจืืืฉื ืืืืืงื ืืืจืืื ืืื ืืืืืง ืืช ืื ืืืฆืืื ืืื-ืืืืืืจืคืืื ืื ืืืฉืื ืฉื ืขืฅ ืืขืืืืื ืืชืืื GC ืืชืื ืืกื ืื ืชืื ืื.
- ื-C++ API, ืชืืงื "noexcept" ื ืืกืฃ, ืขืืืกืื ื ืืกืคืื ื ืืกืคื ืขืืืจ ืฉืืืช "cursor::erase()", ืืืฉืื ืืืืจืื ื ืืกื ืืืฉืืืืฉ ื-"std::string" ืืื ืืืืืื ืืืฉืืจ (ืจืืืื ืื ืขืืืจ CLANG libstdc++).
- ื ืกืืื ืืืืืืจืืชื ืฉืคืืืช ืืืฃ ืืืืืืื (ืคืืืื ืกืืงืืืืืช ืฉื ืืคื ืืกื ื ืชืื ืื ืฉืืฉืชื ื) ืฉืืชืืืื ืืฉืืืื ืืืชื ืฆืคืืื ื ืืืจื MDBX_PROBLEM ืืขืช ืฉืื ืื ื ืชืื ืื ืืขืกืงืืืช ืขื ืง ืืืืื.
- ืืืฆืขื ืืืืงืช ืคืืืื ื ืืชืืกืคืช ืืกืคืจ ืืืืงืืช ืืืืืืช ืืฆืืืืช ืืืงืจื ืฉื ืคืืืขื ืืืืื ืช ืืืืืจ ืื ืชืื ืื.
- ืชืืงื ื ืืขืืืช ืฉื ืืืืจืืช ืงืืืช UndefinedBehaviorSnitizer ืืกืจืืงืช Coverity.
- ืชืืงื ืืืืงืช ืืืื ืืคื ืืื ืืืืืฉื ืืืื ืืฉืืืืฉ ืขืื "P_DIRTY" ืืืคืื ืืงืื ื ืื ืืชืื ืชืืื ืืช ืืกื ื ืชืื ืื ืฉื ืืฆืจื ืขื ืืื ืืจืกืืืช ืืฉื ืืช ืืืชืจ ืฉื ืืกืคืจืืื.
- ืืกืงืจืืคืืื ืฉื CMake, ืืืืคืืฉ ืืืจ ืจืืืื ืืืืจ ืื ืืจืฉืื ื-LTO (ืืืคืืืืืืฆืื ืืืื ืงืืฉืืจ) ืฉืืคืจ.
- ืืืกืคืจ ืืืจืื ืฉื ืงืืจืืื ืื-ืืื ืืช ืืืืื ื-32767.
- ืืืฆืืขืื ืืฉืืคืจืื ืืขืช ืฉืืืืฉ ื-Valgrind ื-AddressSnitizer.
- ื-Windows, ืืืื ืืฉืืืืฉ ืืจืงืืจืกื ื-SRW-lock ืืขืช ืขืืืื ืืืฆื MDBX_NOTLS (ืืื ืฉืืืืฉ ืืืืกืื ืืงืืื ืฉื ืคืชืื), ืืฆืืจืช ืืชืืื ืชืืงื ืื ืืื ืืืขืจืืช ืืฉืชื ื, ืืืืื WSL1 ื-WSL2 ืฉืืคืจ, ืืืืืืืช ืคืชื ืืกื ื ืชืื ืื ืืชืืื ืืช 9 ืืืืชืงื ืืืืฆืขืืช DrvFS ื ืืกืฃ.
- ืืกื ืืื, ืืืฆืขื ืืืชืจ ื-160 ืฉืื ืืืื ื-57 ืงืืฆืื, ื ืืกืคื ~5000 ืฉืืจืืช, ~2500 ื ืืืงื.
ืื ื ืจืืฆื ืืืืืืช ืืืืืื ืืฆืืืช ืืคืจืืืงื ืฉื Erigon (Ethereum ecosystem) ืขื ืืกืืืข ืฉืืื ืืืืืงื ืืชืจืืืฉื ืฉืืืืฉ ืงืืฆืื ื. ืื ืืฉืืขืืชื ืฉืืืืืฉื ืืืืฉืื ืืื ืืฆืืืช libmdbx v0.10.0, ืขื ื ืคื ืืกื ื ืชืื ืื ืฉื 1-2 TB ืืื ืืชืงื ืช Erigon (ืืฉืืืืฉ ื-7% ืืฆืืชื Ethereum), ืืชืงืืื ืจืง ืฉืืืฉื ืืืืืืื ืขื ืฉืืืชืืช ืืืกื ืื ืชืื ืื, ืืืื ืฉืืชืจืืฉื ืืกืืืืช ืืืฆืื ืืืช, ืืื ืฉืืืืืช ืชืืื ื: ืืฉื ื ืืงืจืื ืืกืืื ืืืืชื ืชืงืืืช RAM, ืืฉืืืฉื ืฉืืืื ืืืืคืืก ื ืชืื ืื ืืชืฆืืจื ืกืคืฆืืคืืช ืฉื ืชืช-ืืขืจืืช ืืืืกืื ืืืืฆืขืืช BTRFS.
ืืงืืจ: OpenNet.ru