LeslieSun
LeslieSun
已经将supernode DEBUG开启了,在不断重试,之前的现象看log,dfget node其实一直在发起pullPieceTask请求,一直收到peer should wait,supernode gc前并没有记录,直到gc掉后才开始报错。
最近没有复现失败的场景,我就按照你说的方式把之前的log梳理下, 发起请求的dfget节点有13个,其中涉及到dfget请求失败的有两个,73.2是请求失败的ip,73.65是73.2请求其中一个piece的peer节点,72.238是supernode节点。 73.2 dfclient日志: ``` 2020-01-02 18:01:26.744 INFO sign:12305-1577959255.676 : downloading piece:{"taskID":"d92205d4ce2007422736d99a34c53d8263b157a8362c4894e1f926c5b406362f","superNode":"xxx.xx.72.238:8002","dstCid":"cdnnode:xxx.xx.72.238~d92205d4ce2007422736d99a34c53d8263b157a8362c4894e1f926c5b406362f","range":"155189248-159383551","result":503,"status":701,"pieceSize":4194304,"pieceNum":37} 2020-01-02 18:01:26.744 INFO sign:12305-1577959255.676 : pull piece task({"taskID":"d92205d4ce2007422736d99a34c53d8263b157a8362c4894e1f926c5b406362f","superNode":"xxx.xx.72.238:8002","dstCid":"cdnnode:xxx.xx.72.238~d92205d4ce2007422736d99a34c53d8263b157a8362c4894e1f926c5b406362f","range":"155189248-159383551","result":503,"status":701,"pieceSize":4194304,"pieceNum":37}) result:{"code":602,"msg":"taskID(d92205d4ce2007422736d99a34c53d8263b157a8362c4894e1f926c5b406362f) clientID(xxx.xx.73.2-12305-1577959255.676): {\"Code\":9,\"Msg\":\"peer should wait\"}"} and sleep 1.384s 2020-01-02 18:01:28.129...
supernode 和 dfget 通过version看都是1.0.0版本
> 我也碰到了类似的问题,大概70个client 同时下载,会偶发某个client 卡住。 > > **代码版本:** > [7894da1](https://github.com/dragonflyoss/Dragonfly/commit/7894da121306b5e26db485e1f5ed11bff12422e9) > > **supernode 日志:** > 2020-01-05 23:36:33.358 INFO sign:10112-1578238471.150 : downloading piece:{"taskID":"dd9697255d580b1fce938b2d55909cb27196375df577560a7b5aa2d6f93dd755","superNode":"11.163.182.164:8002","dstCid":"11.163.187.96-47517-1578238472.082","range":"13227786240-13243514879","result":503,"status":701,"pieceSize":15728640,"pieceNum":841} > 2020-01-05 23:36:33.363 INFO sign:10112-1578238471.150 : pull piece task({"taskID":"dd9697255d580b1fce938b2d55909cb27196375df577560a7b5aa2d6f93dd755","superNode":"11.163.182.164:8002","dstCid":"11.163.187.96-47517-1578238472.082","range":"13227786240-13243514879","result":503,"status":701,"pieceSize":15728640,"pieceNum":841})...
@Starnop ,没有在dfclient.log中发现有`failed to report piece`输出,不过另外一次测试发现一些log我无法从源码中找到合理的解释,我贴出来 ` 2020-01-06 13:56:24.155 DEBU sign:6997 : start to process task(8815caad97127ceac74a986b16a8f083fc7fee4c2b5e2a864d95d7cd8ff6b6ab) start 2020-01-06 13:56:24.155 INFO sign:6997 : success update dfgetTask status to RUNNING with taskID: 8815caad97127ceac74a986b16a8f083fc7fee4c2b5e2a864d95d7cd8ff6b6ab...