Odpověď na názor

Odpovídáte na názor ke článku Jak zakázat explicitní fsync (v Ubuntu).

  • 17. 6. 2012 20:55

    Tommy (neregistrovaný)

    No, a já s tím nesouhlasím a tvrdím že aplikace by tuto možnost (vynutit zápis na médium) mít měly. Samozřejmě to neznamená že to potřebuje dělat každá aplikace - to určitě ne. Ale např. ACID-compliant transakční systémy jsou typ aplikace která toto vyžaduje.

    Pokud se bavíme o tom že toto prováději i aplikace které to jinak nepotřebují a že se s tím některé filesystémy neumí rozumně vyrovnat, tak to bohužel pláčete na nesprávném hrobě. To prostě není relevantní důvod sebrat aplikacím možnost provádět fsync.

    A prostě není pravda že zavolání fsync nezaručí zápis na médium. Jistě, consumer-level SATA disky lžou, ale 100% SAS disků (tj. standardní serverové) nebo i kvalitnější SSD disky tímto neduhem netrpí. Takže tvrzení že "tenhle nárok není možné zaručit" je jednoduše nepravda - standardní hw to zajistit umí.

    Nechápu argumentaci že fsync by měl zajišťovat jenom pořadí - k tomu jsou barriers, účelem fsync je zajistit zapsání dat na médium pokud to aplikace potřebuje.

    To že OS může zápisy při nahromadění optimalizovat, o tom není sporu a aplikace které zapisují větší množství dat do jednoho souboru toho samozřejmě využívají - pokud potřebují zajistit propsání až na médium tak prostě zavolají fsync až na konci a OS ať si to seřadí dle libosti. Pokud aplikace volá fsync průběžně tak k tomu asi má nějaký důvod ...