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

2.x: Fix groupBy not requesting more if a group is cancelled with buffered items #6894

Merged
merged 1 commit into from Jan 29, 2020

Conversation

akarnokd
Copy link
Member

If a group is cancelled with unconsumed item in its buffer, the operator stopped requesting more thus hanging other groups.

The fix is to count how many items are still in the buffer upon cancellation, and issue a request for them for the parent.

Fixes #6889

@akarnokd akarnokd changed the title 2.x: Fig groupBy not requesting more if a group is cancelled with buffered items 2.x: Fix groupBy not requesting more if a group is cancelled with buffered items Jan 29, 2020
@codecov
Copy link

codecov bot commented Jan 29, 2020

Codecov Report

Merging #6894 into 2.x will increase coverage by 0.09%.
The diff coverage is 63.63%.

Impacted file tree graph

@@             Coverage Diff              @@
##                2.x    #6894      +/-   ##
============================================
+ Coverage     98.12%   98.21%   +0.09%     
- Complexity     6343     6348       +5     
============================================
  Files           677      677              
  Lines         45535    45541       +6     
  Branches       6336     6339       +3     
============================================
+ Hits          44680    44727      +47     
+ Misses          292      257      -35     
+ Partials        563      557       -6
Impacted Files Coverage Δ Complexity Δ
...x/internal/operators/flowable/FlowableGroupBy.java 95.36% <63.63%> (-0.76%) 3 <0> (ø)
...ernal/operators/flowable/FlowableFlatMapMaybe.java 90.82% <0%> (-2.9%) 2% <0%> (ø)
.../operators/observable/ObservableFlatMapSingle.java 88.8% <0%> (-2.24%) 2% <0%> (ø)
.../io/reactivex/disposables/CompositeDisposable.java 98.14% <0%> (-1.86%) 39% <0%> (-1%)
...ternal/operators/flowable/FlowableSubscribeOn.java 96.61% <0%> (-1.7%) 2% <0%> (ø)
...ava/io/reactivex/processors/BehaviorProcessor.java 96.86% <0%> (-1.35%) 60% <0%> (+1%)
...ernal/operators/flowable/FlowableFromIterable.java 95.18% <0%> (-1.07%) 5% <0%> (ø)
...perators/observable/ObservableMergeWithSingle.java 99.06% <0%> (-0.94%) 2% <0%> (ø)
...operators/observable/ObservableMergeWithMaybe.java 99.1% <0%> (-0.9%) 2% <0%> (ø)
...perators/single/SingleFlatMapIterableFlowable.java 97.5% <0%> (-0.84%) 2% <0%> (ø)
... and 17 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 030528b...3675d32. Read the comment docs.

@akarnokd akarnokd merged commit e753858 into ReactiveX:2.x Jan 29, 2020
@akarnokd akarnokd deleted the GroupByRequestFix2x branch January 29, 2020 10:57
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.

None yet

2 participants