I-Kent Overstreet ishicilele uhlelo lwefayela lwe-Bcachefs 1.33.0. Lokhu kukhishwa kufaka phakathi amaphakheji amabili: i-bcachefs-kernel-dkms, equkethe imodyuli ye-kernel eyakhiwe kusetshenziswa uhlelo lwe-Dynamic Kernel Module Support (DKMS), kanye ne-bcachefs-tools, equkethe utility ye-bcachefs yesikhala somsebenzisi, esebenzisa imiyalo yokudala (mkfs), ukufaka, ukubuyisela, kanye nokuqinisekisa uhlelo lwefayela. Amaphakheji ahlanganiswe ukuze Debian, Ubuntu, i-Fedora, i-openSUSE, i-NixOS kanye ne-Arch LinuxImojula ye-DKMS isekela ukusebenza ngama-kernel Linux, kusukela ngo-6.16.
Inguqulo entsha yengeza ukusebenza kokuthi "buyisana" (rebalance_v2), okubhekwa njengoshintsho olukhulu kakhulu ohlelweni lwefayela eminyakeni emibili edlule. Ngokungafani nemodi "yokubuyisela kabusha" etholakala ngaphambilini, indlela "yokubuyisela" ivumela ukulinganisa kabusha hhayi idatha kuphela (isibonelo, ukuphindaphinda amakhophi amaningi kumadrayivu ahlukene) kodwa futhi imethadatha yesistimu yefayela (ngokwesibonelo, ukuthutha imethadatha ngemva kokwengeza idrayivu eyengeziwe echibini). Ngaphezu kwalokho, ukubuyisana manje kusebenza kuzo zonke izinketho ze-I/O, hhayi nje ukusebenza kwekhophi yasemuva nokusebenza kokuminyanisa. I-Reconsula iphinde iphendule ngokuzenzakalela izinguquko kuzinketho zedivayisi noma izilungiselelo futhi iphinda iphindaphinde ngokushesha idatha eyonakalisiwe kanye nemethadatha.
I-Reconcile isebenzisa izinkomba ezihlukene: imisebenzi ebaluleke kakhulu; ukwenza kahle kokucutshungulwa kwedatha kuma-disk drives; kanye nedatha ehlelelwe ukucutshungulwa okwamanje engatholakali (isibonelo, ngenxa yokuntuleka kwesikhala). Kwengezwe usekelo lokudala isistimu yefayela kudrayivu eyodwa kumodi yokuphindaphinda okukabili (replicas=2). Kulokhu kulungiselelwa, ukwengeza idrayivu yesibili kuzophindaphinda idatha ngokuzenzakalelayo kudrayivu eyengeziwe, ngaphandle kokusebenzelana komsebenzisi.
Ezinye izinguquko zihlanganisa:
- Kwengezwe imiyalo ethi "buyisanisa isimo" kanye "nokuvumelanisa ukulinda". Kwengezwe izinketho zokukhweza ze-"mount_trusts_udev" kanye ne-"writeback_timeout". Kuhoxiswe imiyalo "yokuphindaphinda kwedatha" kanye "ne-data job drop_extra_replicas" imiyalo.
- Kwengezwe imodi yokutakula ye-"merge_btree_nodes" ehlola wonke ama-node ezakhiweni ze-btree angaphansi kokuhlanganisa imisebenzi.
- Ikhodi ilungiselelwe ukushintshela olimini lokugqwala. Inani lemisebenzi ye-goto esetshenziswe kukhodi yehlisiwe isuka ku-2500 yaya ku-600. Amavekhtha anekhodi evulekile athathelwe indawo yi-DARRAY() macro, ehlinzeka ngokusebenza okufana nezinhlawulo eziguqukayo ku-C++ kanye ne-Rust. Ukuphatha iphutha kusingathwa kusetshenziswa i-try() macro, ebolekwe kwaRust.
- Umyalo "wokusetshenziswa kwe-bcachefs fs" manje ubika kahle idatha eyonakele.
- Ukuphathwa kwezinto zokubala eziboniswa umyalo othi "bcachefs fs top" kusetshenzwe kabusha. Ukwengeza izinto zokubala ezintsha kwenziwe lula, futhi nekhono lokuguqula ama-tracepoints abe ama-printbufs seliqalisiwe.
- Izinga lemilayezo yephutha lithuthukisiwe. Manje zifaka phakathi ulwazi mayelana nezinhlobo zokuhluleka (isofthiwe noma izingxenyekazi zekhompuyutha), izenzo zokuxazulula iphutha (isb., ukuqalisa inqubo yokutakula), amakhodi wephutha we-I/O atholwe kumadivayisi wokuvimba, namadivayisi angekho. Lapho uskena izakhiwo ze-btree, ulwazi mayelana nokuthi amanodi ezinkinga angatholwa yini manje seliyaboniswa.
- Lapho ubhalela ilogu, ikhono lokuchaza imikhawulo ngokuhlukile kubukhulu bokukhiphayo bezinhlobo zamaphutha ezihlukene lengeziwe. Le mikhawulo ivimbela imilayezo emayelana nezinkinga zezingxenyekazi zekhompuyutha ezingazodwa ukuthi ilahleke phakathi kwenani elikhulu lemilayezo yephutha lesofthiwe.
- Izinkomba zenqubekelaphambili zengeziwe kuzo zonke izigaba zokubuyisela.
Iphrojekthi ye-Bcachefs ithuthukisa isistimu yefayela okuhloswe ngayo ukuhlanganisa ukusebenza okuthuthukisiwe kwe-Btrfs kanye ne-ZFS nokusebenza, ukwethembeka, kanye nokukaleka kwe-XFS. I-Bcachefs isekela izici ezifana namadivayisi amaningi ngokuhlukanisa ngakunye, ukwakheka kwedrayivu enezendlalelo eziningi (isendlalelo esingezansi esinedatha efinyelelwa njalo ngokusekelwe kuma-SSD asheshayo, kanye nongqimba olungaphezulu olunedatha efinyelelwa kancane kusukela kuma-hard drive), ukuphindaphinda (i-RAID 1/10), ukulondoloza isikhashana, ukucindezelwa kwedatha okusobala (LZ4, gzip, kanye nezindlela ze-ZSTD), ukuhlola ikhono lokulondoloza ubuqotho, izingcezu ze-state shots Amakhodi okulungisa iphutha le-Reed-Solomon (RAID 5/6), nokugcinwa kwedatha ebethelwe (kusetshenziswa i-ChaCha20 ne-Poly1305). Mayelana nokusebenza, i-Bcachefs idlula i-Btrfs nezinye izinhlelo zefayela ngokusekelwe kumshini wokukopisha-on-Write, futhi ibonisa isivinini sokusebenza eduze ne-Ext4 ne-XFS.
Source: opennet.ru
