From 95d2d05d5db88a0d156ca7342abfa169b4e8e77d Mon Sep 17 00:00:00 2001
From: abobrov <abobrov@localhost>
Date: Fri, 19 Dec 2008 18:49:48 +0000
Subject: [PATCH] - plug issues 3562/3670

---
 opends/src/server/org/opends/server/backends/task/TaskScheduler.java |   11 ++++++-----
 1 files changed, 6 insertions(+), 5 deletions(-)

diff --git a/opends/src/server/org/opends/server/backends/task/TaskScheduler.java b/opends/src/server/org/opends/server/backends/task/TaskScheduler.java
index 6c30a95..e22b65a 100644
--- a/opends/src/server/org/opends/server/backends/task/TaskScheduler.java
+++ b/opends/src/server/org/opends/server/backends/task/TaskScheduler.java
@@ -1986,7 +1986,6 @@
       throw new DirectoryException(ResultCode.UNWILLING_TO_PERFORM, message);
     }
 
-
     // Try to load the specified class.
     Class<?> taskClass;
     try
@@ -2007,7 +2006,6 @@
                                    message);
     }
 
-
     // Instantiate the class as a task.
     Task task;
     try
@@ -2027,7 +2025,6 @@
                                    message);
     }
 
-
     // Perform the necessary internal and external initialization for the task.
     try
     {
@@ -2053,10 +2050,14 @@
                                    message);
     }
 
-
     task.setOperation(operation);
-    task.initializeTask();
+
+    // Avoid task specific initialization for completed tasks.
+    if (!TaskState.isDone(task.getTaskState())) {
+      task.initializeTask();
+    }
     task.setOperation(null);
+
     return task;
   }
 

--
Gitblit v1.10.0