[ 
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)

Reply via email to