История изменений
Исправление firkax, (текущая версия) :
Для этого достаточно полагаться на закреплённое в стандарте поведение fsync.
Полагайся сколько хочешь, только производители реальных систем плевали на эти надписи и работают часто не так (в угоду производительности, которую, в отличие от fsync, можно маркетингово предъявить покупателям). Пока аварийного отключения не произойдёт - ты ничего не заметишь, ведь реальное положение дел спрятано за абстракциями верхних уровней.
И учти что диски не обязательно локально видны операционной системе. Они могут быть спрятаны за слоем виртуалочного гипервизора, они могут быть сетевыми на отдельной железке, у которой внутри ещё пачка слоёв абстракций, или же и то и другое вместе. Да что там говорить, я сам на zfs-based nas-е в проде отключил sync т.к. с ним тормозит. Так что даже если ОС думает что она записала данные «на диск» - на самом деле они висят в оперативной памяти схд в кеше zfs и ждут записи. Но, если что, уверен, что это совсем не единственное место в цепочке абстракций, где запись может оказаться молчаливо отложенной.
Исправление firkax, :
Для этого достаточно полагаться на закреплённое в стандарте поведение fsync.
Полагайся сколько хочешь, только производители реальных систем плевали на эти надписи и работают часто не так (в угоду производительности, которую, в отличие от fsync, можно маркетингово предъявить покупателям). Пока аварийного отключения не произойдёт - ты ничего не заметишь, ведь реальное положение дел спрятано за абстракциями верхних уровней.
И учти что диски не обязательно локально видны операционной системе. Они могут быть спрятаны за слоем виртуалочного гипервизора, они могут быть сетевыми на отдельной железке, у которой внутри ещё пачка слоёв абстракций, или же и то и другое вместе. Да что там говорить, я сам на zfs-based nas-е в проде отключил sync т.к. с ним тормозит. Так что даже если ОС думает что она записала данные «на диск» - на самом деле они висят в оперативной памяти схд в кеше zfs и ждут записи.
Исправление firkax, :
Для этого достаточно полагаться на закреплённое в стандарте поведение fsync.
Полагайся сколько хочешь, только производители реальных систем плевали на эти надписи и работают часто не так (в угоду производительности, которую, в отличие от fsync, можно маркетингово предъявить покупателям). Пока аварийного отключения не произойдёт - ты ничего не заметишь, ведь реальное положение дел спрятано за абстракциями верхних уровней.
Исходная версия firkax, :
Для этого достаточно полагаться на закреплённое в стандарте поведение fsync.
Полагайся сколько хочешь, только производители реальных систем плевали на эти надписи и работают часто не так. Пока аварийного отключения не произойдёт - ты ничего не заметишь, ведь реальное положение дел спрятано за абстракциями верхних уровней.