summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Ritchie <ritchiem@apache.org>2008-09-02 14:26:50 +0000
committerMartin Ritchie <ritchiem@apache.org>2008-09-02 14:26:50 +0000
commit813b46a3e6198f1cf346370bbfb7078aeac53305 (patch)
tree99531bc08ac7d2c53df2d1f3a27f42aaba687afe
parentae0c0cda56d54836905992b82e1610d076831453 (diff)
downloadqpid-python-813b46a3e6198f1cf346370bbfb7078aeac53305.tar.gz
QPID-1119 : modified the delay method to ensure that it always sleeps for the required time. Added logging to verify
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk@691260 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--qpid/java/systests/src/main/java/org/apache/qpid/server/store/SlowMessageStore.java15
1 files changed, 15 insertions, 0 deletions
diff --git a/qpid/java/systests/src/main/java/org/apache/qpid/server/store/SlowMessageStore.java b/qpid/java/systests/src/main/java/org/apache/qpid/server/store/SlowMessageStore.java
index 232295811c..92a142e402 100644
--- a/qpid/java/systests/src/main/java/org/apache/qpid/server/store/SlowMessageStore.java
+++ b/qpid/java/systests/src/main/java/org/apache/qpid/server/store/SlowMessageStore.java
@@ -48,6 +48,7 @@ public class SlowMessageStore implements MessageStore
public void configure(VirtualHost virtualHost, String base, Configuration config) throws Exception
{
+ _logger.info("Starting SlowMessageStore on Virtualhost:" + virtualHost.getName());
Configuration delays = config.subset(base + "." + DELAYS);
configureDelays(delays);
@@ -119,14 +120,28 @@ public class SlowMessageStore implements MessageStore
{
if (delay > 0)
{
+ long start = System.nanoTime();
try
{
+
Thread.sleep(delay);
}
catch (InterruptedException e)
{
_logger.warn("Interrupted : " + e);
}
+
+ long slept = (System.nanoTime() - start) / 1000000;
+
+ if (slept >= delay)
+ {
+ _logger.info("Done sleep for:" + slept+":"+delay);
+ }
+ else
+ {
+ _logger.info("Only sleep for:" + slept + " re-sleeping");
+ doDelay(delay - slept);
+ }
}
}