Messages in this thread |  | | | From | Bojan Smojver <> | | Subject | Re: Linux 2.6.29 | | Date | Sat, 28 Mar 2009 07:45:14 +0000 (UTC) |
| |
Jeremy Fitzhardinge <jeremy <at> goop.org> writes:
> This is a fairly narrow view of correct and possible. How can you make > "cat" fsync? grep? sort? How do they know they're not dealing with > critical data? Apps in general don't know, because "criticality" is a > property of the data itself and how its used, not the tools operating on it.
Isn't it possible to compile a program that simply calls open()/fsync()/close() on a given file name? If yes, then in your scripts, you can do whatever you want with existing tools on a _scratch_ file, then call your fsync program on that scratch file and then rename it to the real file. No?
In other words, given that you know that your data is critical, you will write processed data to another file, while preserving the original, store the new file safely and then rename it to the original. Just like the apps that know that their files are critical are supposed to do using the API.
-- Bojan
|  |