OpenListTeam / OpenListTeam/OpenList

[BUG] 大文件上传夸克失败

Open
#1,164 7 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
Go
Stars
24.7k
Forks
2.3k
Avg merge
1d 20h
Merged PRs (30d)
36

Description

Please confirm the following
  • I have read and agree to AGPL-3.0 Section 15 .
    The program is provided "as is" without any warranties; you bear all risks of using it.

  • I have read and agree to AGPL-3.0 Section 16 .
    The copyright holders and distributors are not liable for any damages resulting from the use or inability to use the program.

  • I confirm my description is clear, polite, helps developers quickly locate the issue, and complies with community rules.

  • I have read the OpenList documentation.

  • I confirm there are no duplicate issues or discussions.

  • I confirm this is an OpenList issue, not caused by other reasons (such as network, dependencies, or operation).

  • I believe this issue must be handled by OpenList and not by a third party.

  • I confirm this issue is not fixed in the latest version.

OpenList Version (required)

v4.1.1

Storage Driver Used (required)

夸克

Bug Description (required)

大文件上传夸克失败
ERRO[2025-08-27 10:14:53]/home/runner/work/OpenList/OpenList/server/webdav.go:29 github.com/OpenListTeam/OpenList/v4/server.WebDav.func1() PUT /dav/nas-bak/个人/bak.zip up status: 400, error:

EntityTooSmall
Your proposed upload smaller than the minimum allowed size.
68AE6A1D23AB803933FBA18D
ul-zb.pds.quark.cn
D41D8CD98F00B204E9800998ECF8427E
102400
12
0
84A6785E7805405EA5CBC9E827B01114
0042-00000213
https://api.aliyun.com/troubleshoot?q=0042-00000213

github.com/OpenListTeam/OpenList/v4/internal/op.Put
/home/runner/work/OpenList/OpenList/internal/op/fs.go:665
github.com/OpenListTeam/OpenList/v4/drivers/crypt.(*Crypt).Put
/home/runner/work/OpenList/OpenList/drivers/crypt/driver.go:407
github.com/OpenListTeam/OpenList/v4/internal/op.Put
/home/runner/work/OpenList/OpenList/internal/op/fs.go:639
github.com/OpenListTeam/OpenList/v4/internal/fs.putDirectly
/home/runner/work/OpenList/OpenList/internal/fs/put.go:106
github.com/OpenListTeam/OpenList/v4/internal/fs.PutDirectly
/home/runner/work/OpenList/OpenList/internal/fs/fs.go:102
github.com/OpenListTeam/OpenList/v4/server/webdav.(*Handler).handlePut
/home/runner/work/OpenList/OpenList/server/webdav/webdav.go:358
github.com/OpenListTeam/OpenList/v4/server/webdav.(*Handler).ServeHTTP
/home/runner/work/OpenList/OpenList/server/webdav/webdav.go:71
github.com/OpenListTeam/OpenList/v4/server.ServeWebDAV
/home/runner/work/OpenList/OpenList/server/webdav.go:48
github.com/gin-gonic/gin.(*Context).Next
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.1/context.go:185
github.com/OpenListTeam/OpenList/v4/server.WebDav.DownloadRateLimiter.func3
/home/runner/work/OpenList/OpenList/server/middlewares/limit.go:51
github.com/gin-gonic/gin.(*Context).Next
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.1/context.go:185
github.com/OpenListTeam/OpenList/v4/server.WebDav.UploadRateLimiter.func2
/home/runner/work/OpenList/OpenList/server/middlewares/limit.go:28
github.com/gin-gonic/gin.(*Context).Next
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.1/context.go:185
github.com/OpenListTeam/OpenList/v4/server.WebDAVAuth
/home/runner/work/OpenList/OpenList/server/webdav.go:83
github.com/gin-gonic/gin.(*Context).Next
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.1/context.go:185
github.com/OpenListTeam/OpenList/v4/server/middlewares.StoragesLoaded
/home/runner/work/OpenList/OpenList/server/middlewares/check.go:32
github.com/gin-gonic/gin.(*Context).Next
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.1/context.go:185
github.com/gin-gonic/gin.CustomRecoveryWithWriter.func1
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.1/recovery.go:102
github.com/gin-gonic/gin.(*Context).Next
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.1/context.go:185
github.com/gin-gonic/gin.LoggerWithConfig.func1
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.1/logger.go:249
github.com/gin-gonic/gin.(*Context).Next
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.1/context.go:185
github.com/gin-gonic/gin.(*Engine).handleHTTPRequest
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.1/gin.go:644
github.com/gin-gonic/gin.(*Engine).ServeHTTP
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.1/gin.go:600
net/http.serverHandler.ServeHTTP
/opt/hostedtoolcache/go/1.25.0/x64/src/net/http/server.go:3340
net/http.(*conn).serve
/opt/hostedtoolcache/go/1.25.0/x64/src/net/http/server.go:2109
runtime.goexit
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/asm_amd64.s:1693
github.com/OpenListTeam/OpenList/v4/internal/op.Put
/home/runner/work/OpenList/OpenList/internal/op/fs.go:665
github.com/OpenListTeam/OpenList/v4/internal/fs.putDirectly
/home/runner/work/OpenList/OpenList/internal/fs/put.go:106
github.com/OpenListTeam/OpenList/v4/internal/fs.PutDirectly
/home/runner/work/OpenList/OpenList/internal/fs/fs.go:102
github.com/OpenListTeam/OpenList/v4/server/webdav.(*Handler).handlePut
/home/runner/work/OpenList/OpenList/server/webdav/webdav.go:358
github.com/OpenListTeam/OpenList/v4/server/webdav.(*Handler).ServeHTTP
/home/runner/work/OpenList/OpenList/server/webdav/webdav.go:71
github.com/OpenListTeam/OpenList/v4/server.ServeWebDAV
/home/runner/work/OpenList/OpenList/server/webdav.go:48
github.com/gin-gonic/gin.(*Context).Next
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.1/context.go:185
github.com/OpenListTeam/OpenList/v4/server.WebDav.DownloadRateLimiter.func3
/home/runner/work/OpenList/OpenList/server/middlewares/limit.go:51
github.com/gin-gonic/gin.(*Context).Next
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.1/context.go:185
github.com/OpenListTeam/OpenList/v4/server.WebDav.UploadRateLimiter.func2
/home/runner/work/OpenList/OpenList/server/middlewares/limit.go:28
github.com/gin-gonic/gin.(*Context).Next
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.1/context.go:185
github.com/OpenListTeam/OpenList/v4/server.WebDAVAuth
/home/runner/work/OpenList/OpenList/server/webdav.go:83
github.com/gin-gonic/gin.(*Context).Next
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.1/context.go:185
github.com/OpenListTeam/OpenList/v4/server/middlewares.StoragesLoaded
/home/runner/work/OpenList/OpenList/server/middlewares/check.go:32
github.com/gin-gonic/gin.(*Context).Next
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.1/context.go:185
github.com/gin-gonic/gin.CustomRecoveryWithWriter.func1
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.1/recovery.go:102
github.com/gin-gonic/gin.(*Context).Next
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.1/context.go:185
github.com/gin-gonic/gin.LoggerWithConfig.func1
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.1/logger.go:249
github.com/gin-gonic/gin.(*Context).Next
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.1/context.go:185
github.com/gin-gonic/gin.(*Engine).handleHTTPRequest
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.1/gin.go:644
github.com/gin-gonic/gin.(*Engine).ServeHTTP
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.1/gin.go:600
net/http.serverHandler.ServeHTTP
/opt/hostedtoolcache/go/1.25.0/x64/src/net/http/server.go:3340
net/http.(*conn).serve
/opt/hostedtoolcache/go/1.25.0/x64/src/net/http/server.go:2109
runtime.goexit
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/asm_amd64.s:1693

Configuration File Content (required)

Logs (optional)

No response

Reproduction Link (optional)

No response

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with server/webdav/webdav.go:358 and trace the upload through internal/fs/put.go:106, internal/fs/fs.go:102, and drivers/crypt/driver.go:407. Investigate the Quark upload failure reported as EntityTooSmall for part 12, then verify that large WebDAV uploads to the Quark driver complete successfully without that error.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.