Skip to content

Commit f9686d4

Browse files
committed
using different chans to handle event/heartbeat
Signed-off-by: Wei Liu <liuweixa@redhat.com>
1 parent f10e4a6 commit f9686d4

1 file changed

Lines changed: 4 additions & 0 deletions

File tree

pkg/cloudevents/server/grpc/broker.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -184,6 +184,8 @@ func (bkr *GRPCBroker) Subscribe(subReq *pbv1.SubscriptionRequest, subServer pbv
184184
case evt := <-heartbeatCh:
185185
if err := subServer.Send(evt); err != nil {
186186
klog.Errorf("failed to send heartbeat: %v", err)
187+
// Unblock producers (handler select) and exit heartbeat ticker.
188+
cancel()
187189
select {
188190
case sendErrCh <- err:
189191
default:
@@ -193,6 +195,8 @@ func (bkr *GRPCBroker) Subscribe(subReq *pbv1.SubscriptionRequest, subServer pbv
193195
case evt := <-eventCh:
194196
if err := subServer.Send(evt); err != nil {
195197
klog.Errorf("failed to send event: %v", err)
198+
// Unblock producers (handler select) and exit heartbeat ticker.
199+
cancel()
196200
select {
197201
case sendErrCh <- err:
198202
default:

0 commit comments

Comments
 (0)