#2423 closed enhancement (duplicate)

User Quota

Reported by: communitycube Owned by: daira
Priority: normal Milestone: undecided
Component: unknown Version: 1.10.0
Keywords: Cc:
Launchpad Bug:


In certain networks can be usefull to not allow users upload, more files than the space that they're sharing.

Quota management will be handled by the StorageClient?, which imposes the limits on what can be uploaded to the grid. When a file is to be uploaded, the StorageClient?:

1- Checks that the storage server is running and writable

2- Calculates the space it is sharing in the associated storage server.

a- Available disk space

b- Reserved disk space (minimum free space to be reserved)

c- Size of stored shares

3- The size of leases it holds on files stored on grid (requires a catalog of uploaded files and lease expiration/renewal tracking).

4- Estimates the assigned space as 'Sharing space (available + stored shares)'

5- Checks that Used space (i.e. sum of leases) is smaller than 'Sharing space'.

6- Retrieve the grid's “X out K” parameters used in erasure encoding.

7- Verifies that predicted used space and reports an error if the available quota is exceeded.

Change History (2)

comment:1 Changed at 2015-05-16T13:51:47Z by PRabahy

Related to #1836 and #295. (Possibly could be considered a dupe)

comment:2 Changed at 2020-01-20T21:00:48Z by exarkun

  • Resolution set to duplicate
  • Status changed from new to closed

This feature needs to fit into a bigger picture that considers how clients are identified on a grid, how their storage usage is tracked, and how limits on that usage might be determined and enforced.

As a stand-alone, it doesn't make sense. Also, whatever StorageClient was no longer seems to exist in the code base. It sounds like something that might exist in a client node but it doesn't make sense to enforce quotas in the client (since a client can then just choose not to enforce them).

There are lots of other tickets and content in the docs and on the wiki (eg ​https://tahoe-lafs.org/trac/tahoe-lafs/wiki/NewAccountingDesign) about this kind of usage tracking. I'm going to close this in favor of all that.

Note: See TracTickets for help on using tickets.