-
Notifications
You must be signed in to change notification settings - Fork 923
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
Handle exceptions thrown by Subscriber
#2475
Comments
minwoox
added a commit
to minwoox/armeria
that referenced
this issue
Feb 26, 2020
Motivation: According to https://github.com/reactive-streams/reactive-streams-jvm#2.13, a subscriber must not throw an exception but just call `Subscription.cancel()`. Some of our subscribers violated this rule so we should fix them. Modifications: - Call `Subscription.cancel()` instead of throwing an exception in `Subscriber`s Result: - Close line#2475 - `Subscriber` does not throw an exception anymore.
minwoox
added a commit
to minwoox/armeria
that referenced
this issue
Feb 26, 2020
Motivation: According to https://github.com/reactive-streams/reactive-streams-jvm#2.13, a subscriber must not throw an exception but just call `Subscription.cancel()`. Some of our subscribers violated this rule so we should fix them. Modifications: - Call `Subscription.cancel()` instead of throwing an exception in `Subscriber`s Result: - Close line#2475 - `Subscriber` does not throw an exception anymore.
minwoox
added a commit
to minwoox/armeria
that referenced
this issue
Feb 26, 2020
Motivation: According to https://github.com/reactive-streams/reactive-streams-jvm#2.13, a subscriber must not throw an exception but just call `Subscription.cancel()`. Some of our subscribers violated this rule so we should fix them. Modifications: - Call `Subscription.cancel()` instead of throwing an exception in `Subscriber`s Result: - Close line#2475 - `Subscriber` does not throw an exception anymore.
minwoox
added a commit
to minwoox/armeria
that referenced
this issue
Mar 5, 2020
Motivation: An exception raised by a `Subscriber`'s `onNext()` or other handler methods can cause an unexpected connection drop. We should handle it. Modifications: - Catch the exception thrown by `onSubscribe()` and `onNext()` from `Subscriber`s. - Aabort the stream or call `onError` with the cause. - Catch the exception thrown by `onComplete()` and `onError()`, and log it. Result: - Close line#2475 - The connection is not closed by unhandled exceptions from `Subscriber`s anymore.
trustin
pushed a commit
that referenced
this issue
Mar 10, 2020
Motivation: An exception raised by a `Subscriber`'s `onNext()` or other handler methods can cause an unexpected connection drop. We should handle it. Modifications: - Catch the exception thrown by `onSubscribe()` and `onNext()` from `Subscriber`s. - Aabort the stream or call `onError` with the cause. - Catch the exception thrown by `onComplete()` and `onError()`, and log it. - Fork `CompositeException` from RxJava. Result: - Close #2475 - The connection is not closed by unhandled exceptions from `Subscriber`s anymore.
fmguerreiro
pushed a commit
to fmguerreiro/armeria
that referenced
this issue
Sep 19, 2020
Motivation: An exception raised by a `Subscriber`'s `onNext()` or other handler methods can cause an unexpected connection drop. We should handle it. Modifications: - Catch the exception thrown by `onSubscribe()` and `onNext()` from `Subscriber`s. - Aabort the stream or call `onError` with the cause. - Catch the exception thrown by `onComplete()` and `onError()`, and log it. - Fork `CompositeException` from RxJava. Result: - Close line#2475 - The connection is not closed by unhandled exceptions from `Subscriber`s anymore.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
An exception raised by a
Subscriber
'sonNext()
or other handler methods can cause an unexpected connection drop. The following stack trace shows the case where an exception raised byonNext()
is propagated toHttp2ResponseDecoder
which triggers an HTTP/2 connection error:We must catch any exceptions raised by
Subscriber
and abort theStreamMessage
with the caught exception.The text was updated successfully, but these errors were encountered: