[jira] [Updated] (HBASE-11657) Put HTable region methods in an interface
[ https://issues.apache.org/jira/browse/HBASE-11657?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Carter updated HBASE-11657: --- Status: Open (was: Patch Available) 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 Attachments: HBASE_11657.patch, HBASE_11657_v2.patch, HBASE_11657_v3.patch, HBASE_11657_v3.patch, HBASE_11657_v4.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() Pairbyte[][],byte[][] getStartEndKeys() void clearRegionCache() {code} and a default scope method which maybe should be bundled with the others: {code} ListRegionLocations 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)
[jira] [Updated] (HBASE-11657) Put HTable region methods in an interface
[ https://issues.apache.org/jira/browse/HBASE-11657?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Carter updated HBASE-11657: --- Attachment: HBASE_11657_v5.patch 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 Attachments: HBASE_11657.patch, HBASE_11657_v2.patch, HBASE_11657_v3.patch, HBASE_11657_v3.patch, HBASE_11657_v4.patch, HBASE_11657_v5.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() Pairbyte[][],byte[][] getStartEndKeys() void clearRegionCache() {code} and a default scope method which maybe should be bundled with the others: {code} ListRegionLocations 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)
[jira] [Updated] (HBASE-11657) Put HTable region methods in an interface
[ https://issues.apache.org/jira/browse/HBASE-11657?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Carter updated HBASE-11657: --- Status: Patch Available (was: Open) Submitted new patch in v5. Made HRL interface.public, removed {{clearRegionCache()}}, added {{TableName getName()}}. 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 Attachments: HBASE_11657.patch, HBASE_11657_v2.patch, HBASE_11657_v3.patch, HBASE_11657_v3.patch, HBASE_11657_v4.patch, HBASE_11657_v5.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() Pairbyte[][],byte[][] getStartEndKeys() void clearRegionCache() {code} and a default scope method which maybe should be bundled with the others: {code} ListRegionLocations 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)
[jira] [Updated] (HBASE-11657) Put HTable region methods in an interface
[ https://issues.apache.org/jira/browse/HBASE-11657?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Carter updated HBASE-11657: --- Status: Open (was: Patch Available) 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 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() Pairbyte[][],byte[][] getStartEndKeys() void clearRegionCache() {code} and a default scope method which maybe should be bundled with the others: {code} ListRegionLocations 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)
[jira] [Updated] (HBASE-11657) Put HTable region methods in an interface
[ https://issues.apache.org/jira/browse/HBASE-11657?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Carter updated HBASE-11657: --- Attachment: HBASE_11657_v6.patch 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 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() Pairbyte[][],byte[][] getStartEndKeys() void clearRegionCache() {code} and a default scope method which maybe should be bundled with the others: {code} ListRegionLocations 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)
[jira] [Updated] (HBASE-11657) Put HTable region methods in an interface
[ https://issues.apache.org/jira/browse/HBASE-11657?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Carter updated HBASE-11657: --- Status: Patch Available (was: Open) Of course. Added extends Closeable to interface. 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 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() Pairbyte[][],byte[][] getStartEndKeys() void clearRegionCache() {code} and a default scope method which maybe should be bundled with the others: {code} ListRegionLocations 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)
[jira] [Updated] (HBASE-11657) Put HTable region methods in an interface
[ https://issues.apache.org/jira/browse/HBASE-11657?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stack updated HBASE-11657: -- Resolution: Fixed Fix Version/s: 2.0.0 Release Note: Add a RegionLocator Interface. Encapsulates 'region' operations. Implemented by HTable and you can get one from an HConnection. Hadoop Flags: Reviewed Status: Resolved (was: Patch Available) Committed to master and branch-1. Nice work lads. 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() Pairbyte[][],byte[][] getStartEndKeys() void clearRegionCache() {code} and a default scope method which maybe should be bundled with the others: {code} ListRegionLocations 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)
[jira] [Updated] (HBASE-11657) Put HTable region methods in an interface
[ https://issues.apache.org/jira/browse/HBASE-11657?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Carter updated HBASE-11657: --- Status: Patch Available (was: Open) 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 Attachments: HBASE_11657.patch, HBASE_11657_v2.patch, HBASE_11657_v3.patch, HBASE_11657_v3.patch, HBASE_11657_v4.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() Pairbyte[][],byte[][] getStartEndKeys() void clearRegionCache() {code} and a default scope method which maybe should be bundled with the others: {code} ListRegionLocations 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)
[jira] [Updated] (HBASE-11657) Put HTable region methods in an interface
[ https://issues.apache.org/jira/browse/HBASE-11657?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Carter updated HBASE-11657: --- Attachment: HBASE_11657_v4.patch 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 Attachments: HBASE_11657.patch, HBASE_11657_v2.patch, HBASE_11657_v3.patch, HBASE_11657_v3.patch, HBASE_11657_v4.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() Pairbyte[][],byte[][] getStartEndKeys() void clearRegionCache() {code} and a default scope method which maybe should be bundled with the others: {code} ListRegionLocations 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)
[jira] [Updated] (HBASE-11657) Put HTable region methods in an interface
[ https://issues.apache.org/jira/browse/HBASE-11657?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Carter updated HBASE-11657: --- Status: Open (was: Patch Available) 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 Attachments: HBASE_11657.patch, HBASE_11657_v2.patch, HBASE_11657_v3.patch, HBASE_11657_v3.patch, HBASE_11657_v4.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() Pairbyte[][],byte[][] getStartEndKeys() void clearRegionCache() {code} and a default scope method which maybe should be bundled with the others: {code} ListRegionLocations 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)
[jira] [Updated] (HBASE-11657) Put HTable region methods in an interface
[ https://issues.apache.org/jira/browse/HBASE-11657?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] stack updated HBASE-11657: -- Attachment: HBASE_11657_v3.patch Retry. More tests should pass this time through since fixup. 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 Attachments: HBASE_11657.patch, HBASE_11657_v2.patch, HBASE_11657_v3.patch, HBASE_11657_v3.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() Pairbyte[][],byte[][] getStartEndKeys() void clearRegionCache() {code} and a default scope method which maybe should be bundled with the others: {code} ListRegionLocations 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)
[jira] [Updated] (HBASE-11657) Put HTable region methods in an interface
[ https://issues.apache.org/jira/browse/HBASE-11657?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Carter updated HBASE-11657: --- Status: Open (was: Patch Available) 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 Attachments: HBASE_11657.patch, HBASE_11657_v2.patch, HBASE_11657_v3.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() Pairbyte[][],byte[][] getStartEndKeys() void clearRegionCache() {code} and a default scope method which maybe should be bundled with the others: {code} ListRegionLocations 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)
[jira] [Updated] (HBASE-11657) Put HTable region methods in an interface
[ https://issues.apache.org/jira/browse/HBASE-11657?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Carter updated HBASE-11657: --- Attachment: HBASE_11657_v3.patch 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 Attachments: HBASE_11657.patch, HBASE_11657_v2.patch, HBASE_11657_v3.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() Pairbyte[][],byte[][] getStartEndKeys() void clearRegionCache() {code} and a default scope method which maybe should be bundled with the others: {code} ListRegionLocations 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)
[jira] [Updated] (HBASE-11657) Put HTable region methods in an interface
[ https://issues.apache.org/jira/browse/HBASE-11657?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Carter updated HBASE-11657: --- Status: Patch Available (was: Open) Good point. Stability changed to Evolving. Patch v3 submitted. 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 Attachments: HBASE_11657.patch, HBASE_11657_v2.patch, HBASE_11657_v3.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() Pairbyte[][],byte[][] getStartEndKeys() void clearRegionCache() {code} and a default scope method which maybe should be bundled with the others: {code} ListRegionLocations 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)
[jira] [Updated] (HBASE-11657) Put HTable region methods in an interface
[ https://issues.apache.org/jira/browse/HBASE-11657?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Carter updated HBASE-11657: --- Attachment: HBASE_11657.patch 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 Attachments: HBASE_11657.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() Pairbyte[][],byte[][] getStartEndKeys() void clearRegionCache() {code} and a default scope method which maybe should be bundled with the others: {code} ListRegionLocations 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)
[jira] [Updated] (HBASE-11657) Put HTable region methods in an interface
[ https://issues.apache.org/jira/browse/HBASE-11657?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Carter updated HBASE-11657: --- Status: Patch Available (was: Open) RegionLocator it is. 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 Attachments: HBASE_11657.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() Pairbyte[][],byte[][] getStartEndKeys() void clearRegionCache() {code} and a default scope method which maybe should be bundled with the others: {code} ListRegionLocations 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)
[jira] [Updated] (HBASE-11657) Put HTable region methods in an interface
[ https://issues.apache.org/jira/browse/HBASE-11657?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Carter updated HBASE-11657: --- Attachment: HBASE_11657_v2.patch 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 Attachments: HBASE_11657.patch, HBASE_11657_v2.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() Pairbyte[][],byte[][] getStartEndKeys() void clearRegionCache() {code} and a default scope method which maybe should be bundled with the others: {code} ListRegionLocations 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)
[jira] [Updated] (HBASE-11657) Put HTable region methods in an interface
[ https://issues.apache.org/jira/browse/HBASE-11657?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Carter updated HBASE-11657: --- Status: Open (was: Patch Available) 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 Attachments: HBASE_11657.patch, HBASE_11657_v2.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() Pairbyte[][],byte[][] getStartEndKeys() void clearRegionCache() {code} and a default scope method which maybe should be bundled with the others: {code} ListRegionLocations 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)
[jira] [Updated] (HBASE-11657) Put HTable region methods in an interface
[ https://issues.apache.org/jira/browse/HBASE-11657?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Carter updated HBASE-11657: --- Status: Patch Available (was: Open) Please take another look. 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 Attachments: HBASE_11657.patch, HBASE_11657_v2.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() Pairbyte[][],byte[][] getStartEndKeys() void clearRegionCache() {code} and a default scope method which maybe should be bundled with the others: {code} ListRegionLocations 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)