From cf44474b926f6da103b7a4376fb446d7722ca939 Mon Sep 17 00:00:00 2001
From: Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Thu, 05 Dec 2013 15:14:40 +0000
Subject: [PATCH] OPENDJ-1174 Transfer responsibility for populating the ChangeNumberIndexDB to ChangelogDB

---
 opends/src/server/org/opends/server/replication/server/changelog/je/ChangeNumberIndexer.java |   18 +++++++++++++++++-
 1 files changed, 17 insertions(+), 1 deletions(-)

diff --git a/opends/src/server/org/opends/server/replication/server/changelog/je/ChangeNumberIndexer.java b/opends/src/server/org/opends/server/replication/server/changelog/je/ChangeNumberIndexer.java
index 76d47bf..24ca271 100644
--- a/opends/src/server/org/opends/server/replication/server/changelog/je/ChangeNumberIndexer.java
+++ b/opends/src/server/org/opends/server/replication/server/changelog/je/ChangeNumberIndexer.java
@@ -347,6 +347,17 @@
 
   /** {@inheritDoc} */
   @Override
+  public void initiateShutdown()
+  {
+    super.initiateShutdown();
+    synchronized (this)
+    {
+      notify();
+    }
+  }
+
+  /** {@inheritDoc} */
+  @Override
   public void run()
   {
     try
@@ -380,6 +391,10 @@
           {
             synchronized (this)
             {
+              if (isShutdownInitiated())
+              {
+                continue;
+              }
               wait();
             }
             // advance cursor, success/failure will be checked later
@@ -400,7 +415,8 @@
             synchronized (this)
             {
               // double check to protect against a missed call to notify()
-              if (!canMoveForwardMediumConsistencyPoint(baseDN))
+              if (!isShutdownInitiated()
+                  && !canMoveForwardMediumConsistencyPoint(baseDN))
               {
                 wait();
                 // loop to check if changes older than the medium consistency

--
Gitblit v1.10.0