|
From: <tho...@us...> - 2013-10-11 15:49:17
|
Revision: 7452
http://bigdata.svn.sourceforge.net/bigdata/?rev=7452&view=rev
Author: thompsonbry
Date: 2013-10-11 15:49:09 +0000 (Fri, 11 Oct 2013)
Log Message:
-----------
Rolling back the change to AbstractQuorum.getClient() and getMember(). This is aggrevating a problem where concurrent actions on the quorum can cause an awaited Condition to not become satisfied.
See #718 (HAJournalServer needs to handle ZK client connection loss)
Modified Paths:
--------------
branches/BIGDATA_RELEASE_1_3_0/bigdata/src/java/com/bigdata/quorum/AbstractQuorum.java
branches/BIGDATA_RELEASE_1_3_0/bigdata-jini/src/java/com/bigdata/journal/jini/ha/HAJournalServer.java
Modified: branches/BIGDATA_RELEASE_1_3_0/bigdata/src/java/com/bigdata/quorum/AbstractQuorum.java
===================================================================
--- branches/BIGDATA_RELEASE_1_3_0/bigdata/src/java/com/bigdata/quorum/AbstractQuorum.java 2013-10-11 15:21:41 UTC (rev 7451)
+++ branches/BIGDATA_RELEASE_1_3_0/bigdata/src/java/com/bigdata/quorum/AbstractQuorum.java 2013-10-11 15:49:09 UTC (rev 7452)
@@ -733,21 +733,21 @@
@Override
public C getClient() {
-// lock.lock();
-// try {
+ lock.lock();
+ try {
final C client = this.client;
if (client == null)
throw new IllegalStateException();
return client;
-// } finally {
-// lock.unlock();
-// }
+ } finally {
+ lock.unlock();
+ }
}
@Override
public QuorumMember<S> getMember() {
-// lock.lock();
-// try {
+ lock.lock();
+ try {
final C client = this.client;
if (client == null)
throw new IllegalStateException();
@@ -755,9 +755,9 @@
return (QuorumMember<S>) client;
}
throw new UnsupportedOperationException();
-// } finally {
-// lock.unlock();
-// }
+ } finally {
+ lock.unlock();
+ }
}
/**
Modified: branches/BIGDATA_RELEASE_1_3_0/bigdata-jini/src/java/com/bigdata/journal/jini/ha/HAJournalServer.java
===================================================================
--- branches/BIGDATA_RELEASE_1_3_0/bigdata-jini/src/java/com/bigdata/journal/jini/ha/HAJournalServer.java 2013-10-11 15:21:41 UTC (rev 7451)
+++ branches/BIGDATA_RELEASE_1_3_0/bigdata-jini/src/java/com/bigdata/journal/jini/ha/HAJournalServer.java 2013-10-11 15:49:09 UTC (rev 7452)
@@ -93,6 +93,7 @@
import com.bigdata.journal.IRootBlockView;
import com.bigdata.journal.RootBlockUtility;
import com.bigdata.journal.WORMStrategy;
+import com.bigdata.quorum.AbstractQuorum;
import com.bigdata.quorum.Quorum;
import com.bigdata.quorum.QuorumEvent;
import com.bigdata.quorum.QuorumException;
@@ -1859,7 +1860,7 @@
while (true) {
log.warn("Will do error handler.");
-
+// ((AbstractQuorum<HAGlue, QuorumService<HAGlue>>) getQuorum()).interruptAll();
/*
* Discard the current write set.
*
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|