diff --git a/dubbo-registry/src/main/java/com/alibaba/dubbo/registry/support/AbstractRegistryService.java b/dubbo-registry/src/main/java/com/alibaba/dubbo/registry/support/AbstractRegistryService.java index 38c36d4665..1d539183ee 100644 --- a/dubbo-registry/src/main/java/com/alibaba/dubbo/registry/support/AbstractRegistryService.java +++ b/dubbo-registry/src/main/java/com/alibaba/dubbo/registry/support/AbstractRegistryService.java @@ -114,7 +114,16 @@ public abstract class AbstractRegistryService implements RegistryService { } List urls = registered.get(service); if (urls != null) { - urls.remove(url); + URL deleteURL = null; + for (URL u : urls) { + if (u.toIdentityString().equals(url.toIdentityString())) { + deleteURL = u; + break; + } + } + if (deleteURL != null) { + urls.remove(deleteURL); + } } removeListener(service, listener); }