From e2c93f78c54c600f894b3540f0679463c5e4837a Mon Sep 17 00:00:00 2001 From: Martin Ritchie Date: Tue, 24 Mar 2009 09:48:45 +0000 Subject: QPID-1662 : Converted PassiveTTL to a transacted session so we can ensure all messages are on broker and aging before we start our sleep cycle. The transacted session won't affect the way messages age. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@757696 13f79535-47bb-0310-9956-ffa450edef68 --- .../src/main/java/org/apache/qpid/server/queue/TimeToLiveTest.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'java/systests/src') diff --git a/java/systests/src/main/java/org/apache/qpid/server/queue/TimeToLiveTest.java b/java/systests/src/main/java/org/apache/qpid/server/queue/TimeToLiveTest.java index 289ca0b1b0..5970d105eb 100644 --- a/java/systests/src/main/java/org/apache/qpid/server/queue/TimeToLiveTest.java +++ b/java/systests/src/main/java/org/apache/qpid/server/queue/TimeToLiveTest.java @@ -70,7 +70,9 @@ public class TimeToLiveTest extends QpidTestCase producerConnection.start(); - Session producerSession = producerConnection.createSession(false, Session.AUTO_ACKNOWLEDGE); + // Move to a Transacted session to ensure that all messages have been delivered to broker before + // we start waiting for TTL + Session producerSession = producerConnection.createSession(true, Session.SESSION_TRANSACTED); MessageProducer producer = producerSession.createProducer(queue); @@ -89,12 +91,15 @@ public class TimeToLiveTest extends QpidTestCase producer.setTimeToLive(0L); producer.send(nextMessage(String.valueOf(msg), false, producerSession, producer)); + producerSession.commit(); + consumer = clientSession.createConsumer(queue); // Ensure we sleep the required amount of time. ReentrantLock waitLock = new ReentrantLock(); Condition wait = waitLock.newCondition(); final long MILLIS = 1000000L; + long waitTime = TIME_TO_LIVE * MILLIS; while (waitTime > 0) { -- cgit v1.2.1