Github user tumativ commented on a diff in the pull request: https://github.com/apache/zookeeper/pull/689#discussion_r234504039 --- Diff: zookeeper-server/src/main/java/org/apache/zookeeper/server/watch/WatcherCleaner.java --- @@ -102,24 +104,24 @@ public void addDeadWatcher(int watcherBit) { totalDeadWatchers.get() >= maxInProcessingDeadWatchers) { try { RATE_LOGGER.rateLimitLog("Waiting for dead watchers cleaning"); - synchronized(totalDeadWatchers) { - totalDeadWatchers.wait(100); - } - } catch (InterruptedException e) { - LOG.info("Got interrupted while waiting for dead watches " + - "queue size"); - } - } - synchronized (this) { - if (deadWatchers.add(watcherBit)) { - totalDeadWatchers.incrementAndGet(); - if (deadWatchers.size() >= watcherCleanThreshold) { - synchronized (cleanEvent) { - cleanEvent.notifyAll(); - } - } - } + synchronized (processingCompletedEvent) { --- End diff -- Done. Can you please share formatter which is meant for this project? It will be useful in the future.
---