You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by jm...@apache.org on 2012/04/15 10:59:17 UTC
svn commit: r1326283 - in /hbase/branches/0.90: CHANGES.txt
src/main/java/org/apache/hadoop/hbase/util/HBaseFsckRepair.java
Author: jmhsieh
Date: Sun Apr 15 08:59:16 2012
New Revision: 1326283
URL: http://svn.apache.org/viewvc?rev=1326283&view=rev
Log:
HBASE-5781 Zookeeper session got closed while trying to assign the region to RS using hbck -fix
Modified:
hbase/branches/0.90/CHANGES.txt
hbase/branches/0.90/src/main/java/org/apache/hadoop/hbase/util/HBaseFsckRepair.java
Modified: hbase/branches/0.90/CHANGES.txt
URL: http://svn.apache.org/viewvc/hbase/branches/0.90/CHANGES.txt?rev=1326283&r1=1326282&r2=1326283&view=diff
==============================================================================
--- hbase/branches/0.90/CHANGES.txt (original)
+++ hbase/branches/0.90/CHANGES.txt Sun Apr 15 08:59:16 2012
@@ -18,6 +18,8 @@ Release 0.90.7 - Unreleased
HBASE-5488 OfflineMetaRepair doesn't support hadoop 0.20's fs.default.name property (gaojinchao)
HBASE-5773 HtablePool constructor not reading config files in certain cases
(Ioan Eugen Stan)
+ HBASE-5781 Zookeeper session got closed while trying to assign the region to RS using hbck -fix
+
IMPROVEMENT
HBASE-5588 Deprecate/remove AssignmentManager#clearRegionFromTransition
Modified: hbase/branches/0.90/src/main/java/org/apache/hadoop/hbase/util/HBaseFsckRepair.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.90/src/main/java/org/apache/hadoop/hbase/util/HBaseFsckRepair.java?rev=1326283&r1=1326282&r2=1326283&view=diff
==============================================================================
--- hbase/branches/0.90/src/main/java/org/apache/hadoop/hbase/util/HBaseFsckRepair.java (original)
+++ hbase/branches/0.90/src/main/java/org/apache/hadoop/hbase/util/HBaseFsckRepair.java Sun Apr 15 08:59:16 2012
@@ -126,38 +126,28 @@ public class HBaseFsckRepair {
*/
public static void waitUntilAssigned(HBaseAdmin admin,
HRegionInfo region) throws IOException, InterruptedException {
- HConnection connection = admin.getConnection();
-
- try {
- long timeout = admin.getConfiguration().getLong("hbase.hbck.assign.timeout", 120000);
- long expiration = timeout + System.currentTimeMillis();
- while (System.currentTimeMillis() < expiration) {
- try {
- Map<String, RegionState> rits=
+ long timeout = admin.getConfiguration().getLong("hbase.hbck.assign.timeout", 120000);
+ long expiration = timeout + System.currentTimeMillis();
+ while (System.currentTimeMillis() < expiration) {
+ try {
+ Map<String, RegionState> rits=
admin.getClusterStatus().getRegionsInTransition();
- if (rits.keySet() != null && !rits.keySet().contains(region.getEncodedName())) {
- // yay! no longer RIT
- return;
- }
- // still in rit
- LOG.info("Region still in transition, waiting for "
- + "it to become assigned: " + region);
- } catch (IOException e) {
- LOG.warn("Exception when waiting for region to become assigned,"
- + " retrying", e);
+ if (rits.keySet() != null && !rits.keySet().contains(region.getEncodedName())) {
+ // yay! no longer RIT
+ return;
}
- Thread.sleep(1000);
- }
- throw new IOException("Region " + region + " failed to move out of " +
- "transition within timeout " + timeout + "ms");
- } finally {
- try {
- connection.close();
- } catch (IOException ioe) {
- throw ioe;
+ // still in rit
+ LOG.info("Region still in transition, waiting for "
+ + "it to become assigned: " + region);
+ } catch (IOException e) {
+ LOG.warn("Exception when waiting for region to become assigned,"
+ + " retrying", e);
}
+ Thread.sleep(1000);
}
+ throw new IOException("Region " + region + " failed to move out of " +
+ "transition within timeout " + timeout + "ms");
}
/**