[tahoe-lafs-trac-stream] [tahoe-lafs] #648: collect server capacities and put them on the welcome page, output of 'df' for SFTP, etc.
tahoe-lafs
trac at tahoe-lafs.org
Wed Apr 27 09:38:24 PDT 2011
#648: collect server capacities and put them on the welcome page, output of 'df'
for SFTP, etc.
-------------------------+-------------------------------------------------
Reporter: zooko | Owner:
Type: | Status: new
enhancement | Milestone: undecided
Priority: major | Version: 1.3.0
Component: code- | Keywords: introducer usability statistics
frontend-web | ostrom
Resolution: |
Launchpad Bug: |
-------------------------+-------------------------------------------------
Comment (by zooko):
#1206 (node status page does not indicate per server if it is taking
shares) was a duplicate of this. In that ticket, gdt wrote:
A very important indicator of the health of a server in a grid is whether
it will take new shares. A client node has enough information (or could
record it) to know this. It should show somehow if a node is not taking
shares (either if it says it won't or if it actually doesn't). The lack of
this feature makes it almost impossible to assess if files can be uploaded
without trying it.
Whether a server is accepting shares is determined like this: if the
server is configured to be in read-only mode then it sets its "available
space" to 0:
[source:trunk/src/allmydata/storage/server.py?annotate=blame&rev=4895#L189
StorageServer.get_available_space()]. If "reserved space" is set then it
subtracts that much space from its available space:
[source:trunk/src/allmydata/storage/server.py?annotate=blame&rev=4895#L71
StorageServer.__init__()]. It includes the resulting "available space" in
the metadata about itself that it sends back in response to
{{{get_version}}} requests:
[source:trunk/src/allmydata/storage/server.py?annotate=blame&rev=4895#L203
StorageServer.remote_get_version()].
The client invokes {{{get_version}}} on each server as soon as it connects
to that server, but it doesn't do so ever again as long as it stays
connected:
[source:trunk/src/allmydata/storage_client.py?annotate=blame&rev=5018#L232
storage_client.NativeStorageServer].
So, this ticket is basically a superset of #1206. The client is already
learning (once, at connection establishment time) how much space the
server is offering, which is equal to 0 if and only if the server is
either in read-only mode or is full. If the client would display this
information to the user in a nice comprehensible way then both #1206 and
this ticket would be fixed.
{{{patch-needed}}}! :-)
--
Ticket URL: <http://tahoe-lafs.org/trac/tahoe-lafs/ticket/648#comment:15>
tahoe-lafs <http://tahoe-lafs.org>
secure decentralized storage
More information about the tahoe-lafs-trac-stream
mailing list