[jbosscache-commits] JBoss Cache SVN: r4611 - core/trunk/src/main/java/org/jboss/cache.
jbosscache-commits at lists.jboss.org
jbosscache-commits at lists.jboss.org
Fri Oct 12 13:46:47 EDT 2007
Author: manik.surtani at jboss.com
Date: 2007-10-12 13:46:47 -0400 (Fri, 12 Oct 2007)
New Revision: 4611
Modified:
core/trunk/src/main/java/org/jboss/cache/CacheImpl.java
Log:
JBCACHE-1192 - cannot gravitate data only stored in a cache loader
Modified: core/trunk/src/main/java/org/jboss/cache/CacheImpl.java
===================================================================
--- core/trunk/src/main/java/org/jboss/cache/CacheImpl.java 2007-10-12 17:22:14 UTC (rev 4610)
+++ core/trunk/src/main/java/org/jboss/cache/CacheImpl.java 2007-10-12 17:46:47 UTC (rev 4611)
@@ -2914,10 +2914,15 @@
{
ctx.setOriginLocal(false);
- NodeSPI<K, V> actualNode = findNode(fqn);
+ // use a get() call into the cache to make sure cache loading takes place.
+ ctx.getOptionOverrides().setSkipDataGravitation(true);
+ Node<K, V> actualNode = get(fqn);
+ ctx.getOptionOverrides().setSkipDataGravitation(false);
+
Fqn backupNodeFqn = null;
if (actualNode == null && searchSubtrees)
{
+
NodeSPI backupSubtree = findNode(BuddyManager.BUDDY_BACKUP_SUBTREE_FQN);
if (backupSubtree != null)
{
@@ -2930,7 +2935,12 @@
// childName is the name of a buddy group since all child names in this
// collection are direct children of BUDDY_BACKUP_SUBTREE_FQN
backupNodeFqn = BuddyManager.getBackupFqn(childName.toString(), fqn);
- actualNode = findNode(backupNodeFqn);
+
+ // use a get() call into the cache to make sure cache loading takes place.
+ ctx.getOptionOverrides().setSkipDataGravitation(true);
+ actualNode = get(backupNodeFqn);
+ ctx.getOptionOverrides().setSkipDataGravitation(false);
+
if (actualNode != null) break;
}
}
@@ -2957,7 +2967,7 @@
backupNodeFqn = BuddyManager.getBackupFqn(BuddyManager.getGroupNameFromAddress(getLocalAddress()), fqn);
}
- List<NodeData> list = getNodeData(new LinkedList<NodeData>(), actualNode);
+ List<NodeData> list = getNodeData(new LinkedList<NodeData>(), (NodeSPI<K, V>) actualNode);
return GravitateResult.subtreeResult(list, backupNodeFqn);
}
More information about the jbosscache-commits
mailing list