From 641daf8a2a9a19eb68a56b92d2e1354285574b11 Mon Sep 17 00:00:00 2001
From: Ruud Overeem <overeem@astron.nl>
Date: Mon, 3 Dec 2012 14:21:15 +0000
Subject: [PATCH] Task #1418: Fixed bug in ChildControl that cause that the
 garbage timer was not restarted. Increased the waittime in the
 OnlineController to give CEP more time to start up.

---
 MAC/APL/APLCommon/src/ChildControl.cc            | 5 ++---
 MAC/APL/CEPCU/src/OnlineControl/OnlineControl.cc | 4 ++--
 2 files changed, 4 insertions(+), 5 deletions(-)

diff --git a/MAC/APL/APLCommon/src/ChildControl.cc b/MAC/APL/APLCommon/src/ChildControl.cc
index 2f24adf0f0c..9a0ef06279c 100644
--- a/MAC/APL/APLCommon/src/ChildControl.cc
+++ b/MAC/APL/APLCommon/src/ChildControl.cc
@@ -65,7 +65,7 @@ ChildControl::ChildControl() :
 	itsTimerPort			(*this, "childControlTimer"),
 	itsStartDaemonMap		(),
 	itsStartupRetryInterval	(10),
-	itsMaxStartupRetries	(5),
+	itsMaxStartupRetries	(2),
 	itsCntlrList	 		(0),
 	itsActionList	 		(),
 	itsActionTimer			(0),
@@ -1053,9 +1053,8 @@ void ChildControl::_doGarbageCollection()
 				LOG_DEBUG_STR ("Controller " << iter->cntlrName << " is still unreachable, informing main task");
 				_setEstablishedState(iter->cntlrName, CTState::QUITED, time(0), CT_RESULT_LOST_CONNECTION);
 				iter->port = (GCFPortInterface*) -1;
-				restartTimer = true;
 			}
-
+			restartTimer = true;
 			iter++;
 		} else if (iter->port == (GCFPortInterface*)-1) {
 			LOG_DEBUG_STR ("Removing controller " << iter->cntlrName << " from the controller list");
diff --git a/MAC/APL/CEPCU/src/OnlineControl/OnlineControl.cc b/MAC/APL/CEPCU/src/OnlineControl/OnlineControl.cc
index 6eaaed56180..d729e40b1b1 100644
--- a/MAC/APL/CEPCU/src/OnlineControl/OnlineControl.cc
+++ b/MAC/APL/CEPCU/src/OnlineControl/OnlineControl.cc
@@ -775,8 +775,8 @@ void OnlineControl::_doBoot()
 			remoteCopy(paramFileName,accHost,LOFAR_SHARE_LOCATION);
 
 			// Finally start ApplController on the right host
-			LOG_INFO_STR("Starting controller for " << applName << " in 3 seconds ");
-			sleep(3);			 // sometimes we are too quick, wait a second.
+			LOG_INFO_STR("Starting controller for " << applName << " in 5 seconds ");
+			sleep(5);			 // sometimes we are too quick, wait a second.
 			int32	expectedRuntime = time_duration(itsStopTime - itsStartTime).total_seconds();
 			uint32	obsID = globalParameterSet()->getUint32("Observation.ObsID");
 			CEPApplMgrPtr	accClient (new CEPApplMgr(*this, formatString("%s%d", applName.c_str(), obsID),
-- 
GitLab