-
Notifications
You must be signed in to change notification settings - Fork 181
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Publisher[retry|repeat] change default exception handling mode (#2642)
Motivation: The current default mode of Publisher retry/repeat operators allows exceptions to propagate from onNext. However this may result in incorrect demand management and lead to "hangs" due to off-by-one demand (downstream subscriber requested X, but may only see X-1 if an earlier downstream subscriber threw). ReactiveStreams spec specifies that Subscriber methods are generally not expected to throw [1]. For these reasons the current default maybe unsafe and isn't commonly expected. The alternative mode makes exception handling explicit and won't result in hangs. [1] https://github.com/reactive-streams/reactive-streams-jvm#2.13 Modifications: - Change default mode of operation to not allow downstream exceptions to propagate upstream.
- Loading branch information
1 parent
f061ee8
commit 7f0b795
Showing
3 changed files
with
6 additions
and
89 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters