summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Ritchie <ritchiem@apache.org>2007-04-18 14:40:47 +0000
committerMartin Ritchie <ritchiem@apache.org>2007-04-18 14:40:47 +0000
commit4c1055c7fa81fafe69455c04465bf33b71349d0c (patch)
tree0e624fcf38c7ab1a62c68083c9f92f545627510f
parent70c4ba4e9c6e9d375d21f4dc64eab0c4ad495a63 (diff)
downloadqpid-python-4c1055c7fa81fafe69455c04465bf33b71349d0c.tar.gz
QPID-457 Fixed rollback inTran problem with test case
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@530041 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--java/broker/src/main/java/org/apache/qpid/server/txn/TxnBuffer.java2
-rw-r--r--java/client/src/test/java/org/apache/qpid/test/unit/transacted/CommitRollbackTest.java31
2 files changed, 32 insertions, 1 deletions
diff --git a/java/broker/src/main/java/org/apache/qpid/server/txn/TxnBuffer.java b/java/broker/src/main/java/org/apache/qpid/server/txn/TxnBuffer.java
index 339ca8ae1a..405c233552 100644
--- a/java/broker/src/main/java/org/apache/qpid/server/txn/TxnBuffer.java
+++ b/java/broker/src/main/java/org/apache/qpid/server/txn/TxnBuffer.java
@@ -41,7 +41,7 @@ public class TxnBuffer
{
if (_log.isDebugEnabled())
{
- _log.debug("Committing " + _ops.size() + " ops to commit.:" + _ops.toArray());
+ _log.debug("Committing " + _ops.size() + " ops to commit.:" + _ops);
}
if (prepare(context))
diff --git a/java/client/src/test/java/org/apache/qpid/test/unit/transacted/CommitRollbackTest.java b/java/client/src/test/java/org/apache/qpid/test/unit/transacted/CommitRollbackTest.java
index 8ec19d955c..afe04af01a 100644
--- a/java/client/src/test/java/org/apache/qpid/test/unit/transacted/CommitRollbackTest.java
+++ b/java/client/src/test/java/org/apache/qpid/test/unit/transacted/CommitRollbackTest.java
@@ -412,4 +412,35 @@ public class CommitRollbackTest extends TestCase
assertNull("test message should be null:" + result, result);
}
+
+ public void testPutThenRollbackThenGet() throws Exception
+ {
+ assertTrue("session is not transacted", _session.getTransacted());
+ assertTrue("session is not transacted", _pubSession.getTransacted());
+
+ _logger.info("sending test message");
+ String MESSAGE_TEXT = "testPutThenRollbackThenGet";
+
+ _publisher.send(_pubSession.createTextMessage(MESSAGE_TEXT));
+ _pubSession.commit();
+
+ assertNotNull(_consumer.receive(100));
+
+ _publisher.send(_pubSession.createTextMessage(MESSAGE_TEXT));
+
+ _logger.info("rolling back");
+ _pubSession.rollback();
+
+ _logger.info("receiving result");
+ Message result = _consumer.receive(1000);
+ assertNull("test message was put and rolled back, but is still present", result);
+
+ _publisher.send(_pubSession.createTextMessage(MESSAGE_TEXT));
+
+ _pubSession.commit();
+
+ assertNotNull(_consumer.receive(100));
+
+ }
+
}