signalfx / signalfx-go

Go client library and instrumentation bindings for SignalFx
https://www.signalfx.com
Apache License 2.0
14 stars 48 forks source link

Fix processing ControlMessage in signalflow.Computation #108

Closed lseppala closed 3 years ago

lseppala commented 3 years ago

This change fixes a switch statement in signalflow.Computation.processMessage() for incoming SignalFlow control messages, which should dispatch on Event (e.g CHANNEL_ABORT, END_OF_CHANNEL), not Type, which is already determined in the outer type-switch.

The bug meant a computation with a Stop time specified could never be understood to be completed when receiving the END_OF_CHANNEL or CHANNEL_ABORT control messages from the Signalflow API. We confirmed that a Computation.Done() will properly yield after receiving END_OF_CHANNEL with this fix.

keitwb commented 3 years ago

Tagged this in master as 1.7.11.