You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
After #45 is implemented, we could allocate the Ticket ID immediately and enable background uploads with simultaneous/streaming download.
It would work as follows: if an upload session is allocated, instead of converting it to a path into the final storage location, just create the ticket ID with a pointer to upload ID. The client will continue to send chunks in the background until all chunks are completed. We keep an updated record of the last available byte for each chunk received.
When sending a ticket, and an upload id is available, we read/stream until EOF and simply pause the reader until another chunk is available. We might need to set SO_KEEPALIVE explicitly somehow to avoid drops while waiting for chunks.
Once all chunks are completed, we internally finish the upgrade to a regular ticket by swapping the upload id to a file path. Doing so should be transparent to current readers.
The text was updated successfully, but these errors were encountered:
After #45 is implemented, we could allocate the Ticket ID immediately and enable background uploads with simultaneous/streaming download.
It would work as follows: if an upload session is allocated, instead of converting it to a path into the final storage location, just create the ticket ID with a pointer to upload ID. The client will continue to send chunks in the background until all chunks are completed. We keep an updated record of the last available byte for each chunk received.
When sending a ticket, and an upload id is available, we read/stream until EOF and simply pause the reader until another chunk is available. We might need to set SO_KEEPALIVE explicitly somehow to avoid drops while waiting for chunks.
Once all chunks are completed, we internally finish the upgrade to a regular ticket by swapping the upload id to a file path. Doing so should be transparent to current readers.
The text was updated successfully, but these errors were encountered: