You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Both SecurityInterceptor and ValidatingInterceptor can block the onMessage signal of a client if the message is erroneous. However, both interceptors will still pass through the onHalfClose signal that the client issues shortly after the message (for single-message calls). For a downstream instance, this looks like the client never sent a message, but did send a half-close. UnaryServerCallHandler(correctly) throws an error in this scenario. This error is irritating: it happens after the call was already closed and looks like there was a problem with the request, even though it has already completed successfully, from the server’s point of view.
From my point of view, the solution is to block onHalfClose also if onMessage was blocked. From the point of view of a downstream instance, it will then look like the client never send a message.
The text was updated successfully, but these errors were encountered:
jGleitz
added a commit
to jGleitz/grpc-spring-boot-starter
that referenced
this issue
Sep 6, 2021
* test that SecurityInterceptor does not propagate onHalfClose after closing the request
* set the locale in ValidationTest so it passes on non-English systems
* test that ValidatingInterceptor does not propagate onHalfClose after closing the request
* also block onHalfClose after blocking onMessage
fixes#240
Both
SecurityInterceptor
andValidatingInterceptor
can block theonMessage
signal of a client if the message is erroneous. However, both interceptors will still pass through theonHalfClose
signal that the client issues shortly after the message (for single-message calls). For a downstream instance, this looks like the client never sent a message, but did send a half-close.UnaryServerCallHandler
(correctly) throws an error in this scenario. This error is irritating: it happens after the call was already closed and looks like there was a problem with the request, even though it has already completed successfully, from the server’s point of view.From my point of view, the solution is to block
onHalfClose
also ifonMessage
was blocked. From the point of view of a downstream instance, it will then look like the client never send a message.The text was updated successfully, but these errors were encountered: