[jbosscache-commits] JBoss Cache SVN: r4535 - core/trunk/src/main/java/org/jboss/cache.

jbosscache-commits at lists.jboss.org jbosscache-commits at lists.jboss.org
Wed Oct 3 17:55:00 EDT 2007


Author: manik.surtani at jboss.com
Date: 2007-10-03 17:55:00 -0400 (Wed, 03 Oct 2007)
New Revision: 4535

Modified:
   core/trunk/src/main/java/org/jboss/cache/RegionManager.java
Log:
Fixed stuff that was breaking buddy replication-based partial state transfers

Modified: core/trunk/src/main/java/org/jboss/cache/RegionManager.java
===================================================================
--- core/trunk/src/main/java/org/jboss/cache/RegionManager.java	2007-10-03 21:54:36 UTC (rev 4534)
+++ core/trunk/src/main/java/org/jboss/cache/RegionManager.java	2007-10-03 21:55:00 UTC (rev 4535)
@@ -376,13 +376,15 @@
             {
                // We'll update this node with the state we receive
                // need to obtain all necessary locks.
+               cache.getInvocationContext().getOptionOverrides().setCacheModeLocal(true);
                subtreeRoot = cache.getRoot().addChild(fqn);
+               cache.getInvocationContext().getOptionOverrides().setCacheModeLocal(false);
             }
 
             List<Address> members = cache.getMembers();
             cache.fetchPartialState(members, subtreeRoot.getFqn());
          }
-         else
+         else if (!BuddyManager.isBackupFqn(fqn))
          {
             // Get the state from each DataOwner and integrate in their
             // respective buddy backup cache
@@ -397,11 +399,18 @@
                {
                   // We'll update this node with the state we receive
                   // need to obtain all necessary locks.
+                  // needs to be a LOCAL call!
+                  cache.getInvocationContext().getOptionOverrides().setCacheModeLocal(true);
                   subtreeRoot = cache.getRoot().addChild(buddyRoot);
+                  cache.getInvocationContext().getOptionOverrides().setCacheModeLocal(false);
                }
                cache.fetchPartialState(sources, fqn, subtreeRoot.getFqn());
             }
          }
+         else
+         {
+            log.info("Attempting to activate a backup region.  Not attempting to retrieve any state as this will be pushed.");
+         }
       }
       catch (Throwable t)
       {




More information about the jbosscache-commits mailing list