Byla vydána knihovna libmdbx 0.13.10 (MDBX), která implementuje vysoce výkonnou, kompaktní, vestavěnou databázi klíč-hodnota. Kód libmdbx je distribuován pod licencí Apache 2.0 License. Podporovány jsou všechny současné operační systémy a architektury, stejně jako ruský Elbrus 2000. Pro libmdbx je nabízeno pokročilé API pro C++ a také nadšenci podporované vazby na jazyky Rust, Haskell, Python, NodeJS, Ruby, Go, Nim, Deno, Scala. Projekty, které používají libmdbx, zahrnují Isar, Erigon a Reth, stejně jako vývoj od StarkWare a Positive Technologies.
Historicky je libmdbx hlubokým přepracováním LMDB DBMS a překonává svého předka ve spolehlivosti, sadě funkcí a výkonu. Ve srovnání s LMDB klade libmdbx velký důraz na kvalitu kódu, stabilitu API, testování a automatické kontroly. Je dodáván obslužný program pro kontrolu integrity struktury databáze s některými možnostmi obnovy. Technologicky nabízí libmdbx ACID, silnou serializaci změn a neblokující čtení s lineárním škálováním napříč jádry CPU. Je podporováno automatické zhutňování, automatická správa velikosti databáze a odhad dotazů na rozsah.
V prosinci 2025 byl hlavní repozitář projektu migrován z GitFlic do SourceCraft. Jako důvody byly uvedeny stížnosti od rusky nemluvících uživatelů a nevyřešené chyby v editoru Markdown, které nebyly vyřešeny více než tři roky. Zrcadlo projektu na Githubu bylo údajně také vypnuto, ale repozitář byl později obnoven s vysvětlením, že tak bylo učiněno na žádost vývojářů v Číně a Brazílii, stejně jako platformy Tempo, která používá libmdbx.
Klíčové změny od předchozí zprávy z 1. srpna:
- Podpora starších jader byla obnovena. Linux, počínaje verzí 3.16.
- Je zajištěna podpora mobilního operačního systému Harmony.
- Chyba „MDBX_WANNA_RECOVERY“ při otevírání databáze v režimu pouze pro čtení je nyní vrácena, pokud velikost databáze není násobkem velikosti systémové stránky, ale hodnoty, které nejsou násobky velikosti bloku alokace virtuální paměti, jsou ignorovány.
- Opravena možnost neočekávaného zobrazení chyby „SIGBUS“ v důsledku líné alokace prostoru jádrem operačního systému v plném souborovém systému po narůstání souboru databáze.
- Opravena kontrola aserce v cestě skenování bitmapy deskriptoru DBI, která způsobovala vzácné pády v 32bitových ladicích sestaveních.
- pro Android Byl implementován manévr, který snižuje pravděpodobnost systémové chyby „EAGAIN“, ke které dochází v důsledku nedostatku systémových prostředků a přechodných procesů při zavírání a rychlém opětovném otevření databáze.
- pro Linux Přidána prevence chyby v implementaci fast_commit souborového systému Ext4.
- Opravena chyba v automatické úpravě parametrů při instalaci geometrie se zadanou minimální velikostí stránky, která mohla způsobit zvětšení velikosti stránky na počítačích s velkým množstvím paměti RAM.
- Implementace bufferů byla přepracována a v C++ API byla provedena další vylepšení.
Za zmínku také stojí oznámení zprávy „libmdbx: Plán, úspěchy, cíle a překážky“ na akci Ethereum Day, která se bude konat 23. prosince v Moskvě.
Zdroj: opennet.ru
