You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by ra...@apache.org on 2012/06/26 19:17:08 UTC
svn commit: r1354116 -
/hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/client/HConnectionManager.java
Author: ramkrishna
Date: Tue Jun 26 17:17:07 2012
New Revision: 1354116
URL: http://svn.apache.org/viewvc?rev=1354116&view=rev
Log:
HBASE-6240 Race in HCM.getMaster stalls clients
Submitted by:J-D, Ram
Reviewed by:J-D, Ted
Modified:
hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/client/HConnectionManager.java
Modified: hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/client/HConnectionManager.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/client/HConnectionManager.java?rev=1354116&r1=1354115&r2=1354116&view=diff
==============================================================================
--- hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/client/HConnectionManager.java (original)
+++ hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/client/HConnectionManager.java Tue Jun 26 17:17:07 2012
@@ -634,6 +634,14 @@ public class HConnectionManager {
checkIfBaseNodeAvailable();
ServerName sn = null;
synchronized (this.masterLock) {
+ try {
+ if (master != null && master.isMasterRunning()) {
+ return master;
+ }
+ } catch (UndeclaredThrowableException ute) {
+ // log, but ignore, the loop below will attempt to reconnect
+ LOG.info("Exception contacting master. Retrying...", ute.getCause());
+ }
this.master = null;
for (int tries = 0;