Skip to content

Commit 52c8d31

Browse files
committed
FIx #21: run afterconsume when there is no new messages
1 parent 2bb986c commit 52c8d31

1 file changed

Lines changed: 7 additions & 1 deletion

File tree

delayqueue.go

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -764,13 +764,19 @@ func (q *DelayQueue) StartConsume() (done <-chan struct{}) {
764764
case <-q.ticker.C:
765765
ids, err := q.beforeConsume()
766766
if err != nil {
767-
q.logger.Printf("consume error: %v", err)
767+
q.logger.Printf("before consume error: %v", err)
768768
}
769769
q.goWithRecover(func() {
770770
for _, id := range ids {
771771
q.consumeBuffer <- id
772772
}
773773
})
774+
// Always do unack2Retry and garbageCollect even there is no new messages
775+
// https://github.com/HDT3213/delayqueue/issues/21
776+
err = q.afterConsume()
777+
if err != nil {
778+
q.logger.Printf("after consume error: %v", err)
779+
}
774780
case <-q.close:
775781
break tickerLoop
776782
}

0 commit comments

Comments
 (0)