[infinispan-commits] Infinispan SVN: r360 - in trunk/core/src/main/java/org/infinispan/commands: tx and 1 other directory.

infinispan-commits at lists.jboss.org infinispan-commits at lists.jboss.org
Fri May 29 04:58:12 EDT 2009


Author: mircea.markus
Date: 2009-05-29 04:58:12 -0400 (Fri, 29 May 2009)
New Revision: 360

Modified:
   trunk/core/src/main/java/org/infinispan/commands/LockControlCommand.java
   trunk/core/src/main/java/org/infinispan/commands/tx/PrepareCommand.java
Log:
RemoteTxContext should always be associated with a tx(fixed intermitent failure)

Modified: trunk/core/src/main/java/org/infinispan/commands/LockControlCommand.java
===================================================================
--- trunk/core/src/main/java/org/infinispan/commands/LockControlCommand.java	2009-05-29 07:25:14 UTC (rev 359)
+++ trunk/core/src/main/java/org/infinispan/commands/LockControlCommand.java	2009-05-29 08:58:12 UTC (rev 360)
@@ -86,14 +86,15 @@
          throw new IllegalStateException("Expected null context!");
       
       RemoteTxInvocationContext ctxt = icc.createRemoteTxInvocationContext();
+      RemoteTransaction transaction = txTable.getRemoteTransaction(globalTx);
 
-      boolean remoteTxinitiated = txTable.getRemoteTransaction(globalTx) != null ? true : false;
-      RemoteTransaction transaction =null;
+      boolean remoteTxinitiated = transaction != null;
       if (!remoteTxinitiated) {
          //create bogus modifications (we do not know modifications ahead of time)
+         //todo - make a create method that does not require creation of a WriteCommand[]
          transaction = txTable.createRemoteTransaction(globalTx, new WriteCommand[]{});
-         ctxt.setRemoteTransaction(transaction);   
       }
+      ctxt.setRemoteTransaction(transaction);
       return invoker.invoke(ctxt, this);
    }
 

Modified: trunk/core/src/main/java/org/infinispan/commands/tx/PrepareCommand.java
===================================================================
--- trunk/core/src/main/java/org/infinispan/commands/tx/PrepareCommand.java	2009-05-29 07:25:14 UTC (rev 359)
+++ trunk/core/src/main/java/org/infinispan/commands/tx/PrepareCommand.java	2009-05-29 08:58:12 UTC (rev 360)
@@ -79,7 +79,7 @@
 
       // 1. first create a remote transaction
       RemoteTransaction remoteTransaction = txTable.getRemoteTransaction(globalTx);
-      boolean remoteTxinitiated = remoteTransaction != null ? true : false;
+      boolean remoteTxinitiated = remoteTransaction != null;
       if (!remoteTxinitiated) {
          remoteTransaction = txTable.createRemoteTransaction(globalTx, modifications);
       } else {




More information about the infinispan-commits mailing list