Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix EH batch load cancellation issue #347

Merged
merged 2 commits into from
Feb 12, 2024

Conversation

sebastianburckhardt
Copy link
Member

Testing revealed issues where partitions continuously fail because of supposed "out-of-order" packets. What is actually happening is that the redelivery of previously delivered packets is sometimes not working correctly after a partition terminates.

I tracked this down to the fact that the event hubs transport may be inadvertently cancelling storage requests that retrieve the batch contents when the partition is terminated, which is incorrect (loading the batch content is not tied to the partition state and should be succeeding even if the partition is recycled). This means some packets are skipped and never delivered.

This PR fixes the problem by using the correct cancellation token.

It also adds a condition to the message to check whether any cancellations are o.k. (so that inadvertent cancellations are reported as errors).

@sebastianburckhardt sebastianburckhardt changed the title do not cancel EH batch loading when partition is terminated, but only… fix EH batch load cancellation issue Feb 12, 2024
Copy link
Member

@davidmrdavid davidmrdavid left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

approved w/ nit

…ocessor.cs

Co-authored-by: David Justo <david.justo.1996@gmail.com>
@sebastianburckhardt sebastianburckhardt merged commit 2d3e5ea into dev Feb 12, 2024
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants