it's differente. in the AbstractTransactionBoundaryCommand.perform it does 
```
RemoteTransaction transaction = txTable.getRemoteTransaction(globalTx);
      if (transaction == null) {
         if (trace) log.tracef("Did not find a RemoteTransaction for %s", globalTx);
         return invalidRemoteTxReturnValue();
      }
```

and in TO commands I have 
```
RemoteTransaction transaction = txTable.getOrCreateRemoteTransaction(globalTx, null);
```

I need this because the Commit/Rollback are not ordered with the Prepares, so I deal with the cases where the commit/rollback is received before the prepare.