Open yoshyv opened 5 months ago
奇怪,重新生成了个不同体积的文件测试。用 -m 可以上传
难道每个上传失败的文件会被记录 sha1,以后无论用 -u 还是 -m 都会上传失败么? 用 -m 失败后服务端会保存多久的上传断点信息呢?等到这个过期后重新上传才行么?
测试了几个大体积真实文件。超过30G的文件 前几天能使用 -u 正常上传,现在会上面错。 使用 -m 能正常上传,但是分片设置 2 的情况比 -u 时候上传速度慢很多。
如果使用 -parts-num 1 会一样报错,并且之后使用更多分片也无法上传,会一直报上面一样的错。
请问这个问题能复现么?
现在我也不用115了,不清楚什么情况
能问下你现在用什么替代115么。115这么廉价的空间貌似没有第二家了吧。 pikpak 虽然也挺便宜但是超过10TB以后太贵了。
能问下你现在用什么替代115么。115这么廉价的空间貌似没有第二家了吧。 pikpak 虽然也挺便宜但是超过10TB以后太贵了。
不清楚,现在我没怎么用网盘了
{Endpoint:http://oss-cn-shenzhen.aliyuncs.com GetTokenURL:https://uplb.115.com/3.0/gettoken.php}
2024/04/13 02:16:31 OSS token的值:
&{StatusCode:200 AccessKeySecret: SecurityToken: Expiration:2024-04-13T03:16:30Z AccessKeyID: endpoint:http://oss-cn-shenzhen.aliyuncs.com}
按q键停止上传并退出程序,断点续传模式会自动保存上传进度
0 B / 32.31 GiB [____________________________________________________________________________________] 0.00% ? p/s ?2024/04/13 02:16:31 上传 recording.mp4 的第1个分片时出现错误:oss: service returned error: StatusCode=400, ErrorCode=EntityTooLarge, ErrorMessage="Your proposed upload exceeds the maximum allowed size.", RequestId=
2024/04/13 02:16:31 尝试重新上传第1个分片
160.00 KiB / 32.31 GiB [>_______________________________________________________] 0.00% 266.99 KiB p/s ETA 35h14m49s2024/04/13 02:16:31 上传 recording.mp4 的第1个分片时出现错误:oss: service returned error: StatusCode=400, ErrorCode=EntityTooLarge, ErrorMessage="Your proposed upload exceeds the maximum allowed size.", RequestId=
2024/04/13 02:16:31 尝试重新上传第1个分片
320.00 KiB / 32.31 GiB [>_______________________________________________________] 0.00% 266.99 KiB p/s ETA 35h14m48s2024/04/13 02:16:32 上传 recording.mp4 的第1个分片时出现错误:oss: service returned error: StatusCode=400, ErrorCode=EntityTooLarge, ErrorMessage="Your proposed upload exceeds the maximum allowed size.", RequestId=
480.00 KiB / 32.31 GiB [>________________________________________________________________] 0.00% 440.43 KiB p/s 1.3s
2024/04/13 02:16:32 正在保存 recording.mp4 的上传进度,存档文件是 /home/upload/recording.mp4.json
上传成功的文件(0):
上传失败的文件(0):
保存上传进度的文件(1):
recording.mp4
今天发现上传30多g文件 使用 -m 多分片上传时候也会同样报错了。可能报错和具体文件相关?并不一定只是文件体积大?
不知道有没其他用户最近遇到这个问题。
更新:测试 fallocate 生成文件,30多g也直接报错。不知道大体积文件还有什么上传办法没了 16多G的文件确认可以 -u 上传。 推测 -u 的上限 20G。
2024/04/12 22:49:34 秒传模式上传文件 RC-Apr_12.mp4 的响应体的内容是:
{"request":"upload","status":1,"statuscode":0,"statusmsg":"","pickcode":"","target":"","version":"4.0","bucket":"fhnfile","object":"","callback":{"callback":"{\"callbackUrl\":\"http:\/\/uplb.115.com\/3.0\/completeupload.php\",\"callbackBody\":\"bucket=${bucket}&object=${object}&size=${size}&sha1=${sha1}&pick_code=${x:pick_code}&user_id=${x:user_id}&behavior_type=${x:behavior_type}&source=${x:source}&target=${x:target}&task_uid=${x:task_uid}\"}","callback_var":"{\"x:pick_code\":\"\",\"x:user_id\":\"\",\"x:behavior_type\":\"0\",\"x:source\":\"5\",\"x:target\":\"U_1_0\",\"x:task_uid\":\"\"}"}}
2024/04/12 22:49:34 秒传模式上传 RC-Apr_12.mp4 失败返回的内容是:
&{Request:upload Status:1 StatusCode:0 StatusMsg: PickCode: Target: Version:4.0 Bucket:fhnfile Object: Callback:{Callback:{"callbackUrl":"http://uplb.115.com/3.0/completeupload.php","callbackBody":"bucket=${bucket}&object=${object}&size=${size}&sha1=${sha1}&pick_code=${x:pick_code}&user_id=${x:user_id}&behavior_type=${x:behavior_type}&source=${x:source}&target=${x:target}&task_uid=${x:task_uid}"} CallbackVar:{"x:pick_code":"","x:user_id":"","x:behavior_type":"0","x:source":"5","x:target":"U_1_0","x:task_uid":""}} SHA1:}
2024/04/12 22:49:34 秒传模式上传 RC-Apr_12.mp4 出现错误:秒传模式上传 RC-Apr_12.mp4 失败
2024/04/12 22:49:34 现在开始使用普通模式上传 RC-Apr_12.mp4
2024/04/12 22:49:34 普通模式上传文件:RC-Apr_12.mp4
2024/04/12 22:49:34 info的值:
{Endpoint:http://oss-cn-shenzhen.aliyuncs.com GetTokenURL:https://uplb.115.com/3.0/gettoken.php}
2024/04/12 22:49:34 OSS token的值:
&{StatusCode:200 AccessKeySecret: Expiration:2024-04-13T03:49:34Z AccessKeyID: endpoint:http://oss-cn-shenzhen.aliyuncs.com}
按q键停止上传并退出程序
1.52 GiB / 16.83 GiB [----->_________________________________________________________] 9.02% 31.50 MiB p/s ETA 8m17s
再更:重新生成更大体积的随机文件。使用-m,增加 -parts-num 的值到20后可以正常上传。但是之前的出错文件无论怎么提高分片数,删除保存进度文件短期内均没法上传。不知道多久后能重新上传该文件(3天前OP里出错的文件,现在可以上传了=最多等3天?) 推测现在分片数要根据文件体积增加。目前不知道具体每增加多少GB需增加一个分片才能正常上传(不会触发短期无法上传问题)。根据前几天非 -v 报错,最大 post 体积 5G,是否可以推测每5G需要加1分片(待验证?)
同时发现 -m -parts-num 1 比 -u 要慢很多。(国外网络环境测试)5分片才能和 -u 速度相当。 想请教下懂阿里云oss的大佬们 -m 比 -u 慢的原因。 此外,5分片同时上传2个文件速度比单文件10片段上传速度要高一倍,说明5分片未吃满上传速度上限。为什么10分片单文件怎么没法达到2个5分片上传速度呢? 最后希望有知道内幕的大佬透露下最近这个限制是何时开始的?是阿里云oss的限制还是115本身的限制,如果是后者的话会不会说明115本身资金不够了 - -
非要设置分片吗?正常情况是会自动分片的
请问非要设置分片是什么意思?自动分片是只要 -m 就行吗? 最初发现大文件上传失败(且短时间完全无法上传同一文件)时候好像就是单独 -m 触发的。 -u 发现无法上传 20多G文件后改用 -m 没有添加分片后失败了。
并且上传小文件时,如果单独 -m 不设置 -parts-num 到5以上,我这会比 -u 要慢上很多(上传速度显示也不正确)
分片就是OSS上传时将单个文件分成多个小文件上传而已
所以绕过了单文件体积限制咯。 不过为什么-m 只有一个分片时候比 -u要慢很多?
所以绕过了单文件体积限制咯。
没绕过
不过为什么-m 只有一个分片时候比 -u要慢很多?
不清楚
使用 -u 没法上传 20G 以上文件了,测试了很多次都是一样报错。 另外 30G 以上文件使用5个分片也会出错。只有分片数大于体积/5才能正常上传。 都是前几天测试的结果了。
大文件为什么要用 -u ,搞不懂你,24日 -m 正常上传33G文件,问题关了吧
前一周还能正常上传30G以上的文件(使用 -u),这两天发现20G以上的文件上传会报错。测试 19G 的文件能正常上传。使用 -u 或者 -m 结果一样。
脱敏日志如下
若不开调试级别的话,返回结果是
ossUploadFile() error: oss: service returned error: StatusCode=400, ErrorCode=InvalidArgument, ErrorMessage="Post body size must be less than 5G.", RequestId=
请问此情况是否能复现。最近海外访问 115 变得很慢,不知道是否是阿里云还是哪里的bug?