diff options
Diffstat (limited to 'qpid/java/systests/src/main/java/org/apache/qpid/server/store/SlowMessageStore.java')
-rw-r--r-- | qpid/java/systests/src/main/java/org/apache/qpid/server/store/SlowMessageStore.java | 15 |
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); + } } } |