Skip to content
This repository was archived by the owner on Jan 24, 2025. It is now read-only.

Commit be93026

Browse files
authored
Merge pull request #975 from iotaledger/fix/panic-in-drr-scheduler
Fix panic in DRR scheduler
2 parents 4cce1bd + d0192f3 commit be93026

File tree

1 file changed

+11
-9
lines changed
  • pkg/protocol/engine/congestioncontrol/scheduler/drr

1 file changed

+11
-9
lines changed

pkg/protocol/engine/congestioncontrol/scheduler/drr/scheduler.go

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -595,17 +595,19 @@ func (s *Scheduler) selectIssuer(slot iotago.SlotIndex) (Deficit, *IssuerQueue)
595595

596596
func (s *Scheduler) removeIssuer(issuerID iotago.AccountID, err error) {
597597
q := s.basicBuffer.IssuerQueue(issuerID)
598-
q.nonReadyMap.ForEach(func(_ iotago.BlockID, block *blocks.Block) bool {
599-
block.SetDropped()
600-
s.events.BlockDropped.Trigger(block, err)
598+
if q != nil {
599+
q.nonReadyMap.ForEach(func(_ iotago.BlockID, block *blocks.Block) bool {
600+
block.SetDropped()
601+
s.events.BlockDropped.Trigger(block, err)
601602

602-
return true
603-
})
603+
return true
604+
})
604605

605-
for i := range q.readyHeap.Len() {
606-
block := q.readyHeap[i].Value
607-
block.SetDropped()
608-
s.events.BlockDropped.Trigger(block, err)
606+
for i := range q.readyHeap.Len() {
607+
block := q.readyHeap[i].Value
608+
block.SetDropped()
609+
s.events.BlockDropped.Trigger(block, err)
610+
}
609611
}
610612

611613
s.deficits.Delete(issuerID)

0 commit comments

Comments
 (0)