Opened at 2023-04-25T18:05:03Z
#4017 new enhancement
WebUI: enhance "put" operations
Reported by: | meejah | Owned by: | |
---|---|---|---|
Priority: | normal | Milestone: | undecided |
Component: | unknown | Version: | n/a |
Keywords: | Cc: | ||
Launchpad Bug: |
Description
Currently, the WebUI API for uploading a file (aka tahoe put) only returns when the file is uploaded to storage-servers.
This makes sense: your file isn't "put" into Tahoe until that happens. However, it makes progress information hard because the fine-grained progress API indexes operations by "storage-index" which you only learn after the HTTP operation that tahoe put uses is completely finished.
It's also not useful to show progress of the data-transfer: Tahoe accepts it quickly (usually this is via localhost) into a temporary area before doing erasure-encoding etc and uploading to storage-servers.
One approach could be a "two-part" API where you initiate the operation (i.e send all the data to your local tahoe client) and receive a handle of some kind. If possible, this could be the storage-index.
Then, a second API can be used to "wait for handle X to complete". Meantime, the existing progress information is used to determine the encoding and upload (to actual storage-servers) progress. (Note that this needs a storage-index currently).