On 2008-03-11T03:14:40, Daniel Phillips <phillips@phunq.net> wrote:
Daniel, I'm not saying you don't have a good thing here. Just that for
backing large filesystems, the risk of having to run a full fsck and
finding inconsistent metadata is pretty serious.
If I always assume a reliable shutdown - UPS protected, no crashes, etc
- you're right, but at least my real world has other failure scenarios
as well. In fact, the most common reason for unorderly shutdowns are
kernel crashes, not power failures in my experience.
So "perfectly reliable if UPS power does not fail" seems a bit over the
top.
No disagreement here. The question would be how large the performance
difference is.
I was trying to prod you into writing the ordered flushing. Maybe
claiming it is too hard will do the trick? ;-)
Seriously, I guess it depends on the workload you want to host.
I see the differences, but I also see the similarities. What you're
doing can also be thought of as replicating from an instant IO store
(local memory) to a high latency, low bandwidth copy (the disk)
asynchronously.
Both obviously need to preserve consistency, the question is whether to
achieve transactional (ordered) consistency or not.
Regards,
Lars
--
Teamlead Kernel, SuSE Labs, Research and Development
SUSE LINUX Products GmbH, GF: Markus Rex, HRB 16746 (AG Nürnberg)
"Experience is the name everyone gives to their mistakes." -- Oscar Wilde
--