You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "Andrew Purtell (JIRA)" <ji...@apache.org> on 2015/04/11 03:31:12 UTC

[jira] [Resolved] (HBASE-5905) Protobuf interface for Admin: split between the internal and the external/customer interface

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

Andrew Purtell resolved HBASE-5905.
-----------------------------------
    Resolution: Not A Problem

> Protobuf interface for Admin: split between the internal and the external/customer interface
> --------------------------------------------------------------------------------------------
>
>                 Key: HBASE-5905
>                 URL: https://issues.apache.org/jira/browse/HBASE-5905
>             Project: HBase
>          Issue Type: Improvement
>          Components: Client, master, regionserver
>    Affects Versions: 0.95.2
>            Reporter: Nicolas Liochon
>
> After a short discussion with Stack, I create a jira.
> --
> I'am a little bit confused by the protobuf interface for closeRegion.
> We have two types of closeRegion today:
> 1) the external ones; available in client.HBaseAdmin. They take the server and the region identifier as a parameter and nothing else.
> 2) The internal ones, called for example by the master. They have more parameters (like versionOfClosingNode or transitionInZK).
> When I look at protobuf.ProtobufUtil, I see:
>   public static void closeRegion(final AdminProtocol admin,
>       final byte[] regionName, final boolean transitionInZK) throws IOException {
>     CloseRegionRequest closeRegionRequest =
>       RequestConverter.buildCloseRegionRequest(regionName, transitionInZK);
>     try {
>       admin.closeRegion(null, closeRegionRequest);
>     } catch (ServiceException se) {
>       throw getRemoteException(se);
>     }
>   }
> In other words, it seems that we merged the two interfaces into a single one. Is that the intend?
> I checked, the internal fields in closeRegionRequest are all optional (that's good). Still, it means that the end user could use them or at least would need to distinguish between the "optional for functional reasons" and the "optional - do not use".



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