From f2f26f828537c3da06ac3c335f2a70061debd814 Mon Sep 17 00:00:00 2001 From: gifrerenom <lluis.gifre@cttc.es> Date: Tue, 21 Feb 2023 11:19:58 +0000 Subject: [PATCH] Slice component: - Added close connection to enable load balancing in requests --- src/slice/service/SliceServiceServicerImpl.py | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/src/slice/service/SliceServiceServicerImpl.py b/src/slice/service/SliceServiceServicerImpl.py index 717127a00..acec3ae30 100644 --- a/src/slice/service/SliceServiceServicerImpl.py +++ b/src/slice/service/SliceServiceServicerImpl.py @@ -64,7 +64,9 @@ class SliceServiceServicerImpl(SliceServiceServicer): # unable to identify the kind of slice; just update endpoints, constraints and config rules # update the slice in database, and return # pylint: disable=no-member - return context_client.SetSlice(slice_rw) + reply = context_client.SetSlice(slice_rw) + context_client.close() + return reply slice_with_uuids = context_client.GetSlice(slice_id_with_uuids) @@ -82,10 +84,12 @@ class SliceServiceServicerImpl(SliceServiceServicer): slice_active.CopyFrom(slice_) slice_active.slice_status.slice_status = SliceStatusEnum.SLICESTATUS_ACTIVE # pylint: disable=no-member context_client.SetSlice(slice_active) + interdomain_client.close() + context_client.close() return slice_id if self._slice_grouper.is_enabled: - grouped = self._slice_grouper.group(slice_with_uuids) + grouped = self._slice_grouper.group(slice_with_uuids) # pylint: disable=unused-variable # Local domain slice service_id = ServiceId() @@ -159,6 +163,9 @@ class SliceServiceServicerImpl(SliceServiceServicer): slice_active.CopyFrom(slice_) slice_active.slice_status.slice_status = SliceStatusEnum.SLICESTATUS_ACTIVE # pylint: disable=no-member context_client.SetSlice(slice_active) + + service_client.close() + context_client.close() return slice_id @safe_and_metered_rpc_method(METRICS_POOL, LOGGER) @@ -195,6 +202,7 @@ class SliceServiceServicerImpl(SliceServiceServicer): try: _slice = context_client.GetSlice(request) except: # pylint: disable=bare-except + context_client.close() return Empty() if is_multi_domain(context_client, _slice.slice_endpoint_ids): @@ -208,7 +216,7 @@ class SliceServiceServicerImpl(SliceServiceServicer): context_client.SetSlice(current_slice) if self._slice_grouper.is_enabled: - ungrouped = self._slice_grouper.ungroup(current_slice) + ungrouped = self._slice_grouper.ungroup(current_slice) # pylint: disable=unused-variable service_client = ServiceClient() for service_id in _slice.slice_service_ids: @@ -219,6 +227,8 @@ class SliceServiceServicerImpl(SliceServiceServicer): context_client.UnsetSlice(current_slice) service_client.DeleteService(service_id) + service_client.close() context_client.RemoveSlice(request) + context_client.close() return Empty() -- GitLab