slice bounds out of range
- 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等不同存储都有类似的问题,但是似乎并未有明确的解决方案。

### Reproduction / 复现链接
通过群晖实现
### Config / 配置



### 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
Evaluación
Este issue todavía no se ha evaluado.