Kent Overstreet publikoi versionin 1.33.0 të sistemit të skedarëve Bcachefs. Versioni përfshin dy paketa: bcachefs-kernel-dkms me modulin e bërjes së kernelit, i mbledhur me sistemin DKMS (Dynamic Kernel Module Support), dhe bcachefs-tools me utilitarin bcachefs, i cili zbatohet në hapësirën e përdoruesit për të realizuar komandat për krijimin (mkfs), montimin, rikuperimin dhe verifikimin e FS. Paketat janë ndërtuar për Debian, Ubuntu, Fedora, openSUSE, NixOS dhe Arch Linux. Moduli DKMS mbështet punën me kernelat Linux, duke filluar nga 6.16.
Në versionin e ri është shtuar funksionaliteti "reconcile" (rebalance_v2), i cili është shënuar si një nga ndryshimet më të mëdha në FS gjatë dy viteve të fundit. Ndryshe nga moda e mëparshme "rebalance", mekanizmi "reconcile" lejon që të kryhet ribalancimi jo vetëm i të dhënave (p.sh., riplikimi i kopjave të shumta në disqe të ndryshme), por edhe i metadave në FS (p.sh., për të transferuar metadatë pas shtimit të një disku të ri në grup). Për më tepër, reconcile tani është i aplikueshëm për të gjitha opsionet e hyrjes/daljes, dhe jo vetëm për operacionet e kopjimit në sfond dhe kompresimit. Në reconcile gjithashtu automatikisht merren parasysh ndryshimet në opsionet ose konfigurimet e pajisjeve dhe menjëherë riplikohen të dhënat dhe metadatë të degraduara.
NĂ« reconcile angazhohen indekse tĂ« veçanta pĂ«r: operacione me prioritet tĂ« lartĂ«; optimizimin e pĂ«rpunimit tĂ« tĂ« dhĂ«nave nĂ« pajisjet e ruajtjes; tĂ« dhĂ«nat qĂ« janĂ« planifikuar pĂ«r pĂ«rpunim, por qĂ« pĂ«r momentin nuk mund tĂ« realizohen (p.sh., pĂ«r shkak tĂ« mungesĂ«s sĂ« hapĂ«sirĂ«s). Shtuar mbĂ«shtetje pĂ«r krijimin e njĂ« sistemi skedarĂ«sh nĂ« njĂ« pajisje nĂ« modalitetin me replikimin e dyfishtĂ« (replicas=2) â nĂ« kĂ«tĂ« konfigurim, shtimi i pajisjes sĂ« dytĂ« do tĂ« çojĂ« nĂ« replikimin automatik tĂ« tĂ« dhĂ«nave nĂ« diskun e shtuar, pa nevojĂ«n e ndonjĂ« veprimi nga ana e pĂ«rdoruesit.
Ndër ndryshimet e tjera:
- Shtuar komandat «reconcile status» dhe «reconcile wait». Shtuar opsionet e montimit «mount_trusts_udev» dhe «writeback_timeout». Komandat «data rereplicate» dhe «data job drop_extra_replicas» janë shpallur të papërdorshme.
- Shtuar modaliteti i rikuperimit «merge_btree_nodes», i cili kryen kontrollin e të gjitha nyjeve në strukturat btree që bien nën operacionet e bashkimit.
- ĂshtĂ« bĂ«rĂ« pĂ«rgatitja e kodit pĂ«r kalimin nĂ« pĂ«rdorimin e gjuhĂ«s Rust. Numri i operacioneve goto nĂ« kod Ă«shtĂ« reduktuar nga 2500 nĂ« 600. NĂ« vend tĂ« vektorĂ«ve tĂ« koduar hapur, Ă«shtĂ« pĂ«rdorur makrosi DARRAY(), i cili ofron funksionalitet tĂ« ngjashĂ«m me array-t dinamikĂ« nĂ« C++ dhe Rust. PĂ«r trajtimin e gabimeve Ă«shtĂ« pĂ«rdorur makrosi try(), e marrĂ« nga Rust.
- Në komandën «bcachefs fs usage» është siguruar informacion i saktë për të dhënat e degraduara.
- ĂshtĂ« riardhĂ«ruar trajtimi i numrave qĂ« shfaqen nĂ« komandĂ«n «bcachefs fs top». ĂshtĂ« thjeshtuar shtimi i numrave tĂ« rinj dhe Ă«shtĂ« realizuar mundĂ«sia e transformimit tĂ« pikave tĂ« gjurmimit (tracepoint) nĂ« buffer-a tĂ« daljes (printbufs).
- ĂshtĂ« rritur cilĂ«sia e mesazheve tĂ« gabimeve, tĂ« cilat tani pĂ«rfshijnĂ« informacion mbi llojet e dĂ«shtimeve (softuerore ose harduerike), veprimet pĂ«r zgjidhjen e gabimeve (p.sh., nisja e njĂ« procesi rikuperimi), dhe kodet e gabimeve tĂ« hyrje/daljes nga pajisjet bllok qĂ« mungojnĂ«. GjatĂ« skanimit tĂ« strukturave btree, Ă«shtĂ« siguruar output i informacionit mbi mundĂ«sinĂ« e rikuperimit tĂ« nyjeve problematike.
- Në regjistrimin e logut është shtuar mundësia për të përcaktuar ndarazi kufijtë për intensitetin e shpërndarjes së llojeve të ndryshme të gabimeve. Kufijtë e tillë ndihmojnë në parandalimin e humbjes së mesazheve për probleme të vetme harduerike përballë një numri të madh mesazhesh për gabime softuerike.
- Për të gjitha fazat e rikuperimit janë shtuar tregues progresi.
Projekti Bcachefs zhvillon një sistem skedarësh i orientuar për të kombinuar funksionalitetin e avancuar të Btrfs dhe ZFS me nivelin e performancës, besueshmërisë dhe shkallueshmërisë karakteristik për XFS. Bcachefs mbështet mundësi të tilla si përfshirja në particion disa pajisjesh, organizime të shumëfishta të pajisjeve (niveli i poshtëm me të dhëna të përdorura shpesh mbi SSD të shpejta, dhe niveli i sipërm me të dhëna më pak të kërkuara nga disqet e ngurtë), replikim (RAID 1/10), caching, komprimim transparent të të dhënave (modet LZ4, gzip dhe ZSTD), kopje të gjendjes (snapshot-e), verifikim të integritetit përmes kontrolleve të shumtë, mundësinë e ruajtjes së kodeve të korrigjimit të gabimeve të Reed-Solomon (RAID 5/6), ruajtjen e informacionit në formë të shkruar (përdoren ChaCha20 dhe Poly1305). Në performancë, Bcachefs përparon Btrfs dhe sistemet e tjera të skedarëve të bazuara në mekanizmin Copy-on-Write dhe tregon shpejtësi operimi afër Ext4 dhe XFS.
Burimi: opennet.ru
