Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

in nfs mount, upload gets restart if upload data makes storage of nfs server exhaustive #7971

Closed
bishwasojha opened this issue Nov 11, 2022 · 6 comments
Labels
Priority:p2-high Escalation, on top of current planning, release blocker Status:Needs-Info Type:Bug Something isn't working

Comments

@bishwasojha
Copy link

bishwasojha commented Nov 11, 2022

Describe the bug

In nfs mount, the uploading does not get completed if the uploaded data makes storage of nfs server exhaustive. During uploading, the data is synced to the nfs server, and the server storage is occupied; however, once the server storage is exhausted, the progress bar of uploading restarts from the beginning, and the server storage that was previously occupied is no longer occupied.

Steps to reproduce

Steps to reproduce the behavior:

  1. setup nfs client server https://owncloud.dev/ocis/storage-backends/dcfsnfs/
  2. upload data exhausting the storage of the nfs server

Expected behavior

  • uploading terminates with some notification

Actual behavior

  • The progress bar during uploading goes to completion, but then the progress bar restarts from the beginning .

Setup

  • setup nfs client and nfs server

OCIS_VERSION=ocis:2.0.0-rc.1

Additional context

Screencast.from.14-11-22.12.27.52.+0545.webm
@bishwasojha bishwasojha added the Type:Bug Something isn't working label Nov 11, 2022
@bishwasojha bishwasojha changed the title in nfs mount, upload gets restart if upload data makes exhaustive storage of nfs server in nfs mount, upload gets restart if upload data makes storage of nfs server exhaustive Nov 11, 2022
@bishwasojha
Copy link
Author

  • The uploading restarts with status 507 and 404 Status
Screencast.from.14-11-22.04.29.57.+0545.webm

@micbar
Copy link
Contributor

micbar commented Nov 14, 2022

@butonic @kulmann Can you qualify if this needs cross platform changes?

@micbar micbar added Priority:p2-high Escalation, on top of current planning, release blocker Status:Needs-Info labels Nov 14, 2022
@butonic
Copy link
Member

butonic commented Nov 14, 2022

AFAIU this is the web ui retrying the POST / PATCH request during tus uploads.

On the server side, when we run into en error during a chunk upload we purge the upload. This happens in the PATCH request when it returns 507.

That is also the reason why the subsequest HEAD request receives a 404 ... the upload really is gone.

The desktop client retries the upload with a backoff ... I don't think the web ui should retry on a 507, should it?

@micbar micbar transferred this issue from owncloud/ocis Nov 15, 2022
@JammingBen
Copy link
Collaborator

I don't think the web ui should retry on a 507, should it?

If the upload in gone on the server side, we should avoid retrying, yes. It should be pretty easy, we just need to hook onto the onShouldRetry event and check for the status code 507 (https://uppy.io/docs/tus/#onShouldRetry-err-retryAttempt-options-next-gt-next-err).

@butonic Are there any more status codes where retrying should not happen?

@butonic
Copy link
Member

butonic commented Nov 17, 2022

Hm, InsufficientStorage 507, RFC 4918, 11.5 ... actually any 5xx?

@JammingBen
Copy link
Collaborator

JammingBen commented Nov 18, 2022

#7985 has been merged on the stable-6.0 branch (coming to master soon as well) which addresses this.

Edit: Now in master, hence I'm closing this issue. Feel free to re-open if this is still an issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Priority:p2-high Escalation, on top of current planning, release blocker Status:Needs-Info Type:Bug Something isn't working
Projects
No open projects
Status: Done
Development

No branches or pull requests

4 participants