[tahoe-lafs-trac-stream] [tahoe-lafs] #1755: 2-phase commit
tahoe-lafs
trac at tahoe-lafs.org
Wed Nov 21 03:48:26 UTC 2012
#1755: 2-phase commit
-------------------------+-------------------------------------------------
Reporter: | Owner: davidsarah
davidsarah | Status: assigned
Type: defect | Milestone: soon
Priority: normal | Version: 1.9.2
Component: code | Keywords: 2pc mutable reliability consistency
Resolution: |
Launchpad Bug: |
-------------------------+-------------------------------------------------
Comment (by davidsarah):
Replying to [comment:5 zooko]:
> So anyway, we have to come up with a plan for how storage servers (who
are playing the role of Resource Manager) handle the case that the storage
client (LAFS gateway, Transaction Manager) has told them to prepare and
hasn't yet told them whether they should commit or rollback, and then a
lot of time passes. As a first strawman argument, I propose a simple
hardcoded, fixed, long timeout. Let's say one hour. If your LAFS client
hasn't told you whether to commit or to rollback within an hour of asking
you to prepare, then you will unilaterally roll back.
I'd suggest a shorter timeout than this, say 5 minutes. This is assuming
the variation we discussed at the summit where clients can upload their
new file contents to a holding area on each server before actually taking
the lock. In that case, the lock timeout only needs to be long enough to
allow all the servers to receive a lock request and confirm it, then for
the client to receive all those confirmations, send out commit messages,
and each server to receive their commit message.
If that takes longer than 5 minutes, something is seriously wrong. (Note
that as long as the number of servers responding before the timeout is at
least the happiness threshold, the file will still be updated. The fact
that other servers may time out does not cause any inconsistency that we
can't tolerate.)
--
Ticket URL: <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1755#comment:7>
tahoe-lafs <https://tahoe-lafs.org>
secure decentralized storage
More information about the tahoe-lafs-trac-stream
mailing list