p2p/tracker: only reschedule wake if previous didn't run

pull/22753/head
Péter Szilágyi 4 years ago
parent 55043eec45
commit ff3535e8e0
No known key found for this signature in database
GPG Key ID: E9AE538CEDF8293D
  1. 5
      p2p/tracker/tracker.go

@ -188,8 +188,9 @@ func (t *Tracker) Fulfil(peer string, version uint, code uint64, id uint64) {
t.expire.Remove(req.expire)
delete(t.pending, id)
if req.expire.Prev() == nil {
t.wake.Stop()
t.schedule()
if t.wake.Stop() {
t.schedule()
}
}
g := fmt.Sprintf("%s/%s/%d/%#02x", trackedGaugeName, t.protocol, req.version, req.reqCode)
metrics.GetOrRegisterGauge(g, nil).Dec(1)

Loading…
Cancel
Save