Byla vydána verze knihovny libmdbx 0.13.10 (MDBX) s implementací vysoce výkonné kompaktní embedded databáze typu key-value. Kód libmdbx je šířen pod licencí Apache 2.0. Podporovány jsou všechny aktuální operační systémy a architektury, stejně jako ruský Elbrus 2000. Pro libmdbx je k dispozici vyspělé API pro C++, jakož i podporované nadšenci vazby na jazyky Rust, Haskell, Python, NodeJS, Ruby, Go, Nim, Deno, Scala. Z projektů, které používají libmdbx, lze zmínit Isar, Erigon a Reth, stejně jako vývoj od firem StarkWare a Positive Technologies.
Historicky je libmdbx hlubokou přepracováním databázového systému LMDB a překonává svého předchůdce v spolehlivosti, sadě funkcí a výkonu. Ve srovnání s LMDB věnuje libmdbx velkou pozornost kvalitě kódu, stabilnímu fungování API, testování a automatickým kontrolám. Dodává se nástroj pro kontrolu integrity struktury databáze s některými možnostmi obnovení. Technologicky libmdbx nabízí ACID, přísnou serializaci změn a neblokující čtení s lineárním škálováním podle CPU jader. Podporováno je automatické zhuštění, automatické řízení velikosti databáze, odhad objemu dotazů podle rozsahu (range query estimation).
V prosinci 2025 byl hlavní repozitář projektu přesunut z GitFlic na SourceCraft. Jako důvod byly uvedeny stížnosti ne-ruských uživatelů a chyby v Markdown editoru, které nebyly opraveny více než tři roky. Také bylo hlášeno o uzavření zrcadla projektu na Githubu, ale později byl repozitář obnoven s vysvětlením, že tak učinili na žádost vývojářů z Číny a Brazílie, a také platformy Tempo, která používá libmdbx.
Hlavní změny od předchozí zprávy z 1. srpna:
- Byla obnovena podpora pro stará jádra Linuxu, počínaje verzí 3.16.
- Byla zajištěna podpora mobilního operačního systému Harmony.
- Chyba „MDBX_WANNA_RECOVERY“ při otevření databáze v režimu pouze pro čtení se nyní vrací, pokud velikost databáze není násobkem velikosti systémové stránky, ale ignoruje se, pokud není násobkem velikosti bloku virtuální paměti.
- Byla odstraněna možnost nečekané „SIGBUS“ způsobené odloženým/líným přidělováním jádrem OS místa v zaplněném souborovém systému po zvětšení databázového souboru.
- Opraveno assert-ověření v cestě skenování bitmapy DBI-deskriptorů, které vedlo k občasným pádům 32bitových ladicích sestavení.
- Pro Android byl implementován manévr, který snižuje pravděpodobnost systémové chyby „EAGAIN“, jež vzniká z důvodu nedostatku systémových zdrojů a přechodných procesů při uzavírání a rychlém opětovném otevírání databáze.
- Pro Linux bylo přidáno zabránění výskytu chyby v implementaci fast_commit souborového systému Ext4.
- Opraven nedostatek automatického přizpůsobení parametrů při nastavování geometrie se zadanou minimální velikostí stránky, kvůli kterému se na strojích s velkým množstvím RAM mohla velikost stránky zvyšovat.
- Přepracována implementace vyrovnávacích pamětí a provedena další vylepšení v C++ API.
Dále je třeba zmínit oznámení prezentace „libmdbx: Roadmap, úspěchy, cíle a překážky“ na akci Ethereum Day, která se bude konat 23. prosince v Moskvě.
Zdroj: opennet.ru
