You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by jd...@apache.org on 2011/06/22 00:22:25 UTC

svn commit: r1138218 - in /hbase/branches/0.90: CHANGES.txt src/main/java/org/apache/hadoop/hbase/client/HConnectionManager.java

Author: jdcryans
Date: Tue Jun 21 22:22:25 2011
New Revision: 1138218

URL: http://svn.apache.org/viewvc?rev=1138218&view=rev
Log:
   HBASE-3994  SplitTransaction has a window where clients can
               get RegionOfflineException

Modified:
    hbase/branches/0.90/CHANGES.txt
    hbase/branches/0.90/src/main/java/org/apache/hadoop/hbase/client/HConnectionManager.java

Modified: hbase/branches/0.90/CHANGES.txt
URL: http://svn.apache.org/viewvc/hbase/branches/0.90/CHANGES.txt?rev=1138218&r1=1138217&r2=1138218&view=diff
==============================================================================
--- hbase/branches/0.90/CHANGES.txt (original)
+++ hbase/branches/0.90/CHANGES.txt Tue Jun 21 22:22:25 2011
@@ -55,6 +55,8 @@ Release 0.90.4 - Unreleased
                far greater than the regions),it has risk of OOME (Jian Zhang)
    HBASE-3855  Performance degradation of memstore because reseek is linear
                (dhruba borthakur)
+   HBASE-3994  SplitTransaction has a window where clients can
+               get RegionOfflineException
 
 Release 0.90.3 - May 19th, 2011
   BUG FIXES

Modified: hbase/branches/0.90/src/main/java/org/apache/hadoop/hbase/client/HConnectionManager.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.90/src/main/java/org/apache/hadoop/hbase/client/HConnectionManager.java?rev=1138218&r1=1138217&r2=1138218&view=diff
==============================================================================
--- hbase/branches/0.90/src/main/java/org/apache/hadoop/hbase/client/HConnectionManager.java (original)
+++ hbase/branches/0.90/src/main/java/org/apache/hadoop/hbase/client/HConnectionManager.java Tue Jun 21 22:22:25 2011
@@ -738,8 +738,15 @@ public class HConnectionManager {
             throw new TableNotFoundException(
               "Table '" + Bytes.toString(tableName) + "' was not found.");
           }
+          if (regionInfo.isSplit()) {
+            throw new RegionOfflineException("the only available region for" +
+              " the required row is a split parent," +
+              " the daughters should be online soon: " +
+              regionInfo.getRegionNameAsString());
+          }
           if (regionInfo.isOffline()) {
-            throw new RegionOfflineException("region offline: " +
+            throw new RegionOfflineException("the region is offline, could" +
+              " be caused by a disable table call: " +
               regionInfo.getRegionNameAsString());
           }