ืกืคืจืืืช libmdbx 0.11.3 (MDBX) ืฉืืืจืจื ืขื ืืืฉืื ืฉื ืืกื ื ืชืื ืื ืงืืืคืงืื ืืฉืืืฅ ืืคืชื-ืขืจื ืืขื ืืืฆืืขืื ืืืืืื. ืืงืื libmdbx ืืืจืฉื ืชืืช ืืจืืฉืืื ืืฆืืืืจื ืฉื OpenLDAP. ืื ืืขืจืืืช ืืืคืขืื ืืืืจืืืืงืืืจืืช ืื ืืืืืืช ื ืชืืืืช, ืืื ืื Elbrus 2000 ืืจืืกื. ืืกืืฃ 2021, libmdbx ืืฉืืฉ ืืืืง ืืืืจื ืฉื ืืืกืื ืืฉื ื ืืงืืืืช ื-Ethereum ืืืืืจืื ืืืืชืจ - Erigon ื-"Shark" ืืืืฉ, ืืฉืจ, ืขื ืคื ืืืื, information, ืืื ืืงืื Ethereum ืืขื ืืืืฆืืขืื ืืืืืืื ืืืืชืจ.
ืืืืื ื ืืืกืืืจืืช, libmdbx ืืื ืขืืืื ืืขืืืง ืฉื ื-LMDB DBMS ืืืื ืขืืืฃ ืขื ืืื ืืงืืืื ืฉืื ืืืืื ืืช, ืืขืจื ืชืืื ืืช ืืืืฆืืขืื. ืืืฉืืืื ื-LMDB, libmdbx ืฉืื ืืืฉ ืจื ืขื ืืืืืช ืงืื, ืืฆืืืืช API, ืืืืงืืช ืืืืืงืืช ืืืืืืืืืช. ืืกืืคืง ืืื ืขืืจ ืืืืืงืช ืชืงืื ืืช ืืื ื ืืกื ืื ืชืื ืื ืขื ืืื ืืืืืืช ืฉืืืืจ.
ืืืืื ื ืืื ืืืืืืช, libmdbx ืืฆืืข ACID, ืกืืืืจื ืฉืื ืืืื ืืืงืื ืืงืจืืืืช ืื ืืืกืืืช ืขื ืงื ื ืืืื ืืื ืืืจื ืขื ืคื ื ืืืืืช ืืืขืื. ืืงืืืคืงืฆืื ืืืืืืืืช, ื ืืืื ืืืื ืืกื ื ืชืื ืื ืืืืืืื ืืืขืจืืช ืฉืืืืชืช ืืืื ื ืชืืืื. ืืื 2016, ืืคืจืืืงื ืืืืื ืขื ืืื Positive Technologies ืืืฉืืฉ ืืืืฆืจืื ืืื 2017.
libmdbx ืืฆืืข C++ API, ืืื ืื ืืจืืืืช ืฉืคื ืื ืชืืืืช ืขื ืืื ืืืืืื ืขืืืจ Rust, Haskell, Python, NodeJS, Ruby, Go ื-Nim.
ืืืืืฉืื, ืฉืืคืืจืื ืืชืืงืื ืื ืืจืืืืื ืฉื ืืกืคื ืืื ืืืืฉืืช ืืงืืืืืช ื-11 ืืืืงืืืืจ:
- ื-API ืฉื C++ ื ืืฉื ืืืื ืืฉืืืืฉ.
- ืืขืืืื ืฉื ื ืชืื ื GC ืืขืช ืืืฆืืข ืขืกืงืืืช ืขื ืง ืืืืฅ ืืฉืืขืืชืืช, ืืื ืืฉืื ืืืืืื ืืขืช ืฉืืืืฉ ื-libmdbx ืืืขืจืืช ืืืงืืืืืืช ืฉื Ethereum.
- ืืืชืืื ืืคื ืืืืช ืฉื ืคืืจืื ืืกื ืื ืชืื ืื ืฉืื ืชื ืืื ืืชืืื ืืขืืืื ืืืืืืื, ืฉืงืืฃ ืืืืืืื ืืืฉืชืืฉืื. ืื ืืืคืฉืจ ืื ืืืื ืืืืขืืช ืืืืืืืช ืืืืืืช ืขื ืืฉืืชื ืืืกื ืื ืชืื ืื ืืืฉืจ ืืฉืชืืฉืื ืืืจืกืืืช ืืืืฉื ืืช ืฉื ืืกืคืจืืื ืืงืจืืืช ืขืกืงืืืช ืฉืชืืขืื ืขื ืืื ืืจืกืืืช ื ืืืืืืช.
- ื ืืกืคื ืคืื ืงืฆืืืช mdbx_env_get_syncbytes(), mdbx_env_get_syncperiod() ื-mdbx_env_get_syncbytes(). ื ืืกืคื ืชืืืื ืืคืขืืืช MDBX_SET_UPPERBOUND.
- ืื ืืืืืจืืช ืืขืช ืื ืืื ืขื ืื ืืืืืจืื ืื ืชืืืื ืืืฆืื C++ 11/14/17/20 ืืืืื. ืืืืืืช ืชืืืืืช ืขื ืืืืจืื ืืืืจ ืงืืื: ืฆืืฆืื ืืื ื-3.9, gcc ืืื ื-4.8, ืืืื ืืจืืื ืืืืฆืขืืช cdevtoolset-9 ืขืืืจ CentOS/RHEL 7.
- ืชืืงื ืืช ืืืคืฉืจืืช ืฉื ืืชื ืืฉืืช ืขืืื ืืื ืืืืจ ืืขืืจ ืืื ื ืืืฃ ืืื ืกืคืฆืืคื ืืืืฆืขืืช ืืื ืืฉืืจืืช mdbx_chk.
- ืชืืงื ื ืฉืืืื ืืืชื ืฆืคืืื ืฉื MDBX_PROBLEM ืฉืืืืืจื ืืขืช ืืืืคืช ืืคื ืืื ืืืืจ ืงืืื.
- ืชืืงื ืืืืจืช MDBX_NOTFOUND ืืืงืจื ืฉื ืืชืืื ืื ืืืืืงืช ืืขืช ืขืืืื ืืงืฉืช MDBX_GET_BOTH.
- ืชืืงื ื ืฉืืืืช ืงืืืคืืืฆืื ืืืื ืืงืก ืืืืขืืจ ืงืืฆื ืืืชืจืช ืขื ืชืืืืจืื ืฉื ืืืฉืงืื ืขื ืืืืื.
- ืชืืงื ืืชื ืืฉืืช ืืื ืืืื ืืคื ืืื MDBX_SHRINK_ALLOWED ืืืื ืืืคืฉืจืืช MDBX_ACCEDE.
- ืืืืื ืืื ืืืืงืืช ืืขื ื ืืืืชืจืืช.
- ืชืืงื ื ืืืืจื ืืืชื ืฆืคืืื ืฉื MDBX_RESULT_TRUE ืืคืื ืงืฆืืืช mdbx_env_set_option() .
- ืืกื ืืื, ืืืฆืขื ืืืชืจ ื-90 ืฉืื ืืืื ื-25 ืงืืฆืื, ื ืืกืคื ~1300 ืฉืืจืืช, ~600 ื ืืืงื.
ืืงืืจ: OpenNet.ru