Please make sure of the following things
AList Version / AList 版本
v3.29.1
Driver used / 使用的存储驱动
百度网盘
Describe the bug / 问题描述
分几种情况讨论:
- 百度网盘上传线程数设置为1,同时上传一个文件,一切正常
- 百度网盘上传线程数设置为1,同时上传多个文件,一切正常
- 百度网盘上传线程数设置为3,同时上传一个文件,有一定概率出错:报错为{"error_code":31299, "error_msg":"Invalid param keylist"}(partseq>=1的情况)或{"error_code":31299, "error_msg":"Invalid param size"} (partseq == 0的情况)
- 百度网盘上传线程数设置为3,同时上传多个文件,几乎肯定出错:报错同上。
我是百度网盘VIP,所以chunksize为32MB,不知道在4MB的情况下是否也存在同样问题。
Reproduction / 复现链接
找两个大小差不多的文件同时进行上传,文件大小超过一个分片即可复现,最好用几百M~1G的,方便复现,我是使用rclone进行同步时复现的:
.\rclone.exe sync D:\Data\Backup\Test Alist:/baiduDisk/try/test -P --local-encoding None --timeout=1h --transfers=2
Config / 配置
全是默认配置,云盘驱动也都是默认配置。
Logs / 日志
�[37mDEBU�[0m[2023-12-02 08:38:57]/var/www/alist/drivers/baidu_netdisk/driver.go:317 github.com/alist-org/alist/v3/drivers/baidu_netdisk.(*BaiduNetdisk).uploadSlice() 400 Bad Request{"error_code":31299, "error_msg":"Invalid param keylist"}
�[37mDEBU�[0m[2023-12-02 08:39:15]/var/www/alist/drivers/baidu_netdisk/driver.go:317 github.com/alist-org/alist/v3/drivers/baidu_netdisk.(*BaiduNetdisk).uploadSlice() 400 Bad Request{"error_code":31299, "error_msg":"Invalid param keylist"}
�[37mDEBU�[0m[2023-12-02 08:39:15]/var/www/alist/drivers/baidu_netdisk/driver.go:317 github.com/alist-org/alist/v3/drivers/baidu_netdisk.(*BaiduNetdisk).uploadSlice() 400 Bad Request{"error_code":31299, "error_msg":"Invalid param keylist"}
�[37mDEBU�[0m[2023-12-02 08:39:16]/var/www/alist/drivers/baidu_netdisk/driver.go:317 github.com/alist-org/alist/v3/drivers/baidu_netdisk.(*BaiduNetdisk).uploadSlice() 400 Bad Request{"error_code":31299, "error_msg":"Invalid param keylist"}
�[37mDEBU�[0m[2023-12-02 08:39:16]/var/www/alist/drivers/baidu_netdisk/driver.go:317 github.com/alist-org/alist/v3/drivers/baidu_netdisk.(*BaiduNetdisk).uploadSlice() 400 Bad Request{"error_code":31299, "error_msg":"Invalid param keylist"}
�[37mDEBU�[0m[2023-12-02 08:39:16]/var/www/alist/drivers/baidu_netdisk/driver.go:317 github.com/alist-org/alist/v3/drivers/baidu_netdisk.(*BaiduNetdisk).uploadSlice() 400 Bad Request{"error_code":31299, "error_msg":"Invalid param size"}
�[37mDEBU�[0m[2023-12-02 08:39:29]/var/www/alist/drivers/baidu_netdisk/driver.go:317 github.com/alist-org/alist/v3/drivers/baidu_netdisk.(*BaiduNetdisk).uploadSlice() 400 Bad Request{"error_code":31299, "error_msg":"Invalid param keylist"}
�[37mDEBU�[0m[2023-12-02 08:39:46]/var/www/alist/drivers/baidu_netdisk/driver.go:317 github.com/alist-org/alist/v3/drivers/baidu_netdisk.(*BaiduNetdisk).uploadSlice() 400 Bad Request{"error_code":31299, "error_msg":"Invalid param keylist"}
�[37mDEBU�[0m[2023-12-02 08:39:47]/var/www/alist/drivers/baidu_netdisk/driver.go:317 github.com/alist-org/alist/v3/drivers/baidu_netdisk.(*BaiduNetdisk).uploadSlice() 400 Bad Request{"error_code":31299, "error_msg":"Invalid param keylist"}
�[37mDEBU�[0m[2023-12-02 08:39:48]/var/www/alist/drivers/baidu_netdisk/driver.go:317 github.com/alist-org/alist/v3/drivers/baidu_netdisk.(*BaiduNetdisk).uploadSlice() 400 Bad Request{"error_code":31299, "error_msg":"Invalid param keylist"}
�[37mDEBU�[0m[2023-12-02 08:39:48]/var/www/alist/drivers/baidu_netdisk/driver.go:317 github.com/alist-org/alist/v3/drivers/baidu_netdisk.(*BaiduNetdisk).uploadSlice() 400 Bad Request{"error_code":31299, "error_msg":"Invalid param size"}
�[37mDEBU�[0m[2023-12-02 08:39:48]/var/www/alist/drivers/baidu_netdisk/driver.go:317 github.com/alist-org/alist/v3/drivers/baidu_netdisk.(*BaiduNetdisk).uploadSlice() 400 Bad Request{"error_code":31299, "error_msg":"Invalid param keylist"}
简单跟了下源码,开启resty的debug设置后发现这部分请求其实没有读到文件。
正常情况下的resty debug log:
2023/12/02 08:38:45.385910 DEBUG RESTY
==============================================================================
~~~ REQUEST ~~~
POST /rest/2.0/pcs/superfile2?access_token=121.xxx&method=upload&partseq=0&path=xxx.mp4&type=tmpfile&uploadid=xxx HTTP/1.1
HOST : d.pcs.baidu.com
HEADERS:
Content-Type: multipart/form-data; boundary=f71ef1962e4331d741886c8e4214ea4abb4f3a9273ef6bb540f43e736532
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36
BODY :
***** REQUEST TOO LARGE (size - 33554664) *****
------------------------------------------------------------------------------
异常情况下的resty debug log:
2023/12/02 08:38:57.453717 DEBUG RESTY
==============================================================================
~~~ REQUEST ~~~
POST /rest/2.0/pcs/superfile2?access_token=121xxx&method=upload&partseq=1&path=xxx.mp4&type=tmpfile&uploadid=xxx HTTP/1.1
HOST : d.pcs.baidu.com
HEADERS:
Content-Type: multipart/form-data; boundary=b0ad7b4e3bdb41b92edde1b08b3da76c57c0b05e716ee12a64b9d08104e8
Cookie: BAIDUID=xxx; BAIDUID_BFESS=xxx; BAIDUID=xxx; BAIDUID_BFESS=5xxx
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36
BODY :
--b0ad7b4e3bdb41b92edde1b08b3da76c57c0b05e716ee12a64b9d08104e8
Content-Disposition: form-data; name="file"; filename="xxx.mp4"
Content-Type: application/octet-stream
--b0ad7b4e3bdb41b92edde1b08b3da76c57c0b05e716ee12a64b9d08104e8--
------------------------------------------------------------------------------
Please make sure of the following things
I have read the documentation.
我已经阅读了文档。
I'm sure there are no duplicate issues or discussions.
我确定没有重复的issue或讨论。
I'm sure it's due to
AListand not something else(such as Network ,DependenciesorOperational).我确定是
AList的问题,而不是其他原因(例如网络,依赖或操作)。I'm sure this issue is not fixed in the latest version.
我确定这个问题在最新版本中没有被修复。
AList Version / AList 版本
v3.29.1
Driver used / 使用的存储驱动
百度网盘
Describe the bug / 问题描述
分几种情况讨论:
我是百度网盘VIP,所以chunksize为32MB,不知道在4MB的情况下是否也存在同样问题。
Reproduction / 复现链接
找两个大小差不多的文件同时进行上传,文件大小超过一个分片即可复现,最好用几百M~1G的,方便复现,我是使用rclone进行同步时复现的:
.\rclone.exe sync D:\Data\Backup\Test Alist:/baiduDisk/try/test -P --local-encoding None --timeout=1h --transfers=2Config / 配置
全是默认配置,云盘驱动也都是默认配置。
Logs / 日志
�[37mDEBU�[0m[2023-12-02 08:38:57]/var/www/alist/drivers/baidu_netdisk/driver.go:317 github.com/alist-org/alist/v3/drivers/baidu_netdisk.(*BaiduNetdisk).uploadSlice() 400 Bad Request{"error_code":31299, "error_msg":"Invalid param keylist"}
�[37mDEBU�[0m[2023-12-02 08:39:15]/var/www/alist/drivers/baidu_netdisk/driver.go:317 github.com/alist-org/alist/v3/drivers/baidu_netdisk.(*BaiduNetdisk).uploadSlice() 400 Bad Request{"error_code":31299, "error_msg":"Invalid param keylist"}
�[37mDEBU�[0m[2023-12-02 08:39:15]/var/www/alist/drivers/baidu_netdisk/driver.go:317 github.com/alist-org/alist/v3/drivers/baidu_netdisk.(*BaiduNetdisk).uploadSlice() 400 Bad Request{"error_code":31299, "error_msg":"Invalid param keylist"}
�[37mDEBU�[0m[2023-12-02 08:39:16]/var/www/alist/drivers/baidu_netdisk/driver.go:317 github.com/alist-org/alist/v3/drivers/baidu_netdisk.(*BaiduNetdisk).uploadSlice() 400 Bad Request{"error_code":31299, "error_msg":"Invalid param keylist"}
�[37mDEBU�[0m[2023-12-02 08:39:16]/var/www/alist/drivers/baidu_netdisk/driver.go:317 github.com/alist-org/alist/v3/drivers/baidu_netdisk.(*BaiduNetdisk).uploadSlice() 400 Bad Request{"error_code":31299, "error_msg":"Invalid param keylist"}
�[37mDEBU�[0m[2023-12-02 08:39:16]/var/www/alist/drivers/baidu_netdisk/driver.go:317 github.com/alist-org/alist/v3/drivers/baidu_netdisk.(*BaiduNetdisk).uploadSlice() 400 Bad Request{"error_code":31299, "error_msg":"Invalid param size"}
�[37mDEBU�[0m[2023-12-02 08:39:29]/var/www/alist/drivers/baidu_netdisk/driver.go:317 github.com/alist-org/alist/v3/drivers/baidu_netdisk.(*BaiduNetdisk).uploadSlice() 400 Bad Request{"error_code":31299, "error_msg":"Invalid param keylist"}
�[37mDEBU�[0m[2023-12-02 08:39:46]/var/www/alist/drivers/baidu_netdisk/driver.go:317 github.com/alist-org/alist/v3/drivers/baidu_netdisk.(*BaiduNetdisk).uploadSlice() 400 Bad Request{"error_code":31299, "error_msg":"Invalid param keylist"}
�[37mDEBU�[0m[2023-12-02 08:39:47]/var/www/alist/drivers/baidu_netdisk/driver.go:317 github.com/alist-org/alist/v3/drivers/baidu_netdisk.(*BaiduNetdisk).uploadSlice() 400 Bad Request{"error_code":31299, "error_msg":"Invalid param keylist"}
�[37mDEBU�[0m[2023-12-02 08:39:48]/var/www/alist/drivers/baidu_netdisk/driver.go:317 github.com/alist-org/alist/v3/drivers/baidu_netdisk.(*BaiduNetdisk).uploadSlice() 400 Bad Request{"error_code":31299, "error_msg":"Invalid param keylist"}
�[37mDEBU�[0m[2023-12-02 08:39:48]/var/www/alist/drivers/baidu_netdisk/driver.go:317 github.com/alist-org/alist/v3/drivers/baidu_netdisk.(*BaiduNetdisk).uploadSlice() 400 Bad Request{"error_code":31299, "error_msg":"Invalid param size"}
�[37mDEBU�[0m[2023-12-02 08:39:48]/var/www/alist/drivers/baidu_netdisk/driver.go:317 github.com/alist-org/alist/v3/drivers/baidu_netdisk.(*BaiduNetdisk).uploadSlice() 400 Bad Request{"error_code":31299, "error_msg":"Invalid param keylist"}
简单跟了下源码,开启resty的debug设置后发现这部分请求其实没有读到文件。
正常情况下的resty debug log:
异常情况下的resty debug log: