-
Notifications
You must be signed in to change notification settings - Fork 4.9k
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
Make Event Processor Client Tests more deterministic #7458
Labels
Milestone
Comments
triage-new-issues
bot
added
the
needs-triage
Workflow: This is a new issue that needs to be triaged to the appropriate team.
label
Sep 3, 2019
kinelski
added
Client
This issue points to a problem in the data-plane of the library.
Event Hubs
and removed
needs-triage
Workflow: This is a new issue that needs to be triaged to the appropriate team.
labels
Sep 3, 2019
This was referenced Sep 3, 2019
9 tasks
jsquire
changed the title
[EventHubs] Make Event Processor Live Tests more deterministic
Make Event Processor Client Live Tests more deterministic
Oct 31, 2019
jsquire
changed the title
Make Event Processor Client Live Tests more deterministic
Make Event Processor Client Tests more deterministic
Dec 9, 2019
18 tasks
5 tasks
This scope will likely be addressed as part of a community contribution to remove the load balancer and refactor it into a stand-alone offering. Shifting this back to the backlog until those efforts are complete and will reevaluate then. |
christothes
added a commit
to christothes/azure-sdk-for-net
that referenced
this issue
Feb 24, 2020
kinelski
pushed a commit
that referenced
this issue
Feb 25, 2020
* delete obsolete tests * fixes some flaky tests for #7458 * delete commented line * pr comments
Test stability was addressed as part of the recent overhaul of the |
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Labels
Summary
Event Processors, once initialized, demand some time before stabilizing. This happens because of the internal load balancing, which tries to distribute partition processing responsibility among Event Processors in the most balanced way.
The Event Processor Live Tests currently rely on the
WaitStabilization
method before actually performing assertions, an approach that may result in flaky behavior. This method keeps track of all active Event Processors' owned partitions, and it considers stabilization to be achieved once the partition load distribution hasn't changed after a few cycles. It gives up and throws an error if it takes more than 1 minute.https://github.com/Azure/azure-sdk-for-net/blob/master/sdk/eventhub/Azure.Messaging.EventHubs/tests/Processor/EventProcessorClientLiveTests.cs#L68-L70
Out of Scope
Success Criteria
The
EventProcessorClient
tests have been refactored and produce consistent and deterministic results.The existing test suite continues to produce deterministic results and pass reliably.
The text was updated successfully, but these errors were encountered: