hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Hudson (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-11657) Put HTable region methods in an interface
Date Wed, 20 Aug 2014 00:33:20 GMT

    [ https://issues.apache.org/jira/browse/HBASE-11657?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14103145#comment-14103145
] 

Hudson commented on HBASE-11657:
--------------------------------

FAILURE: Integrated in HBase-1.0 #113 (See [https://builds.apache.org/job/HBase-1.0/113/])
HBASE-11657 Put HTable region methods in an interface (Carter Page) (stack: rev acf691111411c91bc2a813a99db2f948f7066174)
* hbase-client/src/main/java/org/apache/hadoop/hbase/client/HConnection.java
* hbase-client/src/main/java/org/apache/hadoop/hbase/HRegionLocation.java
* hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionManager.java
* hbase-server/src/test/java/org/apache/hadoop/hbase/client/HConnectionTestingUtility.java
* hbase-server/src/main/java/org/apache/hadoop/hbase/client/CoprocessorHConnection.java
* hbase-client/src/main/java/org/apache/hadoop/hbase/client/RegionLocator.java
* hbase-client/src/main/java/org/apache/hadoop/hbase/client/HTable.java
* hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionAdapter.java
* hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide.java


> Put HTable region methods in an interface
> -----------------------------------------
>
>                 Key: HBASE-11657
>                 URL: https://issues.apache.org/jira/browse/HBASE-11657
>             Project: HBase
>          Issue Type: Improvement
>    Affects Versions: 0.99.0
>            Reporter: Carter
>            Assignee: Carter
>             Fix For: 0.99.0, 2.0.0
>
>         Attachments: HBASE_11657.patch, HBASE_11657_v2.patch, HBASE_11657_v3.patch, HBASE_11657_v3.patch,
HBASE_11657_v4.patch, HBASE_11657_v5.patch, HBASE_11657_v6.patch
>
>
> Most of the HTable methods are now abstracted by HTableInterface, with the notable exception
of the following methods that pertain to region metadata:
> {code}
> HRegionLocation getRegionLocation(final String row)
> HRegionLocation getRegionLocation(final byte [] row)
> HRegionLocation getRegionLocation(final byte [] row, boolean reload)
> byte [][] getStartKeys()
> byte[][] getEndKeys()
> Pair<byte[][],byte[][]> getStartEndKeys()
> void clearRegionCache()
> {code}
> and a default scope method which maybe should be bundled with the others:
> {code}
> List<RegionLocations> listRegionLocations()
> {code}
> Since the consensus seems to be that these would muddy HTableInterface with non-core
functionality, where should it go?  MapReduce looks up the region boundaries, so it needs
to be exposed somewhere.
> Let me throw out a straw man to start the conversation.  I propose:
> {code}
> org.apache.hadoop.hbase.client.HRegionInterface
> {code}
> Have HTable implement this interface.  Also add these methods to HConnection:
> {code}
> HRegionInterface getTableRegion(TableName tableName)
> HRegionInterface getTableRegion(TableName tableName, ExecutorService pool)
> {code}
> [~stack], [~ndimiduk], [~enis], thoughts?



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message