Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

akarnokd
Copy link
Member

These tests can fail with MissingBackpressureException because groups may not complete fast enough so flatMap can request more groups in time. This doesn't happen consistently but could fail the test on CI. The workaround is to allow any termination, not just normal completion. The reasoning is that the aim of the tests were to verify the operator doesn't hang.

The underlying complication is that whenever there is an item replenishment, any subsequent item can result in a fresh group being created. If the concurrency level of flatMap is not high enough, this will result in a MBE and the sequence terminates.

@akarnokd akarnokd added this to the 3.1 milestone May 20, 2020
@codecov
Copy link

codecov bot commented May 20, 2020

Codecov Report

Merging #6994 into 3.x will increase coverage by 0.00%.
The diff coverage is n/a.

Impacted file tree graph

@@            Coverage Diff            @@
##                3.x    #6994   +/-   ##
=========================================
  Coverage     99.52%   99.53%           
- Complexity     6669     6671    +2     
=========================================
  Files           742      742           
  Lines         47270    47270           
  Branches       6373     6373           
=========================================
+ Hits          47045    47049    +4     
+ Misses          105      100    -5     
- Partials        120      121    +1     
Impacted Files Coverage Δ Complexity Δ
.../operators/observable/ObservableFlatMapSingle.java 96.03% <0.00%> (-1.59%) 2.00% <0.00%> (ø%)
...rnal/operators/flowable/FlowableFlatMapSingle.java 94.18% <0.00%> (-1.17%) 2.00% <0.00%> (ø%)
...ava3/internal/operators/maybe/MaybeMergeArray.java 98.87% <0.00%> (-1.13%) 6.00% <0.00%> (ø%)
...ernal/operators/flowable/FlowableFromIterable.java 97.91% <0.00%> (-1.05%) 5.00% <0.00%> (ø%)
...perators/observable/ObservableMergeWithSingle.java 99.05% <0.00%> (-0.95%) 2.00% <0.00%> (ø%)
...ternal/operators/observable/ObservableFlatMap.java 97.51% <0.00%> (-0.71%) 3.00% <0.00%> (ø%)
...a3/internal/operators/flowable/FlowableCreate.java 98.70% <0.00%> (-0.33%) 6.00% <0.00%> (ø%)
...3/internal/operators/flowable/FlowableGroupBy.java 85.02% <0.00%> (-0.30%) 3.00% <0.00%> (ø%)
.../operators/observable/ObservableCombineLatest.java 100.00% <0.00%> (+0.61%) 6.00% <0.00%> (ø%)
...operators/observable/ObservableMergeWithMaybe.java 100.00% <0.00%> (+0.90%) 2.00% <0.00%> (ø%)
... and 5 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update c693edb...f269811. Read the comment docs.

@akarnokd
Copy link
Member Author

@akarnokd akarnokd merged commit 3f386be into ReactiveX:3.x May 21, 2020
@akarnokd akarnokd deleted the FlakyGroupByTest branch September 6, 2021 12:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant