diff --git a/dubbo-admin-server/src/main/java/org/apache/dubbo/admin/service/impl/RouteServiceImpl.java b/dubbo-admin-server/src/main/java/org/apache/dubbo/admin/service/impl/RouteServiceImpl.java index 4856a5fc5..e15375e36 100644 --- a/dubbo-admin-server/src/main/java/org/apache/dubbo/admin/service/impl/RouteServiceImpl.java +++ b/dubbo-admin-server/src/main/java/org/apache/dubbo/admin/service/impl/RouteServiceImpl.java @@ -77,6 +77,7 @@ public void updateConditionRoute(ConditionRouteDTO newConditionRoute) { //for 2.6 if (StringUtils.isNotEmpty(newConditionRoute.getService())) { for (Route old : convertRouteToOldRoute(oldConditionRoute)) { + old.setService(id); registry.unregister(old.toUrl().addParameter(Constants.COMPATIBLE_CONFIG, true)); } for (Route updated : convertRouteToOldRoute(newConditionRoute)) { @@ -101,6 +102,7 @@ public void deleteConditionRoute(String id) { RoutingRule originRule = YamlParser.loadObject(config, RoutingRule.class); ConditionRouteDTO conditionRouteDTO = RouteUtils.createConditionRouteFromRule(originRule); for (Route old : convertRouteToOldRoute(conditionRouteDTO)) { + old.setService(id); URL oldUrl = old.toUrl(); if(oldUrl.getParameter("rule").contains("host") && oldUrl.getParameter("rule").contains("false")) { registry.unregister(oldUrl);