accumulo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From joshelser <>
Subject [GitHub] accumulo pull request: ACCUMULO-4065 Work around TExceptions being...
Date Tue, 01 Dec 2015 05:08:08 GMT
GitHub user joshelser opened a pull request:

    ACCUMULO-4065 Work around TExceptions being written back to clients i…

    …n oneway methods.
    In talking to @keith-turner on the previous pull request, we came to the conclusion that
the real issue was that when a TException is thrown on by the (server-side) Processor on a
oneway method, a message is written back to the client. This message is left on the wire,
and will mess up other calls which expect their message to be on the wire (this was what the
first pull request realized and tried to work around).
    I noticed that RpcWrapper is actually rethrowing RTEs and Errors as TExceptions, in an
attempt to work around some change in logic from 0.6.0 and 0.9.0. Since clients will never
know that an Exception was thrown as a result of some invocation of a oneway Thrift call,
we want to avoid wrapping and rethrowing any RTE/Error in the oneway call's path.
    These changes alter RpcWrapper so that it does not wrap and rethrow RTEs and Errors when
thrown from a oneway method invocation.
    I verified that the patch works with some logging (thus removed), as well as hacking together
a call to TabletClientService.fastHalt and verifying that no data is sent back to the client.

You can merge this pull request into a Git repository by running:

    $ git pull ACCUMULO-4065-oneway-exceptions

Alternatively you can review and apply these changes as the patch at:

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #56
commit 9cd4796acb013855f5ed0c87726a09f6be5436f5
Author: Josh Elser <>
Date:   2015-12-01T03:23:33Z

    ACCUMULO-4065 Work around TExceptions being written back to clients in oneway methods.


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 or file a JIRA ticket
with INFRA.

View raw message