From fc7eec17bf72fa7572bba90c0c1ee2109bc899a1 Mon Sep 17 00:00:00 2001 From: Jim Ma Date: Tue, 28 Sep 2021 17:25:18 +0800 Subject: [PATCH] fix: skip check DisableAutoBackSource option when scheduler says back source (#693) Signed-off-by: Jim Ma --- client/daemon/peer/peertask_base.go | 34 +++++++++-------------------- 1 file changed, 10 insertions(+), 24 deletions(-) diff --git a/client/daemon/peer/peertask_base.go b/client/daemon/peer/peertask_base.go index 472cdc664..6780d8a47 100644 --- a/client/daemon/peer/peertask_base.go +++ b/client/daemon/peer/peertask_base.go @@ -505,18 +505,11 @@ func (pt *peerTask) waitFirstPeerPacket() bool { time.Now().Sub(pt.callback.GetStartTime()).Microseconds(), pt.peerPacket.Load().(*scheduler.PeerPacket).MainPeer) return true } - // when schedule timeout, receivePeerPacket will close pt.peerPacketReady - if pt.schedulerOption.DisableAutoBackSource { - pt.failedReason = reasonBackSourceDisabled - err := fmt.Errorf("%s, auto back source disabled", pt.failedReason) - pt.span.RecordError(err) - pt.Errorf(err.Error()) - } else { - pt.Warnf("start download from source due to dfcodes.SchedNeedBackSource") - pt.span.AddEvent("back source due to scheduler says need back source") - pt.needBackSource = true - pt.backSource() - } + // when scheduler says dfcodes.SchedNeedBackSource, receivePeerPacket will close pt.peerPacketReady + pt.Infof("start download from source due to dfcodes.SchedNeedBackSource") + pt.span.AddEvent("back source due to scheduler says need back source") + pt.needBackSource = true + pt.backSource() case <-time.After(pt.schedulerOption.ScheduleTimeout.Duration): if pt.schedulerOption.DisableAutoBackSource { pt.failedReason = reasonScheduleTimeout @@ -555,18 +548,11 @@ func (pt *peerTask) waitAvailablePeerPacket() (int32, bool) { // research from piece 0 return pt.getNextPieceNum(0), true } - // when schedule timeout, receivePeerPacket will close pt.peerPacketReady - if pt.schedulerOption.DisableAutoBackSource { - pt.failedReason = reasonBackSourceDisabled - err := fmt.Errorf("%s, auto back source disabled", pt.failedReason) - pt.span.RecordError(err) - pt.Errorf(err.Error()) - } else { - pt.Warnf("start download from source due to dfcodes.SchedNeedBackSource") - pt.span.AddEvent("back source due to scheduler says need back source ") - pt.needBackSource = true - pt.backSource() - } + // when scheduler says dfcodes.SchedNeedBackSource, receivePeerPacket will close pt.peerPacketReady + pt.Infof("start download from source due to dfcodes.SchedNeedBackSource") + pt.span.AddEvent("back source due to scheduler says need back source ") + pt.needBackSource = true + pt.backSource() case <-time.After(pt.schedulerOption.ScheduleTimeout.Duration): if pt.schedulerOption.DisableAutoBackSource { pt.failedReason = reasonReScheduleTimeout