[
https://issues.apache.org/jira/browse/HBASE-13646?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Andrey Stepachev updated HBASE-13646:
-------------------------------------
Description:
If some RPC service, called on region throws exception, execService still tries
to build Message. In case of complex messages with required fields it
complicates service code because service need to pass fake protobuf objects, so
they can be barely buildable.
To mitigate that I propose to check that controller was failed and return null
from call instead of failing with exception.
was:
If some RPC service, called on region throws exception, execService still tries
to build Message. In case of complex messages with required fields it
complicates service code because service need to pass fake protobuf objects, so
they can be barely buildable.
To mitigate that I propose to check that controller was failed and return null
from call instead of failing with exception.
Sure, we can go other direction and throw exception right from execService. Let
me know if you think that it is better that what I did in provided patch.
> HRegion#execService should not try to build incomplete messages
> ---------------------------------------------------------------
>
> Key: HBASE-13646
> URL: https://issues.apache.org/jira/browse/HBASE-13646
> Project: HBase
> Issue Type: Bug
> Components: Coprocessors, regionserver
> Affects Versions: 2.0.0, 1.2.0, 1.1.1
> Reporter: Andrey Stepachev
> Assignee: Andrey Stepachev
>
> If some RPC service, called on region throws exception, execService still
> tries to build Message. In case of complex messages with required fields it
> complicates service code because service need to pass fake protobuf objects,
> so they can be barely buildable.
> To mitigate that I propose to check that controller was failed and return
> null from call instead of failing with exception.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)