JMS transactions: fail stream or log on ack timeouts #1857
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Purpose
Let the user notice when a transaction gets rolled back because
ack-timeout
was hit.References
Implements #1855
See #1831
Changes
ack-timeout
fail-stream-on-ack-timeout
to let the user opt-in to let the stream failBackground Context
It might seem natural to fail the promise in
TxEnvelope
so thatcommit
androllback
would fail with "Promise already completed" when an ACK timeout occurred. This behaviour could be desirable but is not backwards compatible for scenarios that handle duplicated messages today. cc @andreas-schroeder