Re: filesystem transactions API

From: John Stoffel
Date: Tue Apr 26 2005 - 10:04:21 EST


>>>>> "Jamie" == Jamie Lokier <jamie@xxxxxxxxxxxxx> writes:

Jamie> No. A transaction means that _all_ processes will see the
Jamie> whole transaction or not.

This is really hard. How do you handle the case where process X
starts a transaction modifies files a, b & c, but process Y has file b
open for writing, and never lets it go? Or the file gets unlinked?

Jamie> For example, you can use transactions for distro package
Jamie> management: a whole update of a package would be a single
Jamie> transaction, so that at no time does any program see an
Jamie> inconsistent set of files. See why _every_ process in the
Jamie> system must have the same view?

What about programs that are already open and running?

It might be doable in some sense, but I can see that details are
really hard to get right. Esp without breaking existing Unix
semantics.

But then again, I could be smoking something good (or bad :-) here, so
take what I say with a grain of salt.

John
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/