From 5d1feea7e862d135fb3452fa33e52a8bcec86b60 Mon Sep 17 00:00:00 2001 From: water <672684719@qq.com> Date: Thu, 13 Aug 2026 21:45:47 +0800 Subject: [PATCH] fix: do not retry multipart upload chunk on 404 (upload session not found) --- backend/onedrive/onedrive.go | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/backend/onedrive/onedrive.go b/backend/onedrive/onedrive.go index b454eee26..38f5bfef7 100644 --- a/backend/onedrive/onedrive.go +++ b/backend/onedrive/onedrive.go @@ -2681,9 +2681,8 @@ func (o *Object) uploadFragment(ctx context.Context, url string, start int64, to } return true, fmt.Errorf("retry this chunk skipping %d bytes: %w", skip, err) } else if err != nil && resp != nil && resp.StatusCode == http.StatusNotFound { - fs.Debugf(o, "Received 404 error: assuming eventual consistency problem with session - retrying chunk: %v", err) - time.Sleep(5 * time.Second) // a little delay to help things along - return true, err + fs.Debugf(o, "Received 404 error: upload session not found - not retrying: %v", err) + return false, fserrors.NoLowLevelRetryError(err) } if err != nil { return shouldRetry(ctx, resp, err)