AlistGo / AlistGo/alist

slice bounds out of range

Abierto
#8,382 4 comentarios 0 reacciones 0 asignados Ver en GitHub
bug
Lenguaje dominante
Go
Estrellas
50.2k
Forks
7.9k
Merge medio
7 d 21 h
PR fusionados (30 d)
6

Descripción

### 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

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.