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

Investigate the problem with the flaky behaviour of the MultiSubscriptionFetcherTest in the CI/CD #98

Closed
DawidNiezgodka opened this issue Oct 7, 2022 · 1 comment
Assignees
Labels
component/gateway type/bug Something isn't working

Comments

@DawidNiezgodka
Copy link
Contributor

For some reason, the tests in the MultiSubscriptionFetcherTest class don't always behave as expected. The order of the consumed records provided by _SubscriptionProvider_s is not deterministic. This can cause the tests to fail as we check the final result assuming a specific order of records.
In this issue we want to investigate the problem and find the reason behind it. Some preliminary presumption are: race conditions in the reactive library or ordering of map.

@DawidNiezgodka DawidNiezgodka added type/bug Something isn't working component/gateway labels Oct 7, 2022
@DawidNiezgodka DawidNiezgodka self-assigned this Oct 7, 2022
@DawidNiezgodka
Copy link
Contributor Author

After first examination, the fields in the MultiSubscriptionFetcher code are processed in the correct order (that is, the ConsumerRecords from the SubscriptionProviders).
It seems the problem occurs when issuing items from the map to the subscriber, i.e. when mapPublisher.subscribe and then testSubs.assertValueAt are called.
When one creates a TestSubscriber with a custom implementation of the Subscriber, which writes Items from onNext in the console, then one can already see that the order of onNext is already different than it is desired.

@DawidNiezgodka DawidNiezgodka closed this as not planned Won't fix, can't repro, duplicate, stale Oct 13, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component/gateway type/bug Something isn't working
Projects
Status: Done
Development

No branches or pull requests

1 participant