[tahoe-dev] [tahoe-lafs] #510: use plain HTTP for storage server protocol?
tahoe-lafs
trac at allmydata.org
Mon Mar 1 19:08:02 PST 2010
#510: use plain HTTP for storage server protocol?
--------------------------+-------------------------------------------------
Reporter: warner | Owner:
Type: enhancement | Status: new
Priority: major | Milestone: 2.0.0
Component: code-storage | Version: 1.2.0
Keywords: standards | Launchpad_bug:
--------------------------+-------------------------------------------------
Changes (by davidsarah):
* keywords: => standards
Comment:
Replying to [comment:4 jrydberg]:
> "PUT /shares/SI/SHNUM, which works only once" - Shouldn't POST be used
rather than PUT? PUT is idempotent.
PUTting a share would be idempotent, because "(aside from error or
expiration issues) the side-effects of N > 0 identical requests is the
same as for a single request"
(http://tools.ietf.org/html/rfc2616#section-9.1). I.e. repeating the
request can have no harmful effect. (Note that, assuming the collision-
resistence of the hash, there is only one possible valid contents for the
share at a given SI and SHNUM.)
HTTP doesn't require that an idempotent request always succeeds. The only
ways in which client behaviour is specified to depend on idempotence are:
* If there is an asynchronous close during a sequence of idempotent
requests, clients SHOULD retry the request sequence once without user
interaction (http://tools.ietf.org/html/rfc2616#section-8.1.4).
* Idempotent requests can be pipelined
(http://tools.ietf.org/html/rfc2616#section-8.1.2.2).
These are both desirable for uploading of shares.
--
Ticket URL: <http://allmydata.org/trac/tahoe/ticket/510#comment:5>
tahoe-lafs <http://allmydata.org>
secure decentralized file storage grid
More information about the tahoe-dev
mailing list