Tukunga o DBMS libmdbx 0.11.7. Te neke whanaketanga ki GitFlic i muri i te aukati i a GitHub

I tukuna te whare pukapuka libmdbx 0.11.7 (MDBX) me te whakatinanatanga o te putunga uara-uara-uara-nui kua whakauruhia. Kua raihanatia te waehere libmdbx i raro i te Raihana Tūmatanui OpenLDAP. Ka tautokohia nga punaha whakahaere me nga hoahoanga o naianei, me te Russian Elbrus 2000.

He mea rongonui te tukunga mo te hekenga o te kaupapa ki te ratonga GitFlic i muri mai i te Paenga-raa 15, 2022, te whakahaere a GitHub, kaore he whakatupato, he whakamaarama ranei, i mukua te libmdbx me te maha o etahi atu kaupapa, i te wa ano ka aukati i te uru ki nga kaiwhakawhanake maha e hono ana. nga kamupene kei raro i nga whiu a te US. Mai i te tirohanga a nga kaiwhakamahi, ka huri ohorere nga wharangi katoa, te putunga me nga marau o te kaupapa ki te wharangi 404, kaore e taea te korero me te rapu i nga take.

Heoi ano, tata katoa nga take, he maha nga patai me nga whakautu taipitopito, me te maha o nga korerorero, kua ngaro. Ko te ngaronga o enei korero ko te kino noa iho i tukuna e te whakahaere a GitHub ki te kaupapa. Ko etahi kape o nga korerorero kei te waatea tonu ki archive.org.

Ko te ngaronga o nga ahuatanga CI me nga hanganga hanga-ake (e waatea ana mo nga kaupapa OpenSource mo te kore utu) i akiakihia matou ki te whakatikatika, te whakakotahi me te whakakore i nga nama hangarau iti. Inaianei kua whakahokia mai a CI ki te rite tonu, haunga te hanga me te whakahaere i nga whakamatautau mo nga momo BSD me Solaris katoa. I te nuinga o nga wa, i muri i nga mahi, kaore a GitHub i whiwhi i nga whakamaramatanga me nga whakamohiotanga, haunga nga whakamaharatanga mo te hiahia mo te utu me te ngana ki te tuhi moni.

Mai i nga korero whakamutunga mo te tukunga o te libmdbx v0.11.3, i tua atu i te whakaora mai i nga mahi a GitHub, he mea tika kia kite i nga whakapainga me nga whakatikatika e whai ake nei:

  • I taapirihia he otinga mo te paanga koretake/he hapa i kitea i roto i te wharangi whakakotahi me te keteroki parepare i roto i te pata Linux. I roto i nga punaha e hono pono ana te wharangi me nga keteroki buffer, karekau he take mo te kernel e moumou mahara ana mo nga kape raraunga e rua i te wa e tuhi ana ki te konae kua mapihia ki te mahara. Na reira, ka kitea nga raraunga e tuhia ana ma te mapi mahara i mua i te whakaotinga o te tuhi() waea punaha, ahakoa kaore ano kia tuhia nga raraunga ki te kopae.

    I te nuinga o te waa, ko etahi atu whanonga kaore i te tika, na te mea me te hanumi whakaroa, me whiwhi raka mo nga rarangi wharangi, kape raraunga, whakatika PTE ranei. No reira, kua mana te ture honohono kore korero mai i te tau 1989, i te putanga mai o te keteroki parepare whakakotahi i roto i te SRV4. Na reira, ko te kite i nga tukinga ke i roto i te utaina o te libmdbx i nga ahuatanga whakangao me nui te mahi. Tuatahi ki te whakaputa i te raru, katahi ka manatoko i nga whakapae me nga whakapainga whakamatautau.

    Inaianei ka maia taatau ki te kii kua tino mohiohia te raru, kua whakatauhia, kua tino whakakorehia, ahakoa te uaua me te motuhake o te ahuatanga whakaputa uri. I tua atu, i whakapumautia te mahi o te miihini whakawhiti e tetahi o nga kaiwhakawhanake o Erigon (Ethereum); i roto i tana keehi, i runga i te hanga patuiro, i puta mai te whakamarumaru hei reanga na te koretake o te haki.

    Me tohuhia i roto i te horopaki o te whanuitanga o te whakamahi libmdbx i roto i nga kaupapa whakangao, ko te whakarite i te mahi pono he mea tino nui ake i te whakaaro mena he pepeha, he ahuatanga ranei, me te mea ka taea te whakawhirinaki ki taua hononga, he iti ake te rapu mo te nga take o te koretake i roto i te kernel Linux. Na reira, i konei e korero ana matou mo te whakatika i tetahi take kua pa ki nga kaiwhakamahi.

  • Ko te whakahekenga o te hapa EXDEV (Cross-device hono) i te wa e wera ana te kape i tetahi papaarangi me te kore e whakakotahi ki tetahi atu punaha konae, ma te API me te whaipainga mdbx_copy, kua whakakorehia.
  • I whakatinanahia e Kris Zyp te tautoko libmdbx i Deno. I hangaia e Kai Wetlesen te kete RPM mo Fedora. I whakatinanahia e David Bouyssie nga here mo Scala.
  • Tukatuka whakatika o te uara kua tohua e te whiringa MDBX_opt_rp_augment_limit i te wa e tukatuka ana i nga whakawhitinga nui i roto i nga papaa raraunga nui. I mua, na te hapa, ka taea te mahi i nga mahi kore, i etahi wa ka pa ki nga mahi i roto i nga mahi Ethereum (Erigon / Akula / Silkworm) me nga kaupapa Binance Chain.
  • He maha nga hapa kua whakatikahia, tae atu ki te C++ API. Kua whakatikahia nga take hanga maha i roto i nga whirihoranga onge me te kee. He rarangi katoa o nga whakapainga nui katoa e waatea ana i ChangeLog.
  • He 185 nga huringa i mahia ki nga konae 89, ≈3300 rarangi i taapiri, ≈4100 i mukua. He maha nga mea i tangohia na te horoi o nga konae hangarau koretake e hono ana ki a GitHub me nga ratonga whakawhirinaki.

I nga wa o mua, ko te libmdbx he mahi hou o te LMDB DBMS, he pai ake i tona tupuna i roto i te pono, te huinga waahanga me te mahi. Ka whakatauritea ki te LMDB, he nui te aro o libmdbx ki te kounga o te waehere, te pumau o te API, te whakamatautau, me nga arowhai aunoa. Ka tukuna he taputapu hei tirotiro i te tika o te hanganga papaa raraunga me etahi kaha whakaora.

Ma te hangarau-hangarau, ka tuku a libmdbx i te ACID, te huringa huringa kaha, me nga panui kore-aukati me te tauine raina puta noa i nga papa CPU. Ka tautokohia te whakakoi-aunoa, te whakahaere rahinga raraunga aunoa, me te whakatau tata patai awhe. Mai i te tau 2016, kua putea te kaupapa e Positive Technologies, kua whakamahia ki ona hua mai i te tau 2017.

Kei te tuku a libmdbx i tetahi API C++ kua whakawhanakehia, me nga here e tautokohia ana e te hunga hihiri ki nga reo Rust, Haskell, Python, NodeJS, Ruby, Go, Nim, Deno, Scala.

Source: opennet.ru

Tāpiri i te kōrero