[jbosscache-commits] JBoss Cache SVN: r6244 - in core/trunk/src: main/java/org/jboss/cache/interceptors and 3 other directories.
jbosscache-commits at lists.jboss.org
jbosscache-commits at lists.jboss.org
Thu Jul 10 12:42:51 EDT 2008
Author: manik.surtani at jboss.com
Date: 2008-07-10 12:42:50 -0400 (Thu, 10 Jul 2008)
New Revision: 6244
Modified:
core/trunk/src/main/java/org/jboss/cache/DataContainerImpl.java
core/trunk/src/main/java/org/jboss/cache/UnversionedNode.java
core/trunk/src/main/java/org/jboss/cache/interceptors/CacheLoaderInterceptor.java
core/trunk/src/main/java/org/jboss/cache/invocation/NodeInvocationDelegate.java
core/trunk/src/main/java/org/jboss/cache/mvcc/MVCCNodeHelper.java
core/trunk/src/main/java/org/jboss/cache/mvcc/ReadCommittedNode.java
core/trunk/src/main/java/org/jboss/cache/mvcc/RepeatableReadNode.java
core/trunk/src/test/java/org/jboss/cache/api/nodevalidity/InvalidatedMvccNodeValidityTest.java
core/trunk/src/test/java/org/jboss/cache/api/nodevalidity/LocalMvccNodeValidityTest.java
core/trunk/src/test/java/org/jboss/cache/api/nodevalidity/ReplicatedMvccNodeValidityTest.java
Log:
Fixed stuff
Modified: core/trunk/src/main/java/org/jboss/cache/DataContainerImpl.java
===================================================================
--- core/trunk/src/main/java/org/jboss/cache/DataContainerImpl.java 2008-07-10 14:11:25 UTC (rev 6243)
+++ core/trunk/src/main/java/org/jboss/cache/DataContainerImpl.java 2008-07-10 16:42:50 UTC (rev 6244)
@@ -470,7 +470,7 @@
// Yuck!
NodeSPI nodeSPI = peek(f, false, includeInvalidNodes);
if (nodeSPI == null) return null;
- return (InternalNode) ((NodeInvocationDelegate) nodeSPI).getDelegationTarget();
+ return ((NodeInvocationDelegate) nodeSPI).getDelegationTarget();
}
public void setBuddyFqnTransformer(BuddyFqnTransformer buddyFqnTransformer)
Modified: core/trunk/src/main/java/org/jboss/cache/UnversionedNode.java
===================================================================
--- core/trunk/src/main/java/org/jboss/cache/UnversionedNode.java 2008-07-10 14:11:25 UTC (rev 6243)
+++ core/trunk/src/main/java/org/jboss/cache/UnversionedNode.java 2008-07-10 16:42:50 UTC (rev 6244)
@@ -325,7 +325,7 @@
{
StringBuilder sb = new StringBuilder();
sb.append(getClass().getSimpleName());
- if (!isValid()) sb.append(" (INVALID!) ");
+ if (!isValid()) sb.append(" (invalid) ");
if (isDeleted())
{
@@ -335,6 +335,12 @@
{
sb.append("[ ").append(fqn);
}
+
+ if (this instanceof VersionedNode)
+ {
+ sb.append(" version=").append(this.getVersion());
+ }
+
if (data != null)
{
synchronized (data)
Modified: core/trunk/src/main/java/org/jboss/cache/interceptors/CacheLoaderInterceptor.java
===================================================================
--- core/trunk/src/main/java/org/jboss/cache/interceptors/CacheLoaderInterceptor.java 2008-07-10 14:11:25 UTC (rev 6243)
+++ core/trunk/src/main/java/org/jboss/cache/interceptors/CacheLoaderInterceptor.java 2008-07-10 16:42:50 UTC (rev 6244)
@@ -388,7 +388,7 @@
}
if (!n.isDataLoaded())
{
- if (trace) log.trace("must Load, uninitialized");
+ if (trace) log.trace("must load, uninitialized");
return true;
}
return false;
Modified: core/trunk/src/main/java/org/jboss/cache/invocation/NodeInvocationDelegate.java
===================================================================
--- core/trunk/src/main/java/org/jboss/cache/invocation/NodeInvocationDelegate.java 2008-07-10 14:11:25 UTC (rev 6243)
+++ core/trunk/src/main/java/org/jboss/cache/invocation/NodeInvocationDelegate.java 2008-07-10 16:42:50 UTC (rev 6244)
@@ -35,7 +35,7 @@
this.node = node;
}
- public Object getDelegationTarget()
+ public InternalNode getDelegationTarget()
{
return node;
}
Modified: core/trunk/src/main/java/org/jboss/cache/mvcc/MVCCNodeHelper.java
===================================================================
--- core/trunk/src/main/java/org/jboss/cache/mvcc/MVCCNodeHelper.java 2008-07-10 14:11:25 UTC (rev 6243)
+++ core/trunk/src/main/java/org/jboss/cache/mvcc/MVCCNodeHelper.java 2008-07-10 16:42:50 UTC (rev 6244)
@@ -219,7 +219,7 @@
// TODO: warning, hack! There is a race condition here. Add a way to create nodes without attaching to a parent.
parent.removeChildDirect(fqn.getLastElement());
- in = (InternalNode) ((NodeInvocationDelegate) temp).getDelegationTarget();
+ in = ((NodeInvocationDelegate) temp).getDelegationTarget();
n = nodeFactory.createMvccNode(in);
n.setCreated(true);
context.putLookedUpNode(fqn, n);
@@ -274,7 +274,7 @@
if (parentLockNeeded && (needToCopyNode || needToCopyParent))
{
ReadCommittedNode parent = (ReadCommittedNode) ctx.lookUpNode(parentFqn);
- parent.addChildDirect(nodeFactory.createNodeInvocationDelegate((InternalNode) node.getDelegationTarget()));
+ parent.addChildDirect(nodeFactory.createNodeInvocationDelegate(node.getDelegationTarget()));
}
// now deal with children.
@@ -306,7 +306,7 @@
{
rcn.markForUpdate(ctx, dataContainer, nodeFactory, allowWriteSkew);
ReadCommittedNode parent = (ReadCommittedNode) ctx.lookUpNode(fqn.getParent());
- parent.addChildDirect(nodeFactory.createNodeInvocationDelegate((InternalNode) rcn.getDelegationTarget()));
+ parent.addChildDirect(nodeFactory.createNodeInvocationDelegate(rcn.getDelegationTarget()));
Map<Object, NodeSPI> children = rcn.getChildrenMapDirect();
if (children != null)
Modified: core/trunk/src/main/java/org/jboss/cache/mvcc/ReadCommittedNode.java
===================================================================
--- core/trunk/src/main/java/org/jboss/cache/mvcc/ReadCommittedNode.java 2008-07-10 14:11:25 UTC (rev 6243)
+++ core/trunk/src/main/java/org/jboss/cache/mvcc/ReadCommittedNode.java 2008-07-10 16:42:50 UTC (rev 6244)
@@ -8,8 +8,6 @@
import org.jboss.cache.NodeSPI;
import org.jboss.cache.invocation.InvocationContext;
import org.jboss.cache.invocation.NodeInvocationDelegate;
-import org.jboss.cache.optimistic.DataVersion;
-import org.jboss.cache.optimistic.DefaultDataVersion;
/**
* A node delegate that encapsulates read committed semantics when writes are initiated, committed or rolled back.
@@ -49,10 +47,11 @@
changed = true;
backup = node;
- node = backup.copy();
+ InternalNode backupDelegationTarget = ((NodeReference) backup).getDelegate();
+ node = backupDelegationTarget.copy();
// TODO: Make sure this works with custom versions as well!
- DataVersion newVersion = ((DefaultDataVersion) node.getVersion()).increment();
- node.setVersion(newVersion);
+// DataVersion newVersion = ((DefaultDataVersion) node.getVersion()).increment();
+// node.setVersion(newVersion);
}
/**
@@ -77,6 +76,8 @@
{
NodeSPI parent = lookupParent(fqn, ctx, container);
parent.removeChildDirect(fqn.getLastElement());
+ setValid(false, false);
+ updateNode(ctx, container, nodeFactory);
}
else
{
@@ -135,8 +136,9 @@
protected void updateNode(InvocationContext ctx, DataContainer dataContainer, NodeFactory nf)
{
// swap refs
- ((NodeReference) backup).setDelegate(((NodeReference) node).getDelegate());
+ ((NodeReference) backup).setDelegate(node);
node = backup;
+
}
public void rollbackUpdate()
Modified: core/trunk/src/main/java/org/jboss/cache/mvcc/RepeatableReadNode.java
===================================================================
--- core/trunk/src/main/java/org/jboss/cache/mvcc/RepeatableReadNode.java 2008-07-10 14:11:25 UTC (rev 6243)
+++ core/trunk/src/main/java/org/jboss/cache/mvcc/RepeatableReadNode.java 2008-07-10 16:42:50 UTC (rev 6244)
@@ -56,7 +56,10 @@
@Override
protected void updateNode(InvocationContext ctx, DataContainer dataContainer, NodeFactory nf)
{
- NodeSPI parent = lookupParent(getFqn(), ctx, dataContainer);
- parent.addChildDirect(nf.createNodeInvocationDelegate(node));
+ if (!deleted)
+ {
+ NodeSPI parent = lookupParent(getFqn(), ctx, dataContainer);
+ parent.addChildDirect(nf.createNodeInvocationDelegate(node));
+ }
}
}
Modified: core/trunk/src/test/java/org/jboss/cache/api/nodevalidity/InvalidatedMvccNodeValidityTest.java
===================================================================
--- core/trunk/src/test/java/org/jboss/cache/api/nodevalidity/InvalidatedMvccNodeValidityTest.java 2008-07-10 14:11:25 UTC (rev 6243)
+++ core/trunk/src/test/java/org/jboss/cache/api/nodevalidity/InvalidatedMvccNodeValidityTest.java 2008-07-10 16:42:50 UTC (rev 6244)
@@ -1,6 +1,8 @@
package org.jboss.cache.api.nodevalidity;
+import org.jboss.cache.config.Configuration;
import org.jboss.cache.config.Configuration.NodeLockingScheme;
+import org.jboss.cache.lock.IsolationLevel;
import org.testng.annotations.Test;
@Test(groups = {"functional", "mvcc"})
@@ -10,4 +12,11 @@
{
nodeLockingScheme = NodeLockingScheme.MVCC;
}
+
+ @Override
+ protected void nodeLockingSchemeSpecificSetup(Configuration c)
+ {
+ c.setNodeLockingScheme(nodeLockingScheme);
+ c.setIsolationLevel(IsolationLevel.READ_COMMITTED);
+ }
}
Modified: core/trunk/src/test/java/org/jboss/cache/api/nodevalidity/LocalMvccNodeValidityTest.java
===================================================================
--- core/trunk/src/test/java/org/jboss/cache/api/nodevalidity/LocalMvccNodeValidityTest.java 2008-07-10 14:11:25 UTC (rev 6243)
+++ core/trunk/src/test/java/org/jboss/cache/api/nodevalidity/LocalMvccNodeValidityTest.java 2008-07-10 16:42:50 UTC (rev 6244)
@@ -1,6 +1,8 @@
package org.jboss.cache.api.nodevalidity;
+import org.jboss.cache.config.Configuration;
import org.jboss.cache.config.Configuration.NodeLockingScheme;
+import org.jboss.cache.lock.IsolationLevel;
import org.testng.annotations.Test;
@Test(groups = {"functional", "mvcc"})
@@ -10,4 +12,11 @@
{
nodeLockingScheme = NodeLockingScheme.MVCC;
}
+
+ @Override
+ protected void nodeLockingSchemeSpecificSetup(Configuration c)
+ {
+ c.setNodeLockingScheme(nodeLockingScheme);
+ c.setIsolationLevel(IsolationLevel.READ_COMMITTED);
+ }
}
Modified: core/trunk/src/test/java/org/jboss/cache/api/nodevalidity/ReplicatedMvccNodeValidityTest.java
===================================================================
--- core/trunk/src/test/java/org/jboss/cache/api/nodevalidity/ReplicatedMvccNodeValidityTest.java 2008-07-10 14:11:25 UTC (rev 6243)
+++ core/trunk/src/test/java/org/jboss/cache/api/nodevalidity/ReplicatedMvccNodeValidityTest.java 2008-07-10 16:42:50 UTC (rev 6244)
@@ -1,6 +1,8 @@
package org.jboss.cache.api.nodevalidity;
+import org.jboss.cache.config.Configuration;
import org.jboss.cache.config.Configuration.NodeLockingScheme;
+import org.jboss.cache.lock.IsolationLevel;
import org.testng.annotations.Test;
@Test(groups = {"functional", "mvcc"})
@@ -10,4 +12,11 @@
{
nodeLockingScheme = NodeLockingScheme.MVCC;
}
+
+ @Override
+ protected void nodeLockingSchemeSpecificSetup(Configuration c)
+ {
+ c.setNodeLockingScheme(nodeLockingScheme);
+ c.setIsolationLevel(IsolationLevel.READ_COMMITTED);
+ }
}
More information about the jbosscache-commits
mailing list