5 ms·
Isn't this true of any atomic operation in the event of a crash? You'll either see the old data or the new data when the system comes back up.
by jacobsenscott 6y ago
Isn't this true of any atomic operation in the event of a crash? You'll either see the old data or the new data when the system comes back up.
- wahern 6y agoYes. But traditionally Unix filesystems provided stronger consistency guarantees than required by POSIX, and applications have come to rely on them. Actually, in the event of a crash I think POSIX specifies implementation-defined behavior even for fsync.
- formerly_proven 6y agoMaking fsync a no-op and not having any durability at all is perfectly POSIX compliant. POSIX only concerns itself with the visibility of I/O in the live system (e.g. a process either sees a write fully realized, or not at all - this didn't use to be true for larger writes until fairly recently, btw.). POSIX specifies nothing about what happens when a system is restarted or looses power.
- ori_b 6y agoThe alternative would not allow for a posix-compliant implementation ramfs.