DBMS libmdbx இன் வெளியீடு 0.11.7. GitHub இல் லாக்டவுனுக்குப் பிறகு வளர்ச்சியை GitFlicக்கு நகர்த்தவும்

libmdbx 0.11.7 (MDBX) நூலகம் உயர் செயல்திறன் கொண்ட கச்சிதமான உட்பொதிக்கப்பட்ட விசை மதிப்பு தரவுத்தளத்தின் செயலாக்கத்துடன் வெளியிடப்பட்டது. libmdbx குறியீடு OpenLDAP பொது உரிமத்தின் கீழ் விநியோகிக்கப்படுகிறது. தற்போதைய அனைத்து இயக்க முறைமைகள் மற்றும் கட்டமைப்புகள் ஆதரிக்கப்படுகின்றன, அத்துடன் ரஷ்ய எல்ப்ரஸ் 2000.

ஏப்ரல் 15, 2022 அன்று எந்த எச்சரிக்கையும் விளக்கமும் இல்லாமல் GitHub நிர்வாகம் libmdbx உடன் பிற திட்டப்பணிகளை அகற்றிய பிறகு, GitFlic சேவைக்கு திட்டம் இடம்பெயர்ந்ததில் இந்த வெளியீடு குறிப்பிடத்தக்கது, அதே நேரத்தில் வீழ்ச்சியடைந்த நிறுவனங்களுடன் தொடர்புடைய பல டெவலப்பர்களுக்கான அணுகலைத் தடுக்கிறது. அமெரிக்க தடைகளின் கீழ். பயனரின் பார்வையில், திட்டத்தின் அனைத்து பக்கங்களும், களஞ்சியமும் மற்றும் ஃபோர்க்குகளும் திடீரென்று "404" பக்கமாக மாறியது, எந்த தொடர்பும் மற்றும் காரணங்களைக் கண்டறியும் சாத்தியம் இல்லாமல்.

துரதிர்ஷ்டவசமாக, கிட்டத்தட்ட எல்லா சிக்கல்களும் தொலைந்துவிட்டன, இதில் விரிவான பதில்களுடன் பல கேள்விகள் மற்றும் நிறைய விவாதங்கள் இருந்தன. இந்தத் தகவலின் இழப்பு மட்டுமே கிட்ஹப் நிர்வாகம் திட்டத்தில் ஏற்படுத்த முடிந்த ஒரே புறநிலை சேதமாகும். விவாதங்களின் பகுதி நகல்கள் archive.org காப்பகத்தில் உள்ளன.

உள்ளமைக்கப்பட்ட CI ஸ்கிரிப்டுகள் மற்றும் உள்கட்டமைப்பின் இழப்பு (OpenSource திட்டங்களுக்கு இலவசமாகக் கிடைக்கிறது) சிறிய தொழில்நுட்பக் கடனைத் திருத்துதல், ஒருங்கிணைத்தல் மற்றும் நீக்குதல் ஆகியவற்றைச் செய்ய எங்களை கட்டாயப்படுத்தியது. அனைத்து பிஎஸ்டி மற்றும் சோலாரிஸ் வகைகளுக்கான உருவாக்கங்கள் மற்றும் சோதனை ஓட்டங்களைத் தவிர்த்து, இப்போது CI கிட்டத்தட்ட அதே அளவிற்கு மீட்டமைக்கப்பட்டுள்ளது. GitHub இன் செயல்களுக்குப் பிறகு, பணம் செலுத்த வேண்டியதன் அவசியத்தை நினைவூட்டல் மற்றும் பணத்தைத் தள்ளுபடி செய்வதற்கான முயற்சிகளைத் தவிர, எந்த விளக்கங்களும் அல்லது அறிவிப்புகளும் பெறப்படவில்லை.

Libmdbx v0.11.3 வெளியீட்டைப் பற்றிய கடைசிச் செய்தியிலிருந்து, GitHub செயல்களில் இருந்து மீள்வதுடன், பின்வரும் மேம்பாடுகள் மற்றும் திருத்தங்கள் கவனிக்கத்தக்கவை:

  • ஒருங்கிணைந்த பக்கம் மற்றும் லினக்ஸ் கர்னலில் இடையக கேச் ஆகியவற்றில் கண்டறியப்பட்ட ஒத்திசைவின்மை விளைவு/குறைபாட்டிற்கான தீர்வு சேர்க்கப்பட்டது. பக்கம் மற்றும் இடையக தேக்ககங்கள் உண்மையிலேயே ஒருங்கிணைக்கப்பட்ட கணினிகளில், ஏற்கனவே நினைவக-மேப் செய்யப்பட்ட கோப்பில் எழுதும் போது கர்னல் இரண்டு தரவு நகல்களில் நினைவகத்தை வீணாக்குவதில் அர்த்தமில்லை. எனவே, தரவு இன்னும் வட்டில் எழுதப்படாவிட்டாலும், எழுதும்() கணினி அழைப்பு முடிவடைவதற்குள், எழுதப்படும் தரவு நினைவக மேப்பிங் மூலம் தெரியும்.

    மொத்தத்தில், பிற நடத்தை பகுத்தறிவு அல்ல, ஏனெனில் தாமதமான இணைப்புடன், நீங்கள் இன்னும் பக்க பட்டியல்களுக்கான பூட்டுகளைப் பிடிக்க வேண்டும், தரவை நகலெடுக்க வேண்டும் அல்லது PTE ஐ சரிசெய்ய வேண்டும். எனவே, SRV1989 இல் ஒருங்கிணைக்கப்பட்ட இடையக கேச் தோன்றிய 4 ஆம் ஆண்டு முதல் ஒத்திசைவின் பேசப்படாத விதி நடைமுறையில் உள்ளது. எனவே, பிஸியான libmdbx தயாரிப்பு காட்சிகளில் விசித்திரமான தோல்விகளைக் கண்டறிவதற்கு நிறைய வேலை தேவைப்பட்டது. முதலில், சிக்கலை மீண்டும் உருவாக்குவதன் மூலம், பின்னர் கருதுகோள்களைச் சரிபார்த்து, மேம்பாடுகளைச் சரிபார்ப்பதன் மூலம்.

    பிளேபேக் காட்சியின் சிக்கலான தன்மை மற்றும் தனித்தன்மை இருந்தபோதிலும், சிக்கல் நம்பகத்தன்மையுடன் அடையாளம் காணப்பட்டது, உள்ளூர்மயமாக்கப்பட்டது மற்றும் நம்பத்தகுந்த முறையில் அகற்றப்பட்டது என்று இப்போது நாம் நம்பிக்கையுடன் கூறலாம். கூடுதலாக, பைபாஸ் பொறிமுறையின் பணியானது எரிகானின் (Ethereum) டெவலப்பர்களில் ஒருவரால் உறுதிப்படுத்தப்பட்டது, அவரது விஷயத்தில், பிழைத்திருத்த கட்டமைப்பில், கூடுதல் உறுதியான சரிபார்ப்பு காரணமாக பாதுகாப்பு பின்னடைவாகத் தூண்டப்பட்டது.

    பணிபுரியும் திட்டங்களில் libmdbx இன் பரவலான பயன்பாட்டின் பின்னணியில், நம்பகமான செயல்பாட்டை உறுதிப்படுத்துவது அடிப்படையில் மிகவும் முக்கியமானது, மேலும் "இது ஒரு பிழை அல்லது அம்சமா" என்பதைக் கண்டறியாமல், அத்தகைய ஒத்திசைவை நம்ப முடியுமா என்பதை கவனத்தில் கொள்ள வேண்டும். , குறிப்பாக லினக்ஸ் கர்னலில் உள்ள பொருத்தமின்மைக்கான காரணங்களைத் தேடவில்லை. எனவே, பயனர்களைப் பாதிக்கக்கூடிய சிக்கலைச் சரிசெய்வது பற்றி இங்கே பேசுகிறோம்.

  • EXDEV (குறுக்கு-சாதன இணைப்பு) பிழையின் பின்னடைவு சரி செய்யப்பட்டது, API மூலம் மற்றும் mdbx_copy பயன்பாட்டைப் பயன்படுத்தி மற்றொரு கோப்பு முறைமைக்கு சுருக்கப்படாமல் ஒரு தரவுத்தளத்தை நகலெடுக்கும் போது.
  • கிரிஸ் ஜிப் டெனோவில் libmdbx க்கான ஆதரவை செயல்படுத்தியுள்ளது. Kai Wetlesen Fedora க்கான RPMகளை தொகுத்துள்ளார். டேவிட் Bouyssié ஸ்காலாவுக்கான பிணைப்புகளை செயல்படுத்தினார்.
  • பெரிய தரவுத்தளங்களில் பெரிய பரிவர்த்தனைகளைச் செயலாக்கும்போது MDBX_opt_rp_augment_limit விருப்பத்தால் அமைக்கப்பட்ட மதிப்பின் நிலையான கையாளுதல். முன்பு, ஒரு பிழை காரணமாக, தேவையற்ற செயல்கள் செய்யப்படலாம், இது சில நேரங்களில் Ethereum செயலாக்கங்கள் (Erigon/Akula/Silkworm) மற்றும் Binance Chain திட்டங்களில் செயல்திறனை பாதித்தது.
  • C++ API இல் உள்ளவை உட்பட பல பிழைகள் சரி செய்யப்பட்டுள்ளன. அரிய மற்றும் கவர்ச்சியான உள்ளமைவுகளில் பல உருவாக்க சிக்கல்கள் சரி செய்யப்பட்டன. அனைத்து குறிப்பிடத்தக்க மேம்பாடுகளின் முழுமையான பட்டியல் ChangeLog இல் கிடைக்கிறது.
  • 185 கோப்புகளில் மொத்தம் 89 மாற்றங்கள் செய்யப்பட்டன, ≈3300 வரிகள் சேர்க்கப்பட்டன, ≈4100 நீக்கப்பட்டன. GitHub மற்றும் சார்ந்த சேவைகளுடன் தொடர்புடைய ஏற்கனவே பயனற்ற தொழில்நுட்பக் கோப்புகளை நீக்கியதன் காரணமாக பெரும்பாலும் அகற்றப்பட்டது.

வரலாற்று ரீதியாக, libmdbx என்பது LMDB DBMS இன் ஆழமான மறுவடிவமைப்பு மற்றும் நம்பகத்தன்மை, அம்ச தொகுப்பு மற்றும் செயல்திறன் ஆகியவற்றின் அடிப்படையில் அதன் முன்னோடியை மிஞ்சும். LMDB உடன் ஒப்பிடும்போது, ​​libmdbx குறியீடு தரம், API நிலைத்தன்மை, சோதனை மற்றும் தானியங்கு சோதனைகள் ஆகியவற்றிற்கு அதிக முக்கியத்துவம் கொடுக்கிறது. தரவுத்தள கட்டமைப்பின் ஒருமைப்பாட்டை சரிபார்க்க ஒரு பயன்பாடு சில மீட்பு விருப்பங்களுடன் வழங்கப்படுகிறது.

தொழில்நுட்ப ரீதியாக, libmdbx ஆனது ACID, கண்டிப்பான மாற்றத் வரிசைப்படுத்தல் மற்றும் CPU கோர்கள் முழுவதும் லீனியர் ஸ்கேலிங் மூலம் தடுக்காத வாசிப்புகளை வழங்குகிறது. தன்னியக்கச் சுருக்கம், தானியங்கி தரவுத்தள அளவு மேலாண்மை மற்றும் வரம்பு வினவல் மதிப்பீடு ஆகியவை ஆதரிக்கப்படுகின்றன. 2016 முதல், இந்தத் திட்டம் பாசிட்டிவ் டெக்னாலஜிஸ் மூலம் நிதியளிக்கப்பட்டு 2017 முதல் அதன் தயாரிப்புகளில் பயன்படுத்தப்படுகிறது.

libmdbx ஆனது ஒரு வளர்ந்த C++ API மற்றும் ரஸ்ட், ஹாஸ்கெல், பைதான், நோட்ஜேஎஸ், ரூபி, கோ, நிம், டெனோ, ஸ்கலா ஆகியவற்றிற்கான ஆர்வலர்-ஆதரவு பிணைப்புகளை வழங்குகிறது.

ஆதாரம்: opennet.ru

கருத்தைச் சேர்