From 42bfb9888a5a85352e7316e8c47e6a67441522f0 Mon Sep 17 00:00:00 2001
From: Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Mon, 09 Dec 2013 11:43:18 +0000
Subject: [PATCH] Fixing thread leaks in Continuous Integration.

---
 opends/src/server/org/opends/server/replication/server/ReplicationServerDomain.java |   11 ++++-------
 1 files changed, 4 insertions(+), 7 deletions(-)

diff --git a/opends/src/server/org/opends/server/replication/server/ReplicationServerDomain.java b/opends/src/server/org/opends/server/replication/server/ReplicationServerDomain.java
index 62f4913..90db71e 100644
--- a/opends/src/server/org/opends/server/replication/server/ReplicationServerDomain.java
+++ b/opends/src/server/org/opends/server/replication/server/ReplicationServerDomain.java
@@ -2456,7 +2456,7 @@
   private void stopStatusAnalyzer()
   {
     final StatusAnalyzer thread = statusAnalyzer.get();
-    if (statusAnalyzer.compareAndSet(thread, null))
+    if (thread != null && statusAnalyzer.compareAndSet(thread, null))
     {
       thread.shutdown();
       thread.waitForShutdown();
@@ -2485,7 +2485,7 @@
   private void stopMonitoringPublisher()
   {
     final MonitoringPublisher thread = monitoringPublisher.get();
-    if (monitoringPublisher.compareAndSet(thread, null))
+    if (thread != null && monitoringPublisher.compareAndSet(thread, null))
     {
       thread.shutdown();
       thread.waitForShutdown();
@@ -2629,14 +2629,11 @@
         continue;
       }
 
-      if (replicaNewestCSN != null
-          && (eligibleCSN == null ||
-              replicaNewestCSN.isNewerThan(eligibleCSN)))
+      if (eligibleCSN == null || replicaNewestCSN.isNewerThan(eligibleCSN))
       {
         eligibleCSN = replicaNewestCSN;
       }
-      if (heartbeatLastCSN != null
-          && (eligibleCSN == null || heartbeatLastCSN.isNewerThan(eligibleCSN)))
+      if (heartbeatLastCSN != null && heartbeatLastCSN.isNewerThan(eligibleCSN))
       {
         eligibleCSN = heartbeatLastCSN;
       }

--
Gitblit v1.10.0