Changeset 9a5c417 in trunk


Ignore:
Timestamp:
2021-08-19T19:02:59Z (4 years ago)
Author:
GitHub <noreply@…>
Branches:
master
Children:
014eb08, 117befd, 2a7e3b3, b9fd9de
Parents:
ff6fa4a (diff), 03c633c (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
git-author:
Jean-Paul Calderone <exarkun@…> (2021-08-19 19:02:59)
git-committer:
GitHub <noreply@…> (2021-08-19 19:02:59)
Message:

Merge pull request #1108 from LeastAuthority?/3763.gbs-lease-endpoint-items

Clarify some of the GBS "create lease" endpoint specification

Fixes: ticket:3763

Files:
1 added
1 edited

Legend:

Unmodified
Added
Removed
  • TabularUnified docs/proposed/http-storage-node-protocol.rst

    rff6fa4a r9a5c417  
    370370!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    371371
    372 Create a new lease that applies to all shares for the given storage index.
     372Create a new lease on the bucket addressed by ``storage_index``.
    373373The details of the lease are encoded in the request body.
    374374For example::
     
    376376  {"renew-secret": "abcd", "cancel-secret": "efgh"}
    377377
    378 If there are no shares for the given ``storage_index``
    379 then do nothing and return ``NO CONTENT``.
    380 
    381378If the ``renew-secret`` value matches an existing lease
    382 then that lease will be renewed instead.
    383 
    384 The lease expires after 31 days.
     379then the expiration time of that lease will be changed to 31 days after the time of this operation.
     380If it does not match an existing lease
     381then a new lease will be created with this ``renew-secret`` which expires 31 days after the time of this operation.
     382
     383In these cases the response is ``NO CONTENT`` with an empty body.
     384
     385It is possible that the storage server will have no shares for the given ``storage_index`` because:
     386
     387* no such shares have ever been uploaded.
     388* a previous lease expired and the storage server reclaimed the storage by deleting the shares.
     389
     390In these cases the server takes no action and returns ``NOT FOUND``.
     391
    385392
    386393Discussion
     
    392399Several behaviors here are blindly copied from the Foolscap-based storage server protocol.
    393400
    394 * There is a cancel secret but there is no API to use it to cancel a lease.
     401* There is a cancel secret but there is no API to use it to cancel a lease (see ticket:3768).
    395402* The lease period is hard-coded at 31 days.
    396 * There is no way to differentiate between success and an unknown **storage index**.
    397 * There are separate **add** and **renew** lease APIs.
     403* There are separate **add** and **renew** lease APIs (see ticket:3773).
    398404
    399405These are not necessarily ideal behaviors
Note: See TracChangeset for help on using the changeset viewer.