Zhvilluesit e projektit systemd kanë filluar studimin dhe zgjidhjen e një problemi të vjetër arkitektural në komponentin "systemd-journald", i cili shkakton rritje të shumëfishuar të sasisë së të dhënave të shkruara në disk (write amplification) krahasuar me sasinë reale të logjeve.
Historia fillon nga marsi i vitit 2020, kur në sistemin e ndjekjes së gabimeve u regjistrua një raport, ku u demonstrua se gjenerimi i rreth 500 KB logjeve tekstuale rezultonte në më shumë se 700 MB operacione fizike të shkruar në SSD. Zhvilluesit e systemd atëherë e refuzuan kategorikisht njohjen e problemit, duke u përgjigjur në një stil "ju nuk e kuptoni se si funksionojnë sistemet e skedarëve", refuzuan të realizonin profilizime dhe mbyllën kërkesën me verdiktin "not actionable". Komentet e zhvilluesve morën qindra vlerësime negative nga përdoruesit, megjithatë pozita e projektit mbeti e pakapshme.
Në fillim të vitit 2026, u dërgua një raport i ripërsëritur për problemin, gjatë diskutimit të të cilit zhvilluesi i pavarur ValdikSS realizoi një profilizim të detajuar duke përdorur cgroup të izoluar dhe pajisje loop, duke provuar qartë mekanizmin e shfaqjes së problemit: për shkak të përdorimit të skedarëve të reflektuar në memorje (mmap) dhe tabelave të hash-eve binarë, shkruajtja e një mesazhi tekstual me përmasë 750 byte çon në modifikimin e gjurmëve në memorje, duke shkaktuar shkarkimin në disk të faqeve të plota prej 4 kilobajtësh dhe gjenerimin e midis 50 dhe 70 KB hyrje/ dalje totale në nivelin e një pajisjeje bllokuese.
Pas publikimit të raportit mbi problemin në krye të faqes Hacker News dhe publikimit të testeve sintetike të pakundërshtueshme, mbajtësit e projektit ndryshuan retorikën dhe filluan punën mbi optimizimin e mekanizmave të shkarkimit të caches dhe strukturës së magazinimit të indekseve journald.
Burimi: opennet.ru
