Megjelent a libmdbx 0.13.6 beágyazott DBMS verziója

Megjelent a libmdbx 0.13.6 (MDBX) könyvtár kiadása, amely egy nagy teljesítményű, kompakt, beágyazott kulcs-érték adatbázist valósít meg. A libmdbx kódja az Apache 2.0 licenc alatt érhető el. Minden aktuális operációs rendszert és architektúrát támogat, beleértve az orosz Elbrus 2000-et is. A libmdbx-hez egy fejlett API érhető el C++-ban, és támogatóként elérhetők a Rust, Haskell, Python, NodeJS, Ruby, Go, Nim, Deno, Scala nyelvekhez készült kötések is. A libmdbx-et használó projektek közé tartozik az Isar, Erigon és Reth, valamint a StarkWare és a Positive Technologies fejlesztései is.

Történelmileg a libmdbx a LMDB adatbázis-kezelő mélyreható átírása, amely megbízhatóságban, funkciókészletben és teljesítményben felülmúlja elődjét. A LMDB-hez képest a libmdbx-ben nagy figyelmet fordítanak a kód minőségére, az API megbízható működésére, a tesztelésre és az automatikus ellenőrzésekre. A csomag részeként rendelkezésre áll egy integritásellenőrző eszköz az adatbázis struktúrájának, bizonyos helyreállítási lehetőségekkel. Technológiailag a libmdbx ACID-t, szigorú módosítási sorosítást és nem blokkoló olvasást kínál, lineáris CPU magokra történő skálázással. Támogatja az automatikus tömörítést, az adatbázis méretének automatikus kezelését és a tartományalapú lekérdezések volumeneinek becslését.

Főbb változások:

  • Viselkedésváltozás: Ha nem lehetséges a kurzor leválasztása a jelenlegi tranzakciótól, a mdbx_cursor_bind() függvény mostantól MDBX_EINVAL-t ad vissza MDBX_BAD_TXN helyett.
  • A potenciális problémák elkerülése érdekében a copy_file_range() használatát letiltották a Linux 5.3 — 5.18 kernleken.
  • Az std::invalid_argument dobása mostantól kifejezett MDBX_EINVAL üzenetet generál.
  • Javítva lett a regresszió, amely a kurzorok használatakor jelentkezett DBI=0 (ismertebb nevén GC/FreeDB) olvasó tranzakciókban.
  • Kijavították az EAGAIN hibát, amely a DB másolása során jelentkezett NFS és CIFS/SMB rendszeren.
  • API fejlesztések során a másolási funkcióban beillesztették a fájlzár megszerzését az fcntl() és flock() által. Azonban a helyi kernel verziójától, a távoli NFS verziójától és a csatlakozási beállításoktól függően ez POSIX EAGAIN (11 a legtöbb platformon, beleértve a Linuxot) hibákhoz vezethetett. a szerver Kijavították a merge/rebase hibát a mdbx_txn_release_all_cursors_ex() belsejében, amely váratlan MDBX_EBADSIGN errorokhoz és memória szivárgásokhoz vezethetett.
  • Javítva lett az assert ellenőrzés a beágyazott tranzakciók befejezési útvonalán.
  • Megszűnt a váratlan MDBX_BUSY hiba visszatérésének lehetősége a mdbx_txn_lock(dont_wait=false) függvényből.
  • A GCC 15.x-nek való kompatibilitás érdekében C23 módban megváltozott a funkciók attribútumainak megadásának sorrendje.
  • Megjelent a libmdbx 0.13.6 (MDBX) könyvtár kiadása, amely egy nagy teljesítményű, kompakt, beágyazott kulcs-érték adatbázist valósít meg. A libmdbx kódja az Apache 2.0 licenc alatt érhető el.

Forrás: opennet.ru

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster