Github user joshelser commented on the pull request:
https://github.com/apache/accumulo/pull/54#issuecomment-160801600
@keith-turner and I have been talking in IRC about these changes. After
staring at this for so long, I think we've come to a realization that the
underlying issue is related to Exceptions in oneway calls. We can see that the
base ProcessFunction class in Thrift will write a message back to the client
when it sees a TException from the Processor implementation (the server-side
implementation of our Thrift server).
The problem is that, in trying to work around the semantics change in
THRIFT-1805, we end up creating a TException which causes the server to write a
message over the wire back to clients, even in oneway calls. While, it's
arguable that a TException is ever written back to clients for oneway calls, I
think fixing RpcWrapper to not wrap RuntimeExceptions and Errors as TExceptions
would be a fix for us (cc\ @ctubbsii).
Closing this out as I think it's unnecessary and going to try to address it
via reflection in RpcWrapper.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---