You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Ted Yu (JIRA)" <ji...@apache.org> on 2016/12/29 20:27:58 UTC

[jira] [Assigned] (HBASE-17387) Reduce the overhead of exception report in RegionActionResult for multi()

     [ https://issues.apache.org/jira/browse/HBASE-17387?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ted Yu reassigned HBASE-17387:
------------------------------

    Assignee: Ted Yu

> Reduce the overhead of exception report in RegionActionResult for multi()
> -------------------------------------------------------------------------
>
>                 Key: HBASE-17387
>                 URL: https://issues.apache.org/jira/browse/HBASE-17387
>             Project: HBase
>          Issue Type: Bug
>            Reporter: Ted Yu
>            Assignee: Ted Yu
>            Priority: Minor
>
> For RSRpcServices#doNonAtomicRegionMutation() :
> {code}
>     for (ClientProtos.Action action: actions.getActionList()) {
> ...
>       } catch (IOException ie) {
>         rpcServer.getMetrics().exception(ie);
>         resultOrExceptionBuilder = ResultOrException.newBuilder().
>           setException(ResponseConverter.buildException(ie));
>       }
>       if (resultOrExceptionBuilder != null) {
>         // Propagate index.
>         resultOrExceptionBuilder.setIndex(action.getIndex());
>         builder.addResultOrException(resultOrExceptionBuilder.build());
>       }
> {code}
> The exceptions are added to builder in the for loop.
> The ClientProtos.ResultOrException.Builder instance is created within the for loop.
> For large multi call, this may incur non-trivial overhead for garbage collector if there're many exceptions.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)