You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by la...@apache.org on 2013/05/17 07:50:18 UTC
svn commit: r1483657 - in /hbase/branches/0.94/src:
main/java/org/apache/hadoop/hbase/client/HBaseAdmin.java
main/java/org/apache/hadoop/hbase/zookeeper/ZKTableReadOnly.java
test/java/org/apache/hadoop/hbase/client/TestAdmin.java
Author: larsh
Date: Fri May 17 05:50:18 2013
New Revision: 1483657
URL: http://svn.apache.org/r1483657
Log:
HBASE-8538 HBaseAdmin#isTableEnabled() should check table existence before checking zk state. (rajeshbabu)
Modified:
hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/client/HBaseAdmin.java
hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/zookeeper/ZKTableReadOnly.java
hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/client/TestAdmin.java
Modified: hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/client/HBaseAdmin.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/client/HBaseAdmin.java?rev=1483657&r1=1483656&r2=1483657&view=diff
==============================================================================
--- hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/client/HBaseAdmin.java (original)
+++ hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/client/HBaseAdmin.java Fri May 17 05:50:18 2013
@@ -934,6 +934,9 @@ public class HBaseAdmin implements Abort
if (!HTableDescriptor.isMetaTable(tableName)) {
HTableDescriptor.isLegalTableName(tableName);
}
+ if(!tableExists(tableName)){
+ throw new TableNotFoundException(Bytes.toString(tableName));
+ }
return connection.isTableEnabled(tableName);
}
Modified: hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/zookeeper/ZKTableReadOnly.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/zookeeper/ZKTableReadOnly.java?rev=1483657&r1=1483656&r2=1483657&view=diff
==============================================================================
--- hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/zookeeper/ZKTableReadOnly.java (original)
+++ hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/zookeeper/ZKTableReadOnly.java Fri May 17 05:50:18 2013
@@ -66,6 +66,8 @@ public class ZKTableReadOnly {
public static boolean isEnabledTable(final ZooKeeperWatcher zkw,
final String tableName) throws KeeperException {
TableState state = getTableState(zkw, tableName);
+ // If a table is ENABLED then we are removing table state znode in 0.92
+ // but in 0.94 we keep it in ENABLED state.
return state == null || state == TableState.ENABLED;
}
Modified: hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/client/TestAdmin.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/client/TestAdmin.java?rev=1483657&r1=1483656&r2=1483657&view=diff
==============================================================================
--- hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/client/TestAdmin.java (original)
+++ hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/client/TestAdmin.java Fri May 17 05:50:18 2013
@@ -256,6 +256,15 @@ public class TestAdmin {
}
@Test
+ public void testIsEnabledOnUnknownTable() throws Exception {
+ try {
+ admin.isTableEnabled(Bytes.toBytes("unkownTable"));
+ fail("Test should fail if isTableEnabled called on unknown table.");
+ } catch (IOException e) {
+ }
+ }
+
+ @Test
public void testDisableAndEnableTables() throws IOException {
final byte [] row = Bytes.toBytes("row");
final byte [] qualifier = Bytes.toBytes("qualifier");