alist icon indicating copy to clipboard operation
alist copied to clipboard

复制文件到webdav报错

Open JavanShen opened this issue 10 months ago • 2 comments

Please make sure of the following things

  • [x] I have read the documentation. 我已经阅读了文档

  • [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 ,Dependencies or Operational). 我确定是AList的问题,而不是其他原因(例如网络依赖操作)。

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

AList Version / AList 版本

v3.42.0

Driver used / 使用的存储驱动

webdav

Describe the bug / 问题描述

从其他网盘复制较大文件到webdav,出现错误 panic: close of closed channel,但是查看webdav后发现文件已经复制过去了

Reproduction / 复现链接

暂无

Config / 配置

1panel 默认安装

Logs / 日志

No response

JavanShen avatar Mar 04 '25 05:03 JavanShen

我补充一下日志 ,但我用的是v3.37.4 不确定新版修复了没 确实成功了,不影响使用

[GIN] 2025/03/21 - 20:20:59 | 200 |     108.972µs |    192.168.6.21 | GET      "/api/admin/task/copy/undone"
[GIN] 2025/03/21 - 20:21:01 | 200 |     110.837µs |    192.168.6.21 | GET      "/api/admin/task/copy/undone"
[GIN] 2025/03/21 - 20:21:03 | 200 |      91.357µs |    192.168.6.21 | GET      "/api/admin/task/copy/undone"
[GIN] 2025/03/21 - 20:21:05 | 200 |      99.739µs |    192.168.6.21 | GET      "/api/admin/task/copy/undone"
[GIN] 2025/03/21 - 20:21:06 | 200 |       81.56µs |    192.168.6.21 | POST     "/api/admin/task/copy/retry?tid=Nq_nRFsDz_cZlMlNkSjg3"
2025/03/21 20:21:06 INFO worker execute task worker=0 task=Nq_nRFsDz_cZlMlNkSjg3
[GIN] 2025/03/21 - 20:21:07 | 200 |     111.361µs |    192.168.6.21 | GET      "/api/admin/task/copy/undone"
[GIN] 2025/03/21 - 20:21:09 | 200 |     105.361µs |    192.168.6.21 | GET      "/api/admin/task/copy/undone"
2025/03/21 20:21:10 error [close of closed channel] while run task [Nq_nRFsDz_cZlMlNkSjg3],stack trace:
goroutine 180039 [running]:
github.com/xhofe/tache.getCurrentGoroutineStack(...)
        /go/pkg/mod/github.com/xhofe/[email protected]/utils.go:22
github.com/xhofe/tache.Worker[...].Execute.func2()
        /go/pkg/mod/github.com/xhofe/[email protected]/worker.go:41 +0xa5
panic({0x20fd680?, 0x39eb0e0?})
        /usr/local/go/src/runtime/panic.go:785 +0x132
github.com/alist-org/alist/v3/internal/net.(*downloader).interrupt.func1()
        /source/internal/net/request.go:179 +0x25
github.com/alist-org/alist/v3/internal/net.(*downloader).interrupt(0xc0007664d0)
        /source/internal/net/request.go:184 +0xf1
github.com/alist-org/alist/v3/internal/net.MultiReadCloser.Close(...)
        /source/internal/net/request.go:445
github.com/alist-org/alist/v3/pkg/utils.(*Closers).Close(0x10?)
        /source/pkg/utils/io.go:176 +0x6b
github.com/alist-org/alist/v3/internal/stream.(*FileStream).Close(0xc000314b00)
        /source/internal/stream/stream.go:55 +0x30
github.com/alist-org/alist/v3/internal/op.Put.func1()
        /source/internal/op/fs.go:509 +0x1c
github.com/alist-org/alist/v3/internal/op.Put({0x3a0a0a8, 0xc00196d9a0}, {0x3a16bc8, 0xc000c93080}, {0xc000e4c5b0, 0x64}, {0x3a23740, 0xc000314b00}, 0xc0010c8710, {0xc000051c37, ...})
        /source/internal/op/fs.go:587 +0xea2
github.com/alist-org/alist/v3/internal/fs.copyFileBetween2Storages(0xc0019749c0, {0x3a162d8, 0xc000b0e000}, {0x3a16bc8, 0xc000c93080}, {0xc001976180, 0x7d}, {0xc000e4c5b0, 0x64})
        /source/internal/fs/copy.go:160 +0x546
github.com/alist-org/alist/v3/internal/fs.copyBetween2Storages(0xc0019749c0, {0x3a162d8, 0xc000b0e000}, {0x3a16bc8, 0xc000c93080}, {0xc001976180, 0x7d}, {0xc000e4c5b0, 0x64})
        /source/internal/fs/copy.go:137 +0x36f
github.com/alist-org/alist/v3/internal/fs.(*CopyTask).Run(0xc0019749c0)
        /source/internal/fs/copy.go:49 +0x165
github.com/xhofe/tache.Worker[...].Execute(0x3a0fbc0?, 0xc0019749c0)
        /go/pkg/mod/github.com/xhofe/[email protected]/worker.go:46 +0xf5
github.com/xhofe/tache.(*Manager[...]).next.func1()
        /go/pkg/mod/github.com/xhofe/[email protected]/manager.go:134 +0x230
created by github.com/xhofe/tache.(*Manager[...]).next in goroutine 178280
        /go/pkg/mod/github.com/xhofe/[email protected]/manager.go:115 +0x239
2025/03/21 20:21:10 INFO worker execute task worker=4 task=Nq_nRFsDz_cZlMlNkSjg3
[GIN] 2025/03/21 - 20:21:11 | 200 |     102.262µs |    192.168.6.21 | GET      "/api/admin/task/copy/undone"
[GIN] 2025/03/21 - 20:21:13 | 200 |      92.563µs |    192.168.6.21 | GET      "/api/admin/task/copy/undone"
[GIN] 2025/03/21 - 20:21:15 | 200 |     101.319µs |    192.168.6.21 | GET      "/api/admin/task/copy/undone"
[GIN] 2025/03/21 - 20:21:17 | 200 |     111.026µs |    192.168.6.21 | GET      "/api/admin/task/copy/undone"
2025/03/21 20:21:18 error [close of closed channel] while run task [Nq_nRFsDz_cZlMlNkSjg3],stack trace:
goroutine 180128 [running]:
github.com/xhofe/tache.getCurrentGoroutineStack(...)
        /go/pkg/mod/github.com/xhofe/[email protected]/utils.go:22
github.com/xhofe/tache.Worker[...].Execute.func2()
        /go/pkg/mod/github.com/xhofe/[email protected]/worker.go:41 +0xa5
panic({0x20fd680?, 0x39eb0e0?})
        /usr/local/go/src/runtime/panic.go:785 +0x132
github.com/alist-org/alist/v3/internal/net.(*downloader).interrupt.func1()
        /source/internal/net/request.go:179 +0x25
github.com/alist-org/alist/v3/internal/net.(*downloader).interrupt(0xc0007668f0)
        /source/internal/net/request.go:184 +0xf1
github.com/alist-org/alist/v3/internal/net.MultiReadCloser.Close(...)
        /source/internal/net/request.go:445
github.com/alist-org/alist/v3/pkg/utils.(*Closers).Close(0x10?)
        /source/pkg/utils/io.go:176 +0x6b
github.com/alist-org/alist/v3/internal/stream.(*FileStream).Close(0xc0007666e0)
        /source/internal/stream/stream.go:55 +0x30
github.com/alist-org/alist/v3/internal/op.Put.func1()
        /source/internal/op/fs.go:509 +0x1c
github.com/alist-org/alist/v3/internal/op.Put({0x3a0a0a8, 0xc00196d9a0}, {0x3a16bc8, 0xc000c93080}, {0xc000e4c5b0, 0x64}, {0x3a23740, 0xc0007666e0}, 0xc00119a4e0, {0xc000d59c37, ...})
        /source/internal/op/fs.go:587 +0xea2
github.com/alist-org/alist/v3/internal/fs.copyFileBetween2Storages(0xc0019749c0, {0x3a162d8, 0xc000b0e000}, {0x3a16bc8, 0xc000c93080}, {0xc001976180, 0x7d}, {0xc000e4c5b0, 0x64})
        /source/internal/fs/copy.go:160 +0x546
github.com/alist-org/alist/v3/internal/fs.copyBetween2Storages(0xc0019749c0, {0x3a162d8, 0xc000b0e000}, {0x3a16bc8, 0xc000c93080}, {0xc001976180, 0x7d}, {0xc000e4c5b0, 0x64})
        /source/internal/fs/copy.go:137 +0x36f
github.com/alist-org/alist/v3/internal/fs.(*CopyTask).Run(0xc0019749c0)
        /source/internal/fs/copy.go:49 +0x165
github.com/xhofe/tache.Worker[...].Execute(0x3a0fbc0?, 0xc0019749c0)
        /go/pkg/mod/github.com/xhofe/[email protected]/worker.go:46 +0xf5
github.com/xhofe/tache.(*Manager[...]).next.func1()
        /go/pkg/mod/github.com/xhofe/[email protected]/manager.go:134 +0x230
created by github.com/xhofe/tache.(*Manager[...]).next in goroutine 180039
        /go/pkg/mod/github.com/xhofe/[email protected]/manager.go:115 +0x239
2025/03/21 20:21:18 INFO worker execute task worker=2 task=Nq_nRFsDz_cZlMlNkSjg3
[GIN] 2025/03/21 - 20:21:19 | 200 |     110.393µs |    192.168.6.21 | GET      "/api/admin/task/copy/undone"
2025/03/21 20:21:21 error [close of closed channel] while run task [Nq_nRFsDz_cZlMlNkSjg3],stack trace:
goroutine 180184 [running]:
github.com/xhofe/tache.getCurrentGoroutineStack(...)
        /go/pkg/mod/github.com/xhofe/[email protected]/utils.go:22
github.com/xhofe/tache.Worker[...].Execute.func2()
        /go/pkg/mod/github.com/xhofe/[email protected]/worker.go:41 +0xa5
panic({0x20fd680?, 0x39eb0e0?})
        /usr/local/go/src/runtime/panic.go:785 +0x132
github.com/alist-org/alist/v3/internal/net.(*downloader).interrupt.func1()
        /source/internal/net/request.go:179 +0x25
github.com/alist-org/alist/v3/internal/net.(*downloader).interrupt(0xc000766790)
        /source/internal/net/request.go:184 +0xf1
github.com/alist-org/alist/v3/internal/net.MultiReadCloser.Close(...)
        /source/internal/net/request.go:445
github.com/alist-org/alist/v3/pkg/utils.(*Closers).Close(0x10?)
        /source/pkg/utils/io.go:176 +0x6b
github.com/alist-org/alist/v3/internal/stream.(*FileStream).Close(0xc000aca0b0)
        /source/internal/stream/stream.go:55 +0x30
github.com/alist-org/alist/v3/internal/op.Put.func1()
        /source/internal/op/fs.go:509 +0x1c
github.com/alist-org/alist/v3/internal/op.Put({0x3a0a0a8, 0xc00196d9a0}, {0x3a16bc8, 0xc000c93080}, {0xc000e4c5b0, 0x64}, {0x3a23740, 0xc000aca0b0}, 0xc0005d8a90, {0xc000051c37, ...})
        /source/internal/op/fs.go:587 +0xea2
github.com/alist-org/alist/v3/internal/fs.copyFileBetween2Storages(0xc0019749c0, {0x3a162d8, 0xc000b0e000}, {0x3a16bc8, 0xc000c93080}, {0xc001976180, 0x7d}, {0xc000e4c5b0, 0x64})
        /source/internal/fs/copy.go:160 +0x546
github.com/alist-org/alist/v3/internal/fs.copyBetween2Storages(0xc0019749c0, {0x3a162d8, 0xc000b0e000}, {0x3a16bc8, 0xc000c93080}, {0xc001976180, 0x7d}, {0xc000e4c5b0, 0x64})
        /source/internal/fs/copy.go:137 +0x36f
github.com/alist-org/alist/v3/internal/fs.(*CopyTask).Run(0xc0019749c0)
        /source/internal/fs/copy.go:49 +0x165
github.com/xhofe/tache.Worker[...].Execute(0x3a0fbc0?, 0xc0019749c0)
        /go/pkg/mod/github.com/xhofe/[email protected]/worker.go:46 +0xf5
github.com/xhofe/tache.(*Manager[...]).next.func1()
        /go/pkg/mod/github.com/xhofe/[email protected]/manager.go:134 +0x230
created by github.com/xhofe/tache.(*Manager[...]).next in goroutine 180128
        /go/pkg/mod/github.com/xhofe/[email protected]/manager.go:115 +0x239
[GIN] 2025/03/21 - 20:21:21 | 200 |      84.044µs |    192.168.6.21 | GET      "/api/admin/task/copy/undone"
[GIN] 2025/03/21 - 20:21:23 | 200 |     113.228µs |    192.168.6.21 | GET      "/api/admin/task/copy/undone"
[GIN] 2025/03/21 - 20:21:25 | 200 |      93.243µs |    192.168.6.21 | GET      "/api/admin/task/copy/undone"
[GIN] 2025/03/21 - 20:21:27 | 200 |      90.828µs |    192.168.6.21 | GET      "/api/admin/task/copy/undone"
[GIN] 2025/03/21 - 20:21:29 | 200 |      84.414µs |    192.168.6.21 | GET      "/api/admin/task/copy/undone"
[GIN] 2025/03/21 - 20:21:31 | 200 |      96.469µs |    192.168.6.21 | GET      "/api/admin/task/copy/undone"
[GIN] 2025/03/21 - 20:21:33 | 200 |      96.047µs |    192.168.6.21 | GET      "/api/admin/task/copy/undone"
[GIN] 2025/03/21 - 20:21:35 | 200 |      91.204µs |    192.168.6.21 | GET      "/api/admin/task/copy/undone"
[GIN] 2025/03/21 - 20:21:37 | 200 |      89.253µs |    192.168.6.21 | GET      "/api/admin/task/copy/undone"
[GIN] 2025/03/21 - 20:21:39 | 200 |     115.483µs |    192.168.6.21 | GET      "/api/admin/task/copy/undone"
[GIN] 2025/03/21 - 20:21:41 | 200 |     122.773µs |    192.168.6.21 | GET      "/api/admin/task/copy/undone"

yegetables avatar Mar 21 '25 12:03 yegetables

版本 3.45.0,从夸克网盘复制到本地 WebDAV 时 100% 必现,下载完后又报错 close of closed channel , 而且还不停止继续从 0 开始下载一遍再停止

peakchen90 avatar May 30 '25 15:05 peakchen90