JAMES-1950 Move DeliveryRunnable time measurement after dequeue operation
Project: http://git-wip-us.apache.org/repos/asf/james-project/repo Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/c8d7d02c Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/c8d7d02c Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/c8d7d02c Branch: refs/heads/master Commit: c8d7d02c917fc86eb0f3ac014f511d6dd7b9cd46 Parents: 486832a Author: benwa <btell...@linagora.com> Authored: Mon Mar 20 08:06:40 2017 +0700 Committer: benwa <btell...@linagora.com> Committed: Tue Mar 21 07:51:54 2017 +0700 ---------------------------------------------------------------------- .../transport/mailets/remoteDelivery/DeliveryRunnable.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/james-project/blob/c8d7d02c/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/remoteDelivery/DeliveryRunnable.java ---------------------------------------------------------------------- diff --git a/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/remoteDelivery/DeliveryRunnable.java b/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/remoteDelivery/DeliveryRunnable.java index b34f3af..150d089 100644 --- a/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/remoteDelivery/DeliveryRunnable.java +++ b/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/remoteDelivery/DeliveryRunnable.java @@ -93,12 +93,13 @@ public class DeliveryRunnable implements Runnable { } private void runStep() { - TimeMetric timeMetric = metricFactory.timer(REMOTE_DELIVERY_TRIAL); + TimeMetric timeMetric = null; try { // Get the 'mail' object that is ready for deliverying. If no message is // ready, the 'accept' will block until message is ready. // The amount of time to block is determined by the 'getWaitTime' method of the MultipleDelayFilter. MailQueue.MailQueueItem queueItem = queue.deQueue(); + timeMetric = metricFactory.timer(REMOTE_DELIVERY_TRIAL); Mail mail = queueItem.getMail(); try { @@ -124,7 +125,9 @@ public class DeliveryRunnable implements Runnable { logger.error("Exception caught in RemoteDelivery.run()", e); } } finally { - timeMetric.stopAndPublish(); + if (timeMetric != null) { + timeMetric.stopAndPublish(); + } } } --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org