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
Throwing an exception from some StreamTracer methods hangs the RPC #7373
Comments
Spoke with @groakley and he mentioned that @wanyingd1996 might be interested in taking this on. But apparently I can't directly assign them... (previous contributor in #7242) |
I reproduced the bug using InProcessChannel, and the trace shows the problem is inside of |
At a minimum, we'd want to make sure that any client-implemented method that throws doesn't hang the stub or prevent resources from being released. Looking at
to be
|
@ericgribkoff , do you think we should go with the fix suggested by @groakley ? |
Yes. We also will want to update the javadoc for Regarding the @wanyingd1996 Wrapping the calls to |
@ericgribkoff I think catching the exception in |
@wanyingd1996 Are you still interested in working on this issue? |
Hi, Larry, I'm not working on grpc anymore, and I don't have the bandwidth for the bug now. feel free to take this. Thanks! |
What version of gRPC-Java are you using?
Head
What is your environment?
Android
What did you expect to see?
If a client-implemented
ClientStreamTracer
method throws an exception, the RPC should fail.What did you see instead?
The RPC never completes (blocks forever or the future never completes, depending on stub type).
Steps to reproduce the bug
I was able to reproduce this bug with both the
InProcessChannel
and Cronet transport implementations.From grpc's
GrpcServerRuleTest
:The text was updated successfully, but these errors were encountered: