diff --git a/zookeeper-server/src/main/java/org/apache/zookeeper/server/watch/WatcherCleaner.java b/zookeeper-server/src/main/java/org/apache/zookeeper/server/watch/WatcherCleaner.java index c3b7e602f1c..80146200912 100644 --- a/zookeeper-server/src/main/java/org/apache/zookeeper/server/watch/WatcherCleaner.java +++ b/zookeeper-server/src/main/java/org/apache/zookeeper/server/watch/WatcherCleaner.java @@ -158,13 +158,13 @@ public void run() { cleaners.schedule(new WorkRequest() { @Override public void doWork() throws Exception { + ServerMetrics.getMetrics().DEAD_WATCHERS_CLEARED.add(total); + totalDeadWatchers.addAndGet(-total); long startTime = Time.currentElapsedTime(); listener.processDeadWatchers(snapshot); long latency = Time.currentElapsedTime() - startTime; LOG.info("Takes {} to process {} watches", latency, total); ServerMetrics.getMetrics().DEAD_WATCHERS_CLEANER_LATENCY.add(latency); - ServerMetrics.getMetrics().DEAD_WATCHERS_CLEARED.add(total); - totalDeadWatchers.addAndGet(-total); synchronized (processingCompletedEvent) { processingCompletedEvent.notifyAll(); }