[jbosscache-commits] JBoss Cache SVN: r7690 - core/trunk/src/main/java/org/jboss/cache/statetransfer.
jbosscache-commits at lists.jboss.org
jbosscache-commits at lists.jboss.org
Fri Feb 13 10:55:43 EST 2009
Author: jason.greene at jboss.com
Date: 2009-02-13 10:55:43 -0500 (Fri, 13 Feb 2009)
New Revision: 7690
Modified:
core/trunk/src/main/java/org/jboss/cache/statetransfer/DefaultStateTransferGenerator.java
Log:
Fix over-eager deactivation
Modified: core/trunk/src/main/java/org/jboss/cache/statetransfer/DefaultStateTransferGenerator.java
===================================================================
--- core/trunk/src/main/java/org/jboss/cache/statetransfer/DefaultStateTransferGenerator.java 2009-02-13 15:21:46 UTC (rev 7689)
+++ core/trunk/src/main/java/org/jboss/cache/statetransfer/DefaultStateTransferGenerator.java 2009-02-13 15:55:43 UTC (rev 7690)
@@ -26,7 +26,6 @@
import java.util.List;
import java.util.Map;
import java.util.Set;
-import java.util.concurrent.locks.ReentrantReadWriteLock;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -87,6 +86,7 @@
boolean generatePersistent, boolean suppressErrors) throws Exception
{
Fqn fqn = getFqn(rootNode);
+ boolean activated = false;
try
{
cache.getMarshaller().objectToObjectStream(STATE_TRANSFER_VERSION, out);
@@ -94,7 +94,8 @@
{
if (nonBlocking)
{
- if (! txLog.activate())
+ activated = txLog.activate();
+ if (! activated)
throw new CacheException("Busy performing state transfer for someone else");
if (log.isTraceEnabled())
@@ -155,7 +156,7 @@
}
finally
{
- if (nonBlocking)
+ if (activated)
txLog.deactivate();
}
}
More information about the jbosscache-commits
mailing list