[ https://issues.apache.org/jira/browse/HBASE-14296?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14710779#comment-14710779 ]
Pankaj Kumar commented on HBASE-14296: -------------------------------------- Client may try to get a table instance which doesn't exist, since we don't have any validation for this so later on it will throw error like, {code} org.apache.hadoop.hbase.TableNotFoundException: Table 'test' was not found, got: hbase:namespace. at org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation.locateRegionInMeta(ConnectionManager.java:1277) at org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation.locateRegion(ConnectionManager.java:1158) {code} Also in CellCreator(Configuration conf), suppose VisibilityController in not configured as co-processor, then It may throw the same error while getting scanner (DefaultVisibilityExpressionResolver's init()) I was thinking about adding a exist() before returning a table instance but it will be a RPC call. > ConnectionManager should validate the table existence before returning the > table instance > ----------------------------------------------------------------------------------------- > > Key: HBASE-14296 > URL: https://issues.apache.org/jira/browse/HBASE-14296 > Project: HBase > Issue Type: Bug > Components: Client > Affects Versions: 2.0.0, 1.2.0, 0.98.15 > Reporter: Pankaj Kumar > Assignee: Pankaj Kumar > Priority: Minor > > Table instance should be returned only when table exist. > {code} > public HTableInterface getTable(TableName tableName, ExecutorService > pool) throws IOException { > if (managed) { > throw new NeedUnmanagedConnectionException(); > } > return new HTable(tableName, this, tableConfig, rpcCallerFactory, > rpcControllerFactory, pool); > } > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)