diff --git a/src/service/service/ServiceServiceServicerImpl.py b/src/service/service/ServiceServiceServicerImpl.py
index 823122c0174b6dcd5b7c3c98e439554dbd7fb9d0..e2c236ce3ba1e443bbbff708355a38c7c752f2a1 100644
--- a/src/service/service/ServiceServiceServicerImpl.py
+++ b/src/service/service/ServiceServiceServicerImpl.py
@@ -206,27 +206,21 @@ class ServiceServiceServicerImpl(ServiceServiceServicer):
             pathcomp_request = PathCompRequest()
             pathcomp_request.services.append(service_with_uuids)    # pylint: disable=no-member
 
-            tasks_scheduler = TasksScheduler(self.service_handler_factory)
-            if len(service_with_uuids.service_endpoint_ids) >= num_expected_endpoints:
-                pathcomp_request = PathCompRequest()
-                pathcomp_request.services.append(service_with_uuids)    # pylint: disable=no-member
-
-                if num_disjoint_paths is None or num_disjoint_paths in {0, 1}:
-                    pathcomp_request.shortest_path.Clear()              # pylint: disable=no-member
-                else:
-                    pathcomp_request.k_disjoint_path.num_disjoint = num_disjoint_paths  # pylint: disable=no-member
-
-                LOGGER.info('pathcomp_request={:s}'.format(grpc_message_to_json_string(pathcomp_request)))
-                pathcomp = PathCompClient()
-                pathcomp_reply = pathcomp.Compute(pathcomp_request)
-                pathcomp.close()
-                LOGGER.info('pathcomp_reply={:s}'.format(grpc_message_to_json_string(pathcomp_reply)))
-
-                # Feed TaskScheduler with this path computation reply. TaskScheduler identifies inter-dependencies among
-                # the services and connections retrieved and produces a schedule of tasks (an ordered list of tasks to be
-                # executed) to implement the requested create/update operation.
-                tasks_scheduler.compose_from_pathcompreply(pathcomp_reply, is_delete=False)
-
+            if num_disjoint_paths is None or num_disjoint_paths in {0, 1}:
+                pathcomp_request.shortest_path.Clear()              # pylint: disable=no-member
+            else:
+                pathcomp_request.k_disjoint_path.num_disjoint = num_disjoint_paths  # pylint: disable=no-member
+
+            LOGGER.info('pathcomp_request={:s}'.format(grpc_message_to_json_string(pathcomp_request)))
+            pathcomp = PathCompClient()
+            pathcomp_reply = pathcomp.Compute(pathcomp_request)
+            pathcomp.close()
+            LOGGER.info('pathcomp_reply={:s}'.format(grpc_message_to_json_string(pathcomp_reply)))
+
+            # Feed TaskScheduler with this path computation reply. TaskScheduler identifies inter-dependencies among
+            # the services and connections retrieved and produces a schedule of tasks (an ordered list of tasks to be
+            # executed) to implement the requested create/update operation.
+            tasks_scheduler.compose_from_pathcompreply(pathcomp_reply, is_delete=False)
             tasks_scheduler.execute_all()
 
         return service_with_uuids.service_id
@@ -414,4 +408,4 @@ class ServiceServiceServicerImpl(ServiceServiceServicer):
             updated_service_with_uuids, old_connection, new_connection)
         tasks_scheduler.execute_all()
 
-        return Empty()
\ No newline at end of file
+        return Empty()