-
Notifications
You must be signed in to change notification settings - Fork 2.7k
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
gRPC ServerInterceptor throwing exceptions are not catched #28053
Comments
/cc @alesj, @cescoffier |
New Vert.x gRPC impl already responds with 500: @cescoffier I guess this could be fixed as part of current work? |
Currently you get this (on my WIP branch ...): |
This could work ... |
@alesj we may want to fix in the current server too (if it does not require breaking something), as I would qualify this as a bug (and thanks for the report @slinkydeveloper !) |
The question is does the current server let us catch these exceptions? |
See VertxCoreRecorder ...
|
And it looks like we would have to have 2 diff solutions / fixes: Unless we leave the new gRPC with already provided 500 ... |
@alesj the Vert.x exceptionHandler is not going to be able to close the gRPC connection. I'm actually surprised that grpc-java does not handle that automatically. |
Yes, it does not do anything, so it bubbles up. |
The regular grpc server handles this case AFAIK. You should be able to see it somewhere in |
ah yes, in |
The question is why there is no response ... |
Ok, I may be on something... |
So... it was my fault. Opened #28063. |
… immediately. Fix quarkusio#28053. (cherry picked from commit 747f6ee)
Describe the bug
Hi all, I'm trying to use an interceptor coming from an external package, which throws an exception when executing
interceptCall
. When this happens, quarkus will print the exception as uncaught but won't reply back.Looking at the docs of
ServerInterceptor
, throwing an exception there looks like a valid implementation:Expected behavior
Response back with error grpc status code
INTERNAL
and some status message indicating the failure (or maybe just "Internal server error")Actual behavior
No response back
How to Reproduce?
grpcurl -vv -plaintext -d '{"name":"Francesco"}' localhost:9000 hello.HelloGrpc/SayHello
See the reproducer attached
reproducer.zip
Output of
uname -a
orver
No response
Output of
java -version
openjdk version "17.0.4.1" 2022-08-12
GraalVM version (if different from Java)
No response
Quarkus version or git rev
2.12.2.Final
Build tool (ie. output of
mvnw --version
orgradlew --version
)No response
Additional information
No response
The text was updated successfully, but these errors were encountered: