|
|
Log in / Subscribe / Register

Other use cases

Other use cases

Posted Mar 4, 2026 12:54 UTC (Wed) by farnz (subscriber, #17727)
In reply to: Other use cases by taladar
Parent article: The ongoing quest for atomic buffered writes

Even with more layers, the interesting notifications remain similar - they're telling you how big a failure is needed to lose your data. The interesting states are "any failure", "only a failure in the storage subsystem, but one that's quite likely to happen" and "only unlikely failures that we try to engineer out of the system completely".


to post comments

Other use cases

Posted Mar 5, 2026 13:11 UTC (Thu) by taladar (subscriber, #68407) [Link] (1 responses)

True, my point was more that you probably don't want to bake assumptions about current storage architectures into the long-lived FS API.

Other reasons for more layers with messy properties might include network filesystems which might have local cached storage in case of network failure.

Other use cases

Posted Mar 5, 2026 13:56 UTC (Thu) by farnz (subscriber, #17727) [Link]

Yep - you want to base the notifications on what's interesting to the application, not on the current layering; one for "other readers will see the write" (obvious), one for "this system can crash without losing data, but if the storage stack crashes, you may lose data" (there are commit protocols where this is the point at which you can tentatively acknowledge the write), and one for "data should not be lost even if everything crashes" (since this is the final state for all writes) are still probably the interesting three, no matter how complicated you make the underlying layers.

I can also see some room for splitting the first into two: "other readers on this system" and "other readers with access to this storage stack" - but again, the point has to be "what is interesting to the application about this state", as opposed to "what states do I know about?", with "what states do I know about?" only being useful for preventing you offering notifications you can't provide at a sensible cost.


Copyright © 2026, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds