Author: jdcryans
Date: Thu Dec  2 20:19:35 2010
New Revision: 1041570

URL: http://svn.apache.org/viewvc?rev=1041570&view=rev
Log:
HBASE-3296  Newly created table ends up disabled instead of assigned

Modified:
    hbase/branches/0.90/CHANGES.txt
    
hbase/branches/0.90/src/main/java/org/apache/hadoop/hbase/master/HMaster.java

Modified: hbase/branches/0.90/CHANGES.txt
URL: 
http://svn.apache.org/viewvc/hbase/branches/0.90/CHANGES.txt?rev=1041570&r1=1041569&r2=1041570&view=diff
==============================================================================
--- hbase/branches/0.90/CHANGES.txt (original)
+++ hbase/branches/0.90/CHANGES.txt Thu Dec  2 20:19:35 2010
@@ -721,6 +721,7 @@ Release 0.90.0 - Unreleased
                and it's very confusing
    HBASE-3301  Treat java.net.SocketTimeoutException same as ConnectException
                assigning/unassigning region
+   HBASE-3296  Newly created table ends up disabled instead of assigned
 
 
   IMPROVEMENTS

Modified: 
hbase/branches/0.90/src/main/java/org/apache/hadoop/hbase/master/HMaster.java
URL: 
http://svn.apache.org/viewvc/hbase/branches/0.90/src/main/java/org/apache/hadoop/hbase/master/HMaster.java?rev=1041570&r1=1041569&r2=1041570&view=diff
==============================================================================
--- 
hbase/branches/0.90/src/main/java/org/apache/hadoop/hbase/master/HMaster.java 
(original)
+++ 
hbase/branches/0.90/src/main/java/org/apache/hadoop/hbase/master/HMaster.java 
Thu Dec  2 20:19:35 2010
@@ -766,18 +766,27 @@ implements HMasterInterface, HMasterRegi
       throw new TableExistsException(tableName);
     }
     for(HRegionInfo newRegion : newRegions) {
-      // 1. Create HRegion
+
+      // 1. Set table enabling flag up in zk.
+      try {
+        assignmentManager.getZKTable().setEnabledTable(tableName);
+      } catch (KeeperException e) {
+        throw new IOException("Unable to ensure that the table will be" +
+            " enabled because of a ZooKeeper issue", e);
+      }
+
+      // 2. Create HRegion
       HRegion region = HRegion.createHRegion(newRegion,
           fileSystemManager.getRootDir(), conf);
 
-      // 2. Insert into META
+      // 3. Insert into META
       MetaEditor.addRegionToMeta(catalogTracker, region.getRegionInfo());
 
-      // 3. Close the new region to flush to disk.  Close log file too.
+      // 4. Close the new region to flush to disk.  Close log file too.
       region.close();
       region.getLog().closeAndDelete();
 
-      // 4. Trigger immediate assignment of this region
+      // 5. Trigger immediate assignment of this region
       assignmentManager.assign(region.getRegionInfo(), true);
     }
 


Reply via email to