[
https://issues.apache.org/jira/browse/ACCUMULO-4584?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15861616#comment-15861616
]
Josh Elser commented on ACCUMULO-4584:
--------------------------------------
bq. wrap exceptions from oneway methods with TException like all the rest
(effectively reverting ACCUMULO-4065) and have thrift drop them
I think the proper fix is to have Thrift handle this and for us to remove this
work-around. However, having confidence that Thrift doesn't regress on this
would be good (I'm cringing at having to debug this one again..).
bq. any ideas on how to update the RpcWrapperTest to verify the correct behavior
The only reasonable way I can think to try to verify this is to completely stub
out the entire RPC pipeline. Along the lines of what is presently there in the
test class now ({{foo_args}}, {{FakeServiceImpl}}, {{fake_fields}}), we could
extend that to be a real end-to-end test that uses Thrift (instead of just
mocking out the InvocationHandler).
Maybe it would be easier in the long run to just write a more tightly-scoped
unit test for RpcWrapper and create a new test that does a standard
Client/Server setup for Thrift. We should be able to make a dumb IDL (with a
oneway method that always throws an exception and a non-oneway method that
returns a value), create a client and server, and then call the oneway method
and the non-oneway method using the same connection. Does that make sense?
> Determine need for oneway method handling in RpcWrapper
> -------------------------------------------------------
>
> Key: ACCUMULO-4584
> URL: https://issues.apache.org/jira/browse/ACCUMULO-4584
> Project: Accumulo
> Issue Type: Task
> Components: rpc
> Reporter: Christopher Tubbs
> Assignee: Christopher Tubbs
> Fix For: 2.0.0
>
>
> RpcWrapper has checks for oneway methods (from ACCUMULO-4065), but may no
> longer need it after upgrading to Thrift 0.10.0, due to the fix in THRIFT-3479
> Should determine whether these are still needed or can be removed.
> The current RpcWrapperTest fails if the checks are removed, but that test
> code may be assuming behavior in thrift, since it doesn't seem to actually
> use thrift code in the test itself.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)