commit | ae7850bac3597ac3f5da6ee7d1013948a928dc08 | [log] [tgz] |
---|---|---|
author | Lin Sun <linsun@apache.org> | Fri Jan 09 14:38:41 2009 +0000 |
committer | Lin Sun <linsun@apache.org> | Fri Jan 09 14:38:41 2009 +0000 |
tree | 21adc0ad8d3eb52b862470dacd88c27a848e5746 | |
parent | 9de411a751e8439e623849755dd22b12c77a9bdb [diff] |
prevent one phase commit continue into 2 phase commit, should fix unit test in geronimo-connector git-svn-id: https://svn.apache.org/repos/asf/geronimo/components/txmanager/trunk@733049 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/geronimo-transaction/src/main/java/org/apache/geronimo/transaction/manager/TransactionImpl.java b/geronimo-transaction/src/main/java/org/apache/geronimo/transaction/manager/TransactionImpl.java index 5d2e0ec..1eda347 100644 --- a/geronimo-transaction/src/main/java/org/apache/geronimo/transaction/manager/TransactionImpl.java +++ b/geronimo-transaction/src/main/java/org/apache/geronimo/transaction/manager/TransactionImpl.java
@@ -302,8 +302,9 @@ if (resourceManagers.size() == 1) { TransactionBranch manager = (TransactionBranch) resourceManagers.getFirst(); commitResource(manager); - } - + return; + } + boolean willCommit = false; try { // two-phase @@ -313,7 +314,6 @@ throw e; } - // notify the RMs if (willCommit) { commitResources(resourceManagers); @@ -404,7 +404,6 @@ //helper method used by Transaction.commit and XATerminator prepare. private boolean internalPrepare() throws SystemException { - for (Iterator rms = resourceManagers.iterator(); rms.hasNext();) { synchronized (this) { if (status != Status.STATUS_PREPARING) {