Opened at 2017-02-21T20:39:24Z
Closed at 2020-10-30T12:35:44Z
#2866 closed enhancement (wontfix)
Accounting, lease-db from cloud-backend
Reported by: | meejah | Owned by: | |
---|---|---|---|
Priority: | normal | Milestone: | soon |
Component: | code-storage | Version: | 1.12.1 |
Keywords: | Cc: | ||
Launchpad Bug: |
Description
Partial summary of devchat from February 21, 2017 and the path forward on pulling some of the things from the cloud-backend branch:
- add pluggable backends, like 2237
- add lease-db, like 2237 *except* the API for the lease-db goes into the backend API
- add lease-db implementation using sqlite
- like in 2237 currently, if a share isn't in the lease-db at all a new "starter lease" is added
- lease-db is throw-away and can be lost at any time
We'd also discussed backing up the lease-db, but that can be an enhancement at a later date.
Some notes on various use-cases:
- "how much space is Alice using" (we don't have notions of Alice etc yet though): this can be answered from the leasedb. If we've "recently" lost the lease-db, this answer will be inaccurate until "default-share-expiry" time has passed.
- garbage-collecting: if the lease-db was lost, and a client didn't care about a share (and therefore never renewed it) the garbage-collector will be the first thing to ask the lease-db about it so a "starter" share will be created at that time. Therefore, it won't be garbage-collected until another default-share-expiry time has passed
Change History (3)
comment:1 Changed at 2017-02-21T21:50:22Z by meejah
comment:2 Changed at 2017-03-01T07:23:22Z by meejah
The leasedb in the 2237 branch (and original accounting branches) has a synchronous API (using sqlite). This needs to be made async so we can use backends that do network things.
comment:3 Changed at 2020-10-30T12:35:44Z by exarkun
- Resolution set to wontfix
- Status changed from new to closed
The established line of development on the "cloud backend" branch has been abandoned. This ticket is being closed as part of a batch-ticket cleanup for "cloud backend"-related tickets.
If this is a bug, it is probably genuinely no longer relevant. The "cloud backend" branch is too large and unwieldy to ever be merged into the main line of development (particularly now that the Python 3 porting effort is significantly underway).
If this is a feature, it may be relevant to some future efforts - if they are sufficiently similar to the "cloud backend" effort - but I am still closing it because there are no immediate plans for a new development effort in such a direction.
Tickets related to the "leasedb" are included in this set because the "leasedb" code is in the "cloud backend" branch and fairly well intertwined with the "cloud backend". If there is interest in lease implementation change at some future time then that effort will essentially have to be restarted as well.
It looks like "warner/accounting-2" is the original branch upon which daira's 2237 branches are based (but with some additional changes).