diff --git a/src/config/schema-transformer/config_db.py b/src/config/schema-transformer/config_db.py index cc45d4be2e6..4e0c37a1c6a 100644 --- a/src/config/schema-transformer/config_db.py +++ b/src/config/schema-transformer/config_db.py @@ -2285,19 +2285,26 @@ def delete_obj(self): if rp: rp.delete_routing_instance(self) else: - rp_obj = RoutingPolicyST.read_vnc_obj(fq_name=rp_name) - if rp_obj: - rp_obj.del_routing_instance(self.obj) - self._vnc_lib.routing_policy_update(rp_obj) + try: + rp_obj = RoutingPolicyST.read_vnc_obj(fq_name=rp_name) + if rp_obj: + rp_obj.del_routing_instance(self.obj) + self._vnc_lib.routing_policy_update(rp_obj) + except NoIdError: + pass for ra_name in self.route_aggregates: ra = RouteAggregateST.get(ra_name) if ra: ra.delete_routing_instance(self) else: - ra_obj = RouteAggregateST.read_vnc_obj(fq_name=ra_name) - if ra_obj: - ra_obj.del_routing_instance(self.obj) - self._vnc_lib.route_aggregate_update(ra_obj) + try: + ra_obj = RouteAggregateST.read_vnc_obj(fq_name=ra_name) + if ra_obj: + ra_obj.del_routing_instance(self.obj) + self._vnc_lib.route_aggregate_update(ra_obj) + except NoIdError: + pass + self.routing_policys = {} self.route_aggregates = set() bgpaas_server_name = self.obj.get_fq_name_str() + ':bgpaas-server' @@ -4167,7 +4174,10 @@ def delete_routing_instance(self, ri): return self.obj.set_aggregate_route_nexthop(None) self.obj.set_routing_instance_list([]) - self._vnc_lib.route_aggregate_update(self.obj) + try: + self._vnc_lib.route_aggregate_update(self.obj) + except NoIdError: + pass self.routing_instances.discard(ri.name) # end delete_routing_instance