hbase-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From li...@apache.org
Subject svn commit: r1459452 - /hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/client/HConnectionManager.java
Date Thu, 21 Mar 2013 18:52:40 GMT
Author: liyin
Date: Thu Mar 21 18:52:39 2013
New Revision: 1459452

URL: http://svn.apache.org/r1459452
Log:
[0.89-fb] [ HBASE-7517] fix PFFE issue when ROOT moves around

Author: aaiyer

Summary:
Fix the issue in TITAN018, that gets appservers
to be stuck throwing PFFE.

It looks like the appservers that are having this trouble
are app servers that have the old-notion of ROOT. This seems
to not get updated, due to the fast fail mechanisms.

Ensure that we always get/refresh the knowledge from ZK, if
the root region server is expected to be inFastFail mode.

Test Plan:
Repro and test.
See if this can be programmtically done as well.

Reviewers: liyintang

Reviewed By: liyintang

CC: hbase-eng@

Differential Revision: https://phabricator.fb.com/D686758

Task ID: 1966872

Modified:
    hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/client/HConnectionManager.java

Modified: hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/client/HConnectionManager.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/client/HConnectionManager.java?rev=1459452&r1=1459451&r2=1459452&view=diff
==============================================================================
--- hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/client/HConnectionManager.java
(original)
+++ hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/client/HConnectionManager.java
Thu Mar 21 18:52:39 2013
@@ -829,8 +829,10 @@ public class HConnectionManager {
           // region at the same time. One will go do the find while the
           // second waits. The second thread will not do find.
 
-          if (!useCache || rootRegionLocation == null) {
+          if (!useCache || rootRegionLocation == null
+              || inFastFailMode(this.rootRegionLocation.getServerAddress())) {
             this.rootRegionLocation = locateRootRegion();
+            LOG.info("Updated rootRegionLocation from ZK to : " + this.rootRegionLocation);
           }
           return this.rootRegionLocation;
         }



Mime
View raw message