Index: /branches/master/array-ingress/controller/openshift-controller/handlers/route_event_handler.go
===================================================================
--- /branches/master/array-ingress/controller/openshift-controller/handlers/route_event_handler.go	(revision 14)
+++ /branches/master/array-ingress/controller/openshift-controller/handlers/route_event_handler.go	(working copy)
@@ -42,14 +42,15 @@
 		log.Errorf("Cannot find service for route '%s' in namespace '%s'", route.Name, route.Namespace)
 		return
 	}
-	log.Infof("Associated realservice: %s", assocSvc)
+	log.Infof("Associated service: %s", assocSvc)
 	// Get endpoint using service name
 	endpoint, err := utils.GetAssocEndpt(assocSvc, route)
 	if err != nil {
 		log.Errorf("Cannot fetch endpoint '%s' in namespace '%s'", assocSvc, route.Namespace)
 		return
 	}
-	log.Infof("Associated endpoint: %s", endpoint)
+	log.Infof("Associated endpoint: %s", endpoint.Name)
+	log.Debugf("Endpoint details: %s\n", endpoint)
 
 	// Create OpenShift-specific handlers
 	osAPV := &apv.OpenShiftAPV{}
@@ -94,14 +95,15 @@
 		log.Errorf("Cannot find service for route '%s' in namespace '%s'", newRoute.Name, newRoute.Namespace)
 		return
 	}
-	log.Infof("Associated realservice: %s", assocSvc)
+	log.Infof("Associated service: %s", assocSvc)
 	// Get endpoint using service name
 	endpoint, err := utils.GetAssocEndpt(assocSvc, newRoute)
 	if err != nil {
 		log.Errorf("Cannot fetch endpoint '%s' in namespace '%s'", assocSvc, newRoute.Namespace)
 		return
 	}
-	log.Infof("Associated endpoint: %s", endpoint)
+	log.Infof("Associated endpoint: %s", endpoint.Name)
+	log.Debugf("Endpoint details: %s\n", endpoint)
 
 	// Initialize the Task Manager Facade with OpenShift handlers
 	taskManager := task.New(&apv.OpenShiftAPV{}, &asf.OpenShiftASF{})
@@ -199,7 +201,7 @@
 		log.Errorf("Route '%s' in namespace '%s' has no associated service", route.Name, route.Namespace)
 		return
 	}
-	log.Infof("Associated realservice: %s", assocSvc)
+	log.Infof("Associated service: %s", assocSvc)
 
 	// Get endpoint using service name
 	endpoint, err := utils.GetAssocEndpt(assocSvc, route)
@@ -207,7 +209,8 @@
 		log.Errorf("Cannot fetch endpoint '%s' in namespace '%s'", assocSvc, route.Namespace)
 		return
 	}
-	log.Infof("Associated endpoint: %s", endpoint)
+	log.Infof("Associated endpoint: %s", endpoint.Name)
+	log.Debugf("Endpoint details: %s\n", endpoint)
 
 	// Create OpenShift-specific handlers
 	osAPV := &apv.OpenShiftAPV{}
Index: /branches/master/array-ingress/task-manager/openshift/apv/realservice.go
===================================================================
--- /branches/master/array-ingress/task-manager/openshift/apv/realservice.go	(revision 14)
+++ /branches/master/array-ingress/task-manager/openshift/apv/realservice.go	(working copy)
@@ -160,7 +160,6 @@
 		err = configStore.Update(&realService, conditions)
 
 		if err != nil {
-			// todo: check how gorm update works
 			log.Errorf("Error updating service record for %s: %v", realService.ServiceName, err)
 		} else {
 			log.Infof("Service record updated successfully for %s", realService.ServiceName)
Index: /branches/master/array-ingress/task-manager/openshift/asf/realservice.go
===================================================================
--- /branches/master/array-ingress/task-manager/openshift/asf/realservice.go	(revision 14)
+++ /branches/master/array-ingress/task-manager/openshift/asf/realservice.go	(working copy)
@@ -28,6 +28,18 @@
 
 			realServiceName := fmt.Sprintf("%s_%s_%s", task.Route[0].Name, task.Route[0].Namespace, address.IP) // using format - routename_namespace_endptIP
 
+			// Retrieve existing service records
+			var realServices []configstore.AsfRealService
+			if err = configStore.ReadByRealServiceName(realServiceName, &realServices); err != nil {
+				log.Errorf("Error retrieving service records for route %s: %v", task.Route[0].Name, err)
+				return err
+			}
+
+			if len(realServices) > 0 {
+				log.Infof("RealService for route: %s and ip: %s already present with name %s", task.Route[0].Name, address.IP, realServiceName)
+				return nil
+			}
+
 			realService := configstore.AsfRealService{
 				IngressName: task.Route[0].Name,
 				ServiceName: realServiceName,
@@ -37,7 +49,7 @@
 				Status:      StatusWaiting,
 				CurrentOp:   OperationCreate,
 			}
-			if err = configStore.Create(realService); err != nil {
+			if err = configStore.Create(&realService); err != nil {
 				log.Errorf("Error creating service record for pod %s: %v", realServiceName, err)
 				return err
 			} else {
Index: /branches/master/array-ingress/watchtower/watchtower.go
===================================================================
--- /branches/master/array-ingress/watchtower/watchtower.go	(revision 14)
+++ /branches/master/array-ingress/watchtower/watchtower.go	(working copy)
@@ -42,7 +42,7 @@
 		// clear the previous value of channel and update new value
 		<-statusChan
 		statusChan <- status
-		log.Infof("Replaced previous status for %s device (%s) to: %v", deviceType, deviceIP, status)
+		log.Debugf("Replaced previous status for %s device (%s) to: %v", deviceType, deviceIP, status)
 	}
 }
 
