libmdbx 0.10.4 hainbat hobekuntza eta akats konponketekin dator

-Ren kaleratzea 0.10.4 bertsioa liburutegiak "Libmdbx" guztira, 160 fitxategitan 57 aldaketa baino gehiago, ~ 5000 lerro gehitu eta ~ 2500 kendu. Libmdbx ezagutzen ez dutenentzat, jakin beharko zenuke gako-balio klaseko datu base trinko eta errendimendu handiko kapsulatutako datu base trinko baten inplementazioa diren liburutegi multzoa dela.

historikoki libmdbx LMDB SGBDen berrelaborazio sakona da eta aurrekoak fidagarritasuna, ezaugarri multzoa eta errendimendua gainditzen ditu. LMDB-rekin alderatuta, libmdbx-k azpimarratzen du kodearen kalitatea, APIen egonkortasuna, probak eta egiaztapen automatizatuak. Berreskuratzeko aukera batzuekin datu-basearen egituraren osotasuna egiaztatzeko erabilgarritasuna eskaintzen da.

Teknologikoki, libmdbx-k azidoa eskaintzen du, aldaketa zorrotz serializatzea eta blokeatzen ez diren irakurketak nukleoen eskala linealarekin CPU-rena. Trinkotze automatikoa, datu basearen tamaina kontrol automatikoa eta sailkapen kontsulten estimazioa onartzen ditu. 2016az geroztik, proiektuak Positive Technologies-ek finantzatu ditu eta 2017an beren produktuetan erabiltzen dira.

Libmdbx-rentzat, C ++ APIa eskaintzen da, baita Rust, Haskell, Python, NodeJS, Ruby, Go, Nim zaleekin bateragarriak diren loturak ere. Libfpta-rako, C / C ++ goiburuko fitxategi formako APIaren deskribapena soilik dago publikoki eskuragarri.

Linux, Windows, MacOS, Android, iOS, FreeBSD, DragonFly, Solaris, OpenSolaris, OpenIndiana, NetBSD, OpenBSD eta beste sistema bateragarri batzuk onartzeaz gain. POSIX.1-2008.

Libmdbx 0.10.4-ren ezaugarri berri nagusiak

Libmdbx 0.10.4 bertsio berri honetan garatzaileek eraikuntza erreproduzigarrietarako gaitasuna eskaini ahal izateko lan egin zuten, Gainera, probak hobetu dira eta test script-ak zabaldu dira datu basearen orrialde zuhaitzaren eta GC edukiaren egoera ez isomorfo guztiak lortzeko.

C ++ APIan behin "noexcept" behin konponduta, "kurtsorea :: erase ()" metodoaren gainkarga gehigarria gehitu da, bufferren inplementazioa "std :: string" erabiliz lerrokatzea ziurtatzeko arintzen da (unekoa CLANG libstdc ++-rentzat)

Horrez gain, hori ere nabarmentzen da faseko egiaztapena egin zen egiaztapen sorta bat gehituta datu basean nahita kaltetuta egonkortasuna bermatzeko.

Bestalde, nabarmentzen da LTOrako beharrezkoak diren konpilagailuen osagaien bilaketa (link time optimization) hobetu dela CMake scriptetan, horrez gain, aldi bereko irakurle kopurua 32.767raino igo dela eta errendimenduak ere hobetu da Valgrind eta AddressSanitizer erabiltzean.

Akatsen konponketari dagokionez bertsio berri honetan egin zirenak, honako hauek aipatzen dira:

  • Akats bat konpondu da, oso egoera arraroetan, transakzio bat burutzerakoan begizta / kraskadura gerta zitekeen. Teknologia Positiboetako espezialistek identifikatu zuten arazoa beren produktuen barne probetan.
  • Orrialde zikinen isurketen algoritmoaren erregresioa konpondu da (datu-base aldatutako orrialdeen desalojo selektiboa) MDBX_PROBLEM ustekabeko errore arraroan agertzen da transakzio handietan datuak aldatzean.
  • Konpondu gabeko zehaztugabeakBehaviorSanitizer eta Coverity Scan arazo txikiak.
    Liburutegiko bertsio zaharragoek sortutako datu-baseko irudien barruan habiatutako orrietan "P_DIRTY" egiaztatzen zuen zaharkitutako eta erabili gabeko barne bandera konpondu zen.
  • Windows-en SRW blokeoaren erabilera errekurtsiboa konpondu da MDBX_NOTLS moduan lan egitean (hari biltegiratze lokala erabili gabe), bootid sorkuntza finkoa sistemaren denbora aldatzean, WSL1 eta WSL2 detekzioa hobetu da. Plan 9 datu basea irekitzeko aukera gehitu da DrvFS.

Bukatzeko horri buruz gehiago jakiteko interesa baduzu bertsio berri honi buruz, xehetasunak kontsultatu ditzakezu Hurrengo estekan.


Artikuluaren edukia gure printzipioekin bat dator etika editoriala. Akats baten berri emateko egin klik hemen.

Idatzi lehenengo iruzkina

Utzi zure iruzkina

Zure helbide elektronikoa ez da argitaratuko. Beharrezko eremuak markatuta daude *

*

*

  1. Datuen arduraduna: Miguel Ángel Gatón
  2. Datuen xedea: SPAM kontrolatzea, iruzkinen kudeaketa.
  3. Legitimazioa: Zure baimena
  4. Datuen komunikazioa: datuak ez zaizkie hirugarrenei jakinaraziko legezko betebeharrez izan ezik.
  5. Datuak biltegiratzea: Occentus Networks-ek (EB) ostatatutako datu-basea
  6. Eskubideak: Edonoiz zure informazioa mugatu, berreskuratu eta ezabatu dezakezu.