diff --git a/src/context/service/database/Service.py b/src/context/service/database/Service.py index b65010fed00c885833ecab11fa0bdc5e2a56a4fa..76a83053587aa8beb44c4d96771c3cfa46945b07 100644 --- a/src/context/service/database/Service.py +++ b/src/context/service/database/Service.py @@ -118,11 +118,12 @@ def service_set(db_engine : Engine, request : Service) -> Tuple[Dict, bool]: created_at,updated_at = session.execute(stmt).fetchone() updated = updated_at > created_at - stmt = insert(ServiceEndPointModel).values(service_endpoints_data) - stmt = stmt.on_conflict_do_nothing( - index_elements=[ServiceEndPointModel.service_uuid, ServiceEndPointModel.endpoint_uuid] - ) - session.execute(stmt) + if len(service_endpoints_data) > 0: + stmt = insert(ServiceEndPointModel).values(service_endpoints_data) + stmt = stmt.on_conflict_do_nothing( + index_elements=[ServiceEndPointModel.service_uuid, ServiceEndPointModel.endpoint_uuid] + ) + session.execute(stmt) constraint_updates = upsert_constraints(session, constraints, service_uuid=service_uuid) updated = updated or any([(updated_at > created_at) for created_at,updated_at in constraint_updates])