Re: POHMELFS high performance network filesystem. Transactions, failover,performance.

From: Jeff Garzik
Date: Wed May 14 2008 - 15:05:45 EST


Jamie Lokier wrote:
Look up "one-phase commit" or even "zero-phase commit". (The
terminology is cheating a bit.) As I've understood it, all commit
protocols have a step where each node guarantees it can commit if
asked and node failure at that point does not invalidate the guarantee
if the node recovers (if it can't maintain the guarantee, the node
doesn't recover in a technical sense and a higher level protocol may
reintegrate the node). One/zero-phase commit extends that to
guaranteeing a certain amounts and types of data can be written before
it knows what the data is, so write messages within that window are
sufficient for global commits. Guarantees can be acquired
asynchronously in advance of need, and can have time and other limits.
These guarantees are no different in principle from the 1-bit
guarantee offered by the "can you commit" phase of other commit
protocols, so they aren't as weak as they seem.

For several common Paxos usages, you can obtain consensus guarantees well in advance of actually needing that guarantee, making the entire process quite a bit more async and parallel.

Sort of a "write ahead" for consensus.

Jeff



--
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/