Lëshimi i bazës së të dhënave të integruar libmdbx 0.13.3

Lëshimi i bibliotekës libmdbx 0.13.3 (MDBX) me implementimin e një baze të dhënash të integruar, kompakte, me performancë të lartë dhe klasë çelës-vlerë. Kodi i libmdbx shpërndahet nën licencën Apache 2.0. Mbështeten të gjitha sistemet operative aktuale dhe arkitekturat, përfshirë edhe Elbrus 2000 nga Rusia. Për libmdbx ofrohet një API i zhvilluar për C++, si dhe lidhje të mbështetura nga entuziastët për gjuhët Rust, Haskell, Python, NodeJS, Ruby, Go, Nim, Deno, Scala.

Historikisht, libmdbx është një rishikim i thellë i DBMS LMDB dhe tejkalon paraardhësin e tij në besueshmëri, gamën e mundësive dhe performancë. Në krahasim me LMDB, në libmdbx përkushtohet një vëmendje e madhe për cilësinë e kodit, funksionimin stabil të API, testimin dhe verifikimet automatike. Ofron një utilitar për verifikimin e integritetit të strukturës së DB me disa mundësi rikorrigjimi. Teknologjikisht, libmdbx ofron ACID, serializim të rreptë të ndryshimeve dhe lexim jo-bllokues me shkallëzim linear sipas bërthamave të CPU. Mbështetet kompaktifikimi automatik, menaxhimi automatik i madhësisë së DB-së, dhe vlerësimi i sasisë së mostrave sipas grupeve (range query estimation).

Ndryshimet kryesore:

  • Dega 0.13.x fitoi statusin e stabilitetit. Ka filluar zhvillimi i deges 0.14.x.
  • NĂ« API-nĂ« C Ă«shtĂ« shtuar funksioni mdbx_cursor_count_ex(), i cili lejon marrjen e numrit tĂ« shumĂ«-vlerave qĂ« korrespondon me çelĂ«sin e tanishĂ«m, si dhe informacionin mbi pemĂ«n nĂ« brendĂ«si qĂ« ruan kĂ«to vlera.
  • NĂ« API-nĂ« C++ Ă«shtĂ« shtuar metoda mdbx::txn::make_broken() e ngjashme me mdbx_txn_break().
  • NĂ« utilitetet mdbx_copy, mdbx_drop, mdbx_dump, mdbx_load, mdbx_stat Ă«shtĂ« realizuar regjistrimi i gabimeve, paralajmĂ«rrimeve dhe mesazheve tĂ« rĂ«ndĂ«sishme nga libmdbx.
  • Ndryshimi i sjelljes:
    • Kur aktivizohet profilimi i mbledhĂ«sit tĂ« mbetjeve (ndĂ«rtime me opsionin MDBX_ENABLE_PROFGC=ON), tani llogariten shpenzimet e kohĂ«s CPU pĂ«r bashkimin e listave tĂ« faqeve, dmth pĂ«r funksionin pnl_merge().
    • NĂ« utilitetin e testimit, vlera e modit tĂ« tĂ« dhĂ«nave Ă«shtĂ« ribĂ«rĂ« me emrin nga data.dups nĂ« data.multi.
    • Kontrolli i gjatĂ«sisĂ« sĂ« çelĂ«sit Ă«shtĂ« pĂ«rmirĂ«suar brenda cursor_seek().
    • NĂ«se pĂ«rdoruesi nuk ka caktuar njĂ« vlerĂ« tĂ« saktĂ« me mdbx_env_set_option(MDBX_opt_txn_dp_limit), bĂ«het njĂ« pĂ«rshtatje e dirty-pages-limit gjatĂ« fillimit tĂ« çdo transaksioni tĂ« shkruar qĂ« nuk Ă«shtĂ« e brendshme, duke u bazuar nĂ« kapacitetin e RAM-it tĂ« disponueshĂ«m dhe madhĂ«sinĂ« e DB.
    • NĂ« modalitetin MDBX_NOSTICKYTHREADS lejohet commit/abort i transaksioneve tĂ« brendshme nga çdo thread/rrjedhĂ«.
    • Kur pĂ«rpiqeni tĂ« nisni transaksione tĂ« ngulitura nĂ« modalitetin MDBX_WRITEMAP, kryhet regjistrimi dhe kthehet gabimi MDBX_INCOMPATIBLE.
    • NĂ« API-nĂ« C++, nĂ« konstruktorĂ«t/inicializuesit dhe metodat qĂ« lidhen me formimin e gjeometrisĂ« sĂ« DB-sĂ«, pĂ«rdoren vetĂ«m vlerat default si parazgjedhje.
    • Brenda mdbx_env_set_geometry() janĂ« pĂ«rmirĂ«suar heuristikĂ«t pĂ«r pĂ«rcaktimin e parametrave tĂ« gjeometrisĂ« sĂ« DB-sĂ« tĂ« kĂ«rkuara nga pĂ«rdoruesi si "default".
  • Rregullimet:
    • ËshtĂ« eliminuar regresi i mosçlirimit tĂ« mutex-it gjatĂ« pĂ«rpjekjes pĂ«r tĂ« mbyllur pĂ«rsĂ«ri njĂ« dbi-deskriptor, duke pĂ«rfshirĂ« pĂ«rpjekjet pĂ«r tĂ« mbyllur qartĂ« deskriptorin pas fshirjes sĂ« tabelĂ«s sĂ« lidhur me tĂ«.
    • ËshtĂ« eliminuar regresi i estado-s pĂ«r kursorin e ngulitur/dupsort pas futjes sĂ« tĂ« dhĂ«nave nĂ« modalitetin MDBX_APPEND.
    • MbĂ«shtetje pĂ«r marrjen e boot_id gjatĂ« funksionimit brenda kontejnerit LXC.
    • ËshtĂ« eliminuar gabimi i trajtimit tĂ« gabuar tĂ« pĂ«rpjekjes pĂ«r tĂ« nisur njĂ« transaksion tĂ« leximit tĂ« ngulitur. Tani nĂ« kĂ«to situata kthehet gabimi MDBX_EINVAL, pasi ngulĂ«sia mbĂ«shtetet vetĂ«m pĂ«r transaksionet e leximit-shkrimit.
    • ËshtĂ« eliminuar regresi SIGSEGV i aksesit nĂ« adresĂ« tĂ« null gjatĂ« funksionimit nĂ« modalitetin vetĂ«m pĂ«r lexim pa pĂ«rdorimin e skedarit LCK, pĂ«r shembull kur vendosni DB-nĂ« nĂ« njĂ« medium qĂ« Ă«shtĂ« vetĂ«m pĂ«r lexim.

Burimi: opennet.ru

Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« đŸ”„ Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« | ProHoster