snowplow-incubator / common-streams

Other
1 stars 0 forks source link

Reinstate shutdown timeout on pubsub source #44

Closed istreeter closed 10 months ago

istreeter commented 10 months ago

The pubsub source config includes a parameter shutdownTimeout (here) which is how long to wait for the underlying PubSub subscriber to reach terminated state during graceful shutdown.

Somewhere during the 0.2.0 release, I accidentally dropped the line of code where we use the timeout. So currently this config param doesn't do anything.

It is needed because the Subscriber only reaches terminated status once all pending messages have been acked or nacked. Our graceful shutdown procedure acks/nacks most outstanding messages, but there are edge cases where we can drop a reference to one of the outstanding messages. (I might try to remove those edge cases in a future release but for now it's not worth the effort).