AlistGo / AlistGo/alist

slice bounds out of range

Aperta
#8,382 4 commenti 0 reazioni 0 assegnatari Vedi su GitHub
bug
Lingua principale
Go
Stelle
50.2k
Fork
7.9k
Merge medio
7g 21h
PR unite (30g)
6

Descrizione

### Please make sure of the following things

- [x] I have read the [documentation](https://alist.nn.ci).
我已经阅读了[文档](https://alist.nn.ci)。

- [x] I'm sure there are no duplicate issues or discussions.
我确定没有重复的issue或讨论。

- [x] I'm sure it's due to `AList` and not something else(such as [Network](https://alist.nn.ci/faq/howto.html#tls-handshake-timeout-read-connection-reset-by-peer-dns-lookup-failed-connect-connection-refused-client-timeout-exceeded-while-awaiting-headers-no-such-host) ,`Dependencies` or `Operational`).
我确定是`AList`的问题,而不是其他原因(例如[网络](https://alist.nn.ci/zh/faq/howto.html#tls-handshake-timeout-read-connection-reset-by-peer-dns-lookup-failed-connect-connection-refused-client-timeout-exceeded-while-awaiting-headers-no-such-host),`依赖`或`操作`)。

- [x] I'm sure this issue is not fixed in the latest version.
我确定这个问题在最新版本中没有被修复。

### AList Version / AList 版本

v3.44.0

### Driver used / 使用的存储驱动

115

### Describe the bug / 问题描述

通过群晖hyperbackup进行本地数据备份,一般会卡在备份synology photos套件数据的时候报错,备份的目的地为webdav-alist-115。备份可以形成一定的进度,但是经过一段时间后会提示目的地不存在。查询alist日志报错slice。
经过查询issue似乎从23年有包括天翼云、115等不同存储都有类似的问题,但是似乎并未有明确的解决方案。

![Image](https://github.com/user-attachments/assets/7a57f5a8-8b0a-4733-9eac-47966af6a970)

### Reproduction / 复现链接

通过群晖实现

### Config / 配置

![Image](https://github.com/user-attachments/assets/3a38ecad-4dae-44e3-993a-6958f8dea14e)

![Image](https://github.com/user-attachments/assets/7add441e-1905-441e-b3d4-dc2b65b7801b)

![Image](https://github.com/user-attachments/assets/36452d54-f4a4-4c0d-a840-de762c8179bb)

### Logs / 日志

[GIN] 2025/04/15 - 13:42:49 | 207 | 173.269µs | 192.168.2.12 | PROPFIND "/dav/backup/DF-DS920.hbk/_Syno_TaskConfig"
[GIN] 2025/04/15 - 13:43:01 | 200 | 102.771µs | 192.168.2.1 | GET "/"
[GIN] 2025/04/15 - 13:43:21 | 201 | 35.620432937s | 192.168.2.12 | PUT "/dav/backup/DF-DS920.hbk/Pool/0/0/55.bucket.2"
ERRO[2025-04-15 13:43:21] failed put /115/backup/DF-DS920.hbk/Pool/0/0: runtime error: slice bounds out of range [:16945] with capacity 144
github.com/alist-org/alist/v3/internal/op.Put
/home/runner/work/alist/alist/internal/op/fs.go:587
github.com/alist-org/alist/v3/internal/fs.putDirectly
/home/runner/work/alist/alist/internal/fs/put.go:80
github.com/alist-org/alist/v3/internal/fs.PutDirectly
/home/runner/work/alist/alist/internal/fs/fs.go:101
github.com/alist-org/alist/v3/server/webdav.(*Handler).handlePut
/home/runner/work/alist/alist/server/webdav/webdav.go:340
github.com/alist-org/alist/v3/server/webdav.(*Handler).ServeHTTP
/home/runner/work/alist/alist/server/webdav/webdav.go:66
github.com/alist-org/alist/v3/server.ServeWebDAV
/home/runner/work/alist/alist/server/webdav.go:49
github.com/gin-gonic/gin.(*Context).Next
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/context.go:185
github.com/alist-org/alist/v3/server.WebDav.DownloadRateLimiter.func3
/home/runner/work/alist/alist/server/middlewares/limit.go:50
github.com/gin-gonic/gin.(*Context).Next
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/context.go:185
github.com/alist-org/alist/v3/server.WebDav.UploadRateLimiter.func2
/home/runner/work/alist/alist/server/middlewares/limit.go:27
github.com/gin-gonic/gin.(*Context).Next
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/context.go:185
github.com/alist-org/alist/v3/server.WebDAVAuth
/home/runner/work/alist/alist/server/webdav.go:131
github.com/gin-gonic/gin.(*Context).Next
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/context.go:185
github.com/alist-org/alist/v3/server/middlewares.StoragesLoaded
/home/runner/work/alist/alist/server/middlewares/check.go:14
github.com/gin-gonic/gin.(*Context).Next
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/context.go:185
github.com/gin-gonic/gin.CustomRecoveryWithWriter.func1
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/recovery.go:102
github.com/gin-gonic/gin.(*Context).Next
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/context.go:185
github.com/gin-gonic/gin.LoggerWithConfig.func1
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/logger.go:249
github.com/gin-gonic/gin.(*Context).Next
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/context.go:185
github.com/gin-gonic/gin.(*Engine).handleHTTPRequest
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/gin.go:633
github.com/gin-gonic/gin.(*Engine).ServeHTTP
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/gin.go:589
net/http.serverHandler.ServeHTTP
/home/runner/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.23.4.linux-amd64/src/net/http/server.go:3210
net/http.(*conn).serve
/home/runner/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.23.4.linux-amd64/src/net/http/server.go:2092
runtime.goexit
/home/runner/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.23.4.linux-amd64/src/runtime/asm_amd64.s:1700
ERRO[2025-04-15 13:43:21] PUT /dav/backup/DF-DS920.hbk/Pool/0/0/55.index.2 runtime error: slice bounds out of range [:16945] with capacity 144
github.com/alist-org/alist/v3/internal/op.Put
/home/runner/work/alist/alist/internal/op/fs.go:587
github.com/alist-org/alist/v3/internal/fs.putDirectly
/home/runner/work/alist/alist/internal/fs/put.go:80
github.com/alist-org/alist/v3/internal/fs.PutDirectly
/home/runner/work/alist/alist/internal/fs/fs.go:101
github.com/alist-org/alist/v3/server/webdav.(*Handler).handlePut
/home/runner/work/alist/alist/server/webdav/webdav.go:340
github.com/alist-org/alist/v3/server/webdav.(*Handler).ServeHTTP
/home/runner/work/alist/alist/server/webdav/webdav.go:66
github.com/alist-org/alist/v3/server.ServeWebDAV
/home/runner/work/alist/alist/server/webdav.go:49
github.com/gin-gonic/gin.(*Context).Next
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/context.go:185
github.com/alist-org/alist/v3/server.WebDav.DownloadRateLimiter.func3
/home/runner/work/alist/alist/server/middlewares/limit.go:50
github.com/gin-gonic/gin.(*Context).Next
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/context.go:185
github.com/alist-org/alist/v3/server.WebDav.UploadRateLimiter.func2
/home/runner/work/alist/alist/server/middlewares/limit.go:27
github.com/gin-gonic/gin.(*Context).Next
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/context.go:185
github.com/alist-org/alist/v3/server.WebDAVAuth
/home/runner/work/alist/alist/server/webdav.go:131
github.com/gin-gonic/gin.(*Context).Next
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/context.go:185
github.com/alist-org/alist/v3/server/middlewares.StoragesLoaded
/home/runner/work/alist/alist/server/middlewares/check.go:14
github.com/gin-gonic/gin.(*Context).Next
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/context.go:185
github.com/gin-gonic/gin.CustomRecoveryWithWriter.func1
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/recovery.go:102
github.com/gin-gonic/gin.(*Context).Next
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/context.go:185
github.com/gin-gonic/gin.LoggerWithConfig.func1
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/logger.go:249
github.com/gin-gonic/gin.(*Context).Next
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/context.go:185
github.com/gin-gonic/gin.(*Engine).handleHTTPRequest
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/gin.go:633
github.com/gin-gonic/gin.(*Engine).ServeHTTP
/home/runner/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/gin.go:589
net/http.serverHandler.ServeHTTP
/home/runner/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.23.4.linux-amd64/src/net/http/server.go:3210
net/http.(*conn).serve
/home/runner/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.23.4.linux-amd64/src/net/http/server.go:2092
runtime.goexit
/home/runner/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.23.4.linux-amd64/src/runtime/asm_amd64.s:1700

Guida per i contributori

Apri la guida per i contributori

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.