История изменений
Исправление Manhunt, (текущая версия) :
Но обычно дефолтный вариант(sync в NFS, barrier=1 в ext4) - более безопасный, но менее производительный
Мы говорим сейчас о гарантиях, а не о «более-менее». Так вот в ext4 по умолчанию активирован delayed allocation (https://www.kernel.org/doc/Documentation/filesystems/ext4.txt) , поэтому никаких гарантий что твой write будет виден после резета у тебя нет.
PS Я проверял экспериментально, на самом деле даже цепочка open+write+close+rename на ext4 запросто даёт переименованные файлы нулевого размера. По-крайней мере, при условии, что rename не перезатирает какой-то из существующих файлов.
Исходная версия Manhunt, :
Но обычно дефолтный вариант(sync в NFS, barrier=1 в ext4) - более безопасный, но менее производительный
Мы говорим сейчас о гарантиях, а не о «более-менее». Так вот в ext4 по умолчанию активирован delayed allocation (https://www.kernel.org/doc/Documentation/filesystems/ext4.txt) , поэтому никаких гарантий что твой write будет виден после резета у тебя нет.
PS Я проверял экспериментально, на самом деле цепочка open+write+close+rename на ext4 запросто даёт переименованные файлы нулевого размера. По-крайней мере, при условии, что rename не перезатирает какой-то из существующих файлов.