เด‰เตพเดšเตเดšเต‡เตผเดคเตเดค DBMS libmdbx 0.13.2-เตปเตเดฑเต† เดฑเดฟเดฒเต€เดธเต

เด‰เดฏเตผเดจเตเดจ เดชเตเดฐเดตเตผเดคเตเดคเดจเด•เตเดทเดฎเดคเดฏเตเดณเตเดณ เด•เต‹เด‚เดชเดพเด•เตเดฑเตเดฑเต เดŽเด‚เดฌเดกเดกเต เด•เต€-เดตเดพเดฒเตเดฏเต‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเดจเตเดจ libmdbx 0.13.2 (MDBX) เตปเตเดฑเต† เดฑเดฟเดฒเต€เดธเต เดชเตเดฐเดธเดฟเดฆเตเดงเต€เด•เดฐเดฟเดšเตเดšเต. libmdbx เด•เต‹เดกเต Apache 2.0 เดฒเตˆเดธเตปเดธเดฟเดจเต เด•เต€เดดเดฟเดฒเดพเดฃเต เดตเดฟเดคเดฐเดฃเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต. เดจเดฟเดฒเดตเดฟเดฒเต† เดŽเดฒเตเดฒเดพ เด“เดชเตเดชเดฑเต‡เดฑเตเดฑเดฟเด‚เด—เต เดธเดฟเดธเตเดฑเตเดฑเด™เตเด™เดณเตเด‚ เด†เตผเด•เตเด•เดฟเดŸเต†เด•เตเดšเดฑเตเด•เดณเตเด‚ เดชเดฟเดจเตเดคเตเดฃเดฏเตเด•เตเด•เตเดจเตเดจเต, เด…เดคเตเดชเต‹เดฒเต† เดฑเดทเตเดฏเตป เดŽเตฝเดฌเตเดฐเดธเต 2000. libmdbx C++ เดจเดพเดฏเดฟ เด’เดฐเต เดตเดฟเด•เดธเดฟเดชเตเดชเดฟเดšเตเดš API เดตเดพเด—เตเดฆเดพเดจเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต, เด•เต‚เดŸเดพเดคเต† Rust, Haskell, Python, NodeJS, Ruby, Go, Nim เดŽเดจเตเดจเต€ เดญเดพเดทเด•เดณเดฟเดฒเต‡เด•เตเด•เต เด†เดตเต‡เดถเดคเตเดคเต‹เดŸเต† เดชเดฟเดจเตเดคเตเดฃเดฏเตเด•เตเด•เตเดจเตเดจ เดฌเตˆเตปเดกเดฟเด‚เด—เตเด•เดณเตเด‚. , เดกเต†เดจเต‹, เดธเตเด•เดพเดฒ.

เดšเดฐเดฟเดคเตเดฐเดชเดฐเดฎเดพเดฏเดฟ, เดŽเตฝเดŽเด‚เดกเดฟเดฌเดฟ เดกเดฟเดฌเดฟเดŽเด‚เดŽเดธเดฟเตปเตเดฑเต† เด†เดดเดคเตเดคเดฟเดฒเตเดณเตเดณ เดชเตเดจเตผเดจเดฟเตผเดฎเตเดฎเดพเดฃเดฎเดพเดฃเต libmdbx, เดตเดฟเดถเตเดตเดพเดธเตเดฏเดคเดฏเดฟเดฒเตเด‚ เดซเต€เดšเตเดšเตผ เดธเต†เดฑเตเดฑเดฟเดฒเตเด‚ เดชเตเดฐเด•เดŸเดจเดคเตเดคเดฟเดฒเตเด‚ เด…เดคเดฟเตปเตเดฑเต† เดชเต‚เตผเดตเตเดตเดฟเด•เดจเต†เด•เตเด•เดพเตพ เดฎเดฟเด•เดšเตเดšเดคเดพเดฃเต. LMDB-เดฏเตเดฎเดพเดฏเดฟ เดคเดพเดฐเดคเดฎเตเดฏเดชเตเดชเต†เดŸเตเดคเตเดคเตเดฎเตเดชเต‹เตพ, libmdbx เด•เต‹เดกเต เด—เตเดฃเดจเดฟเดฒเดตเดพเดฐเด‚, API เดธเตเดฅเดฟเดฐเดค, เดŸเต†เดธเตเดฑเตเดฑเดฟเด‚เด—เต, เด“เดŸเตเดŸเต‹เดฎเต‡เดฑเตเดฑเดกเต เดšเต†เด•เตเด•เตเด•เตพ เดŽเดจเตเดจเดฟเดตเดฏเดฟเตฝ เดตเดณเดฐเต†เดฏเดงเดฟเด•เด‚ เดŠเดจเตเดจเตฝ เดจเตฝเด•เตเดจเตเดจเต. เดšเดฟเดฒ เดตเต€เดฃเตเดŸเต†เดŸเตเด•เตเด•เตฝ เด•เดดเดฟเดตเตเด•เดณเตเดณเตเดณ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เด˜เดŸเดจเดฏเตเดŸเต† เดธเดฎเด—เตเดฐเดค เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เด’เดฐเต เดฏเต‚เดŸเตเดŸเดฟเดฒเดฟเดฑเตเดฑเดฟ เดตเดฟเดคเดฐเดฃเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต. เดธเดพเด™เตเด•เต‡เดคเดฟเด•เดตเดฟเดฆเตเดฏเดพเดŸเดฟเดธเตเดฅเดพเดจเดคเตเดคเดฟเตฝ, libmdbx, เดธเดฟเดชเดฟเดฏเต เด•เต‹เดฑเตเด•เดณเดฟเดฒเตเดŸเดจเต€เดณเด‚ เดฒเต€เดจเดฟเดฏเตผ เดธเตเด•เต†เดฏเดฟเดฒเดฟเด‚เด—เดฟเดจเตŠเดชเตเดชเด‚ ACID, เดถเด•เตเดคเดฎเดพเดฏ เดฎเดพเดฑเตเดฑ เดธเต€เดฐเดฟเดฏเดฒเตˆเดธเต‡เดทเตป, เดจเต‹เตบ-เดฌเตเดฒเต‹เด•เตเด•เดฟเด‚เด—เต เดฑเต€เดกเตเด•เตพ เดŽเดจเตเดจเดฟเดต เดตเดพเด—เตเดฆเดพเดจเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต. เดฏเดพเดจเตเดคเตเดฐเดฟเด• เด•เต‹เด‚เดชเดพเด•เตเดฑเตเดฑเดฟเดซเดฟเด•เตเด•เต‡เดทเตป, เด“เดŸเตเดŸเต‹เดฎเดพเดฑเตเดฑเดฟเด•เต เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดธเตˆเดธเต เดฎเดพเดจเต‡เดœเตเดฎเต†เตปเตเดฑเต, เดฑเต‡เดžเตเดšเต เด•เตเดตเดฑเดฟ เดŽเดธเตเดฑเตเดฑเดฟเดฎเต‡เดทเตป เดŽเดจเตเดจเดฟเดต เดชเดฟเดจเตเดคเตเดฃเดฏเตเด•เตเด•เตเดจเตเดจเต.

เดชเตเดฐเดงเดพเดจ เดฎเดพเดฑเตเดฑเด™เตเด™เตพ:

  • เดธเด™เตเด•เต€เตผเดฃเตเดฃเดฎเดพเดฏ เดธเดพเดนเดšเดฐเตเดฏเด™เตเด™เดณเดฟเตฝ เดชเต‡เดœเต เดฒเดฟเดธเตเดฑเตเดฑเตเด•เตพ เดคเดฟเดฐเดฟเด•เต† เดจเตฝเด•เตเดฎเตเดชเต‹เตพ / เด‡เดŸเตเดฎเตเดชเต‹เตพ เดœเดฟเดธเดฟ เด…เดชเตโ€Œเดกเต‡เดฑเตเดฑเต เดตเต‡เด—เดคเตเดคเดฟเดฒเดพเด•เตเด•เตเด•. เดฎเตเดฎเตเดชเต เดชเตเดฐเดตเตผเดคเตเดคเดจเดฐเดนเดฟเดคเดฎเดพเด•เตเด•เดฟเดฏ เดชเดฐเต€เด•เตเดทเดฃเดพเดคเตเดฎเด• เดคเดฟเดฐเตเดคเตเดคเตฝ เดซเต€เดกเตโ€Œเดฌเดพเด•เตเด•เต เดฎเต‹เดกเต เดฎเต†เดšเตเดšเดชเตเดชเต†เดŸเตเดคเตเดคเดฟ เดธเดœเต€เดตเดฎเดพเด•เตเด•เดฟ. เด…เดŸเดฟเดธเตเดฅเดพเดจเดชเดฐเดฎเดพเดฏเดฟ เดฎเต†เดšเตเดšเดชเตเดชเต†เดŸเตเดคเตเดคเดฟเดฏ เดˆ เดธเด‚เดฏเต‹เดœเดจเด‚ (เดตเต€เดฃเตเดŸเตเด‚ เดถเตเดฐเดฎเดฟเด•เตเด•เดฒเตเด•เดณเตเดŸเต† เดŽเดฃเตเดฃเด‚ เด•เตเดฑเดšเตเดšเต), เด•เต‚เดŸเดพเดคเต† เด…เดชเต‚เตผเดตเดฎเดพเดฏ เดชเตเดฐเดคเตเดฏเต‡เด• เดธเดพเดนเดšเดฐเตเดฏเด™เตเด™เดณเดฟเตฝ เด‡เดŸเดชเดพเดŸเตเด•เตพ เดจเดŸเดคเตเดคเตเดฎเตเดชเต‹เตพ (MDBX_PROBLEM เดชเดฟเดถเด•เต เดฑเดฟเดŸเตเดŸเต‡เดฃเดฟเดจเตŠเดชเตเดชเด‚) "เดฒเต‚เดชเตเดชเดฟเด‚เด—เดฟเดฒเต‡เด•เตเด•เต" เดจเดฏเดฟเดšเตเดš เด’เดฐเต เดตเตˆเด•เดฒเตเดฏเดตเตเด‚ เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เดฟ.
  • CMake เดฌเดฟเตฝเดกเต เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเตเด•เดณเดฟเตฝ C23 เดธเตเดฑเตเดฑเดพเตปเดกเต‡เตผเดกเต เด‰เตพเดชเตเดชเต†เดŸเตเดจเตเดจเต.
  • เดœเต‹เดŸเดฟเดฏเดพเด•เตเด•เดฟเดฏ char/wchar_t เดซเด‚เด—เตโ€Œเดทเดจเตเด•เตพเด•เตเด•เดพเดฏเดฟ เดŸเดฟ-เดฎเดพเด•เตเดฐเต‹เด•เตพ เดšเต‡เตผเดคเตเดคเต.
  • C++ API-เดฒเต‡เด•เตเด•เต เดจเต†เดธเตเดฑเตเดฑเดกเต เดฑเตˆเดฑเตเดฑเต เด‡เดŸเดชเดพเดŸเตเด•เตพเด•เตเด•เตเดณเตเดณ เดชเดฟเดจเตเดคเตเดฃ เดšเต‡เตผเดคเตเดคเต.
  • เดธเต†เดฎเดพเตปเตเดฑเดฟเด•เต เดตเต‡เตผเดทเดจเดฟเด‚เด—เต เดธเตเดชเต†เดธเดฟเดซเดฟเด•เตเด•เต‡เดทเตปเตเดฑเต† (โ€œเดธเต†เดฎเดพเตปเตเดฑเดฟเด•เต เดตเต‡เตผเดทเดจเดฟเด‚เด—เต 2โ€) เดฐเดฃเตเดŸเดพเด‚ เดชเดคเดฟเดชเตเดชเดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ เดฎเดพเดฑเตเดฑเด‚ เดชเต‚เตผเดคเตเดคเดฟเดฏเดพเดฏเดฟ, เด•เต‚เดŸเดพเดคเต† เดชเดคเดฟเดชเตเดชเต เดตเดฟเดตเดฐเด™เตเด™เดณเตเดŸเต† เด•เดฏเดฑเตเดฑเตเดฎเดคเดฟ VERSION.json-เดฒเต‡เด•เตเด•เต เด‰เดฑเดชเตเดชเดพเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดคเต.
  • เดฌเดฟเตฝเดกเต เดฑเต€เดชเตเดฐเตŠเดกเตเดฏเต‚เดธเดฟเดฌเดฟเดฒเดฟเดฑเตเดฑเดฟเด•เตเด•เต, SOURCE_DATE_EPOCH เดŽเตปเดตเดฏเต‹เตบเดฎเต†เตปเตเดฑเต เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเดฟเดจเตเดณเตเดณ เดชเดฟเดจเตเดคเตเดฃ เดšเต‡เตผเดคเตเดคเต. MDBX_BUILD_TIMESTAMP เดชเดฟเดจเตเดคเตเดฃ เดจเดฟเดฒเดจเดฟเตผเดคเตเดคเดฟ, เดˆ เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเดฟเดจเต เดฎเตเตปเด—เดฃเดจเดฏเตเดฃเตเดŸเต.
  • MDBX_BUILD_METADATA เด“เดชเตเดทเตป เดตเดดเดฟ libmdbx เดฌเดฟเตฝเดกเดฟเดจเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณ เด•เต‚เดŸเตเดคเตฝ เดตเดฟเดตเดฐเด™เตเด™เตพ เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เดพเดจเตเดณเตเดณ เด•เดดเดฟเดตเต เดšเต‡เตผเดคเตเดคเต. เด‡เดชเตเดชเต‹เตพ เดจเดฟเตผเดฆเตเดฆเดฟเดทเตเดŸ เดตเดฟเดตเดฐเด™เตเด™เตพ เดฒเตˆเดฌเตเดฐเดฑเดฟเดฏเดฟเตฝ mdbx_build.metadata เดฎเต‚เดฒเตเดฏเดฎเดพเดฏเดฟ เด‰เตพเดชเตเดชเต†เดŸเตเดคเตเดคเดฟเดฏเดฟเดŸเตเดŸเตเดฃเตเดŸเต, เดญเดพเดตเดฟเดฏเดฟเตฝ เดชเดพเด•เตเด•เต‡เดœเตเด•เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ เด‡เดคเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด‚.
  • API-เตฝ เดจเดฟเดจเตเดจเต เดฒเดญเดฟเดšเตเดš เดชเดฟเดถเด•เตเด•เดณเตเดŸเต† เดฒเต‹เด—เดฟเด‚เด—เต เดšเต‡เตผเดคเตเดคเต. เด‡เดชเตเดชเต‹เตพ, เด‡เดคเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต, เดฒเต‹เด—เดฟเด‚เด—เต เดฒเต†เดตเตฝ MDBX_LOG_DEBUG (เดฒเต‹เด—เดฟเด‚เด—เต เดชเดฟเดถเด•เตเด•เตพเด•เตเด•เต เดฎเตˆเดจเดธเต MDBX_NOTFOUND) เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ MDBX_LOG_TRACE (เดŽเดฒเตเดฒเดพ เดชเดฟเดถเด•เตเด•เดณเตเด‚ เดฒเต‹เด—เดฟเตป เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต, เด…เดคเตเดชเต‹เดฒเต† MDBX_RESULT_TRUE) เดธเดœเตเดœเดฎเดพเด•เตเด•เดฟเดฏเดพเตฝ เดฎเดคเดฟ.
  • เดชเต†เดฐเตเดฎเดพเดฑเตเดฑ เดฎเดพเดฑเตเดฑเด‚:
    • mdbx::cursor::get_multiple_samelength() เดฐเต€เดคเดฟ เดšเต‡เตผเด•เตเด•เตเด•เดฏเตเด‚ mdbx::txn::put_multiple_samelength() เดŽเดจเตเดจเต เดชเตเดจเตผเดจเดพเดฎเด•เดฐเดฃเด‚ เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดคเต.
    • C++ API เดธเตเดฅเดฟเดฐเดคเดฏเตโ€Œเด•เตเด•เดพเดฏเดฟ, MDBX_GET_MULTIPLE เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚ เด‡เดชเตเดชเต‹เตพ เด•เต€เดฏเตเดŸเต† เดฎเต‚เดฒเตเดฏเดตเตเด‚ เดจเตฝเด•เตเดจเตเดจเต.
    • mdbx::env::เดœเดฟเดฏเต‹เดฎเต†เดŸเตเดฐเดฟ เดตเดฒเตเดชเตเดช เด•เต‹เตบเดธเตเดฑเตเดฑเตปเตเดฑเตเด•เตพเด•เตเด•เต, เด…เดŸเดฟเดธเตเดฅเดพเดจ เดคเดฐเด‚ เดธเตˆเตป เดšเต†เดฏเตเดฏเดพเดคเตเดค size_t เดŽเดจเตเดจเดคเดฟเตฝ เดจเดฟเดจเตเดจเต เดธเตˆเตป เดšเต†เดฏเตเดค intptr_t เดŽเดจเตเดจเดคเดฟเดฒเต‡เด•เตเด•เต เดฎเดพเดฑเตเดฑเดฟ.
    • CRT-เดจเต เดชเด•เดฐเด‚ ntdll เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดคเดฟเดฐเดžเตเดžเต†เดŸเตเดชเตเดชเต C++ API เดตเตเดฏเด•เตเดคเดฎเดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดจเดฐเดนเดฟเดคเดฎเดพเด•เตเด•เตเดฎเตเดชเต‹เตพ เดฎเดพเดคเตเดฐเดฎเดพเดฃเต.
    • mdbx_txn_commit() เดŽเดจเตเดจเดคเดฟเดฒเต‡เด•เตเด•เต เด•เดŸเดจเตเดจเตเดชเต‹เดฏ/เด…เดฌเต‹เตผเดกเต เดšเต†เดฏเตเดค เดฑเต€เดกเต เดŸเตเดฐเดพเตปเดธเดพเด•เตเดทเดจเตเด•เดณเตเดŸเต† เดฎเต†เดฎเตเดฎเดฑเดฟ เดธเตเดตเดคเดจเตเดคเตเดฐเดฎเดพเดฃเต†เดจเตเดจเต เด‰เดฑเดชเตเดชเดพเด•เตเด•เตเดจเตเดจเต. เด…เดคเตเดคเดฐเด‚ เด‡เดŸเดชเดพเดŸเตเด•เตพ mdbx_txn_abort() เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดฑเดฟเดฒเต€เดธเต เดšเต†เดฏเตเดฏเดฃเดฎเต†เดจเตเดจเต API เด•เตบเดตเต†เตปเดทเตป เด†เดตเดถเตเดฏเดชเตเดชเต†เดŸเตเดจเตเดจเต, เด‡เดคเต mdbx_txn_commit() เด…เดคเตเดคเดฐเด‚ เดธเดจเตเดฆเตผเดญเด™เตเด™เดณเดฟเตฝ เด‡เดŸเดชเดพเดŸเตเด•เตพ เดคเดจเตเดจเต† เดจเดฟเตผเดคเตเดคเดฒเดพเด•เตเด•เดพเดคเต† เดคเดจเตเดจเต† เด’เดฐเต เดชเดฟเดถเด•เต เดจเตฝเด•เตเดจเตเดจเดคเดฟเดจเต เด•เดพเดฐเดฃเดฎเดพเด•เตเดจเตเดจเต. เด‡เดคเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เดฌเด—เตเด•เตพ เด•เดพเดฐเดฃเด‚ เดฎเต†เดฎเตเดฎเดฑเดฟ เดฒเต€เด•เตเด•เตเด•เตพเด•เตเด•เต เด•เดพเดฐเดฃเดฎเดพเดฏเดฟ, เด‡เดคเต เดชเต†เดฐเตเดฎเดพเดฑเตเดฑ เดฎเดพเดฑเตเดฑเด™เตเด™เตพเด•เตเด•เต เด•เดพเดฐเดฃเดฎเดพเด•เตเดจเตเดจเต.
    • เดจเดฟเตผเดตเดšเดฟเดšเตเดšเดฟเดŸเตเดŸเตเดฃเตเดŸเต†เด™เตเด•เดฟเตฝ __deprecated_enum เดฎเดพเด•เตเดฐเต‹ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต.
    • CMake เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ, CMAKE_C_STANDARD เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟเดฏเดพเดฃเต C เดญเดพเดทเดพ เดจเดฟเดฒเดตเดพเดฐเด‚ เด‡เดชเตเดชเต‹เตพ เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เตเดจเตเดจเดคเต.

เด…เดตเดฒเด‚เดฌเด‚: opennet.ru

เด’เดฐเต เด…เดญเดฟเดชเตเดฐเดพเดฏเด‚ เดšเต‡เตผเด•เตเด•เตเด•