You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
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 only on delays to assert stability before actually performing assertions, an approach that may result in flaky behavior.
// Make sure the event processors have enough time to stabilize.
// TODO: we'll probably need to extend this delay once load balancing is implemented.
awaitTask.Delay(5000);
For reference purposes: all aforementioned delays are preceded by a comment with the word stabilize.
Goal
Reduce the flakiness by monitoring the partition distribution instead of relying on delays. Once a balanced status has been achieved, proceed with the testing.
Things to keep in mind:
We should only recognize a balanced status when it hasn't changed for a certain amount of time.
We should have a timeout to abort the verification in case it takes too long. In this situation, something unexpected has happened.
The text was updated successfully, but these errors were encountered:
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 only on delays to assert stability before actually performing assertions, an approach that may result in flaky behavior.
azure-sdk-for-net/sdk/eventhub/Azure.Messaging.EventHubs/tests/Processor/EventProcessorLiveTests.cs
Lines 68 to 71 in b65ef08
For reference purposes: all aforementioned delays are preceded by a comment with the word
stabilize
.Goal
Reduce the flakiness by monitoring the partition distribution instead of relying on delays. Once a balanced status has been achieved, proceed with the testing.
Things to keep in mind:
The text was updated successfully, but these errors were encountered: