Durability Guarantees and Fsync¶
Data is not durable until it reaches stable storage; operating system and hardware caches create multiple layers where data can be lost, requiring explicit flush operations to guarantee persistence.
Tension Addressed¶
Durability vs. Performance
Recognizable As¶
Fsync/fdatasync calls, "sync" mount options, database durability settings, battery-backed write caches, any discussion of "committed" vs "acknowledged"
Canonical Sources¶
Pillai et al., "All File Systems Are Not Created Equal" (2014); Zheng et al., "Understanding the Robustness of SSDs under Power Fault" (2013)
Transfers To¶
Database configuration, message queue acknowledgments, distributed consensus commit protocols, any system requiring crash consistency
The chain of buffers (application, OS, device controller) means "write returned" does not mean "data is safe." Understanding this explains why durability guarantees are expensive.
Related Concepts¶
- Crash Consistency - Storage & I/O Foundations