This is an automated email from the ASF dual-hosted git repository. liujun pushed a commit to branch 3.2 in repository https://gitbox.apache.org/repos/asf/dubbo.git
The following commit(s) were added to refs/heads/3.2 by this push: new fed4755cd6 Fix dubbo.tag override by consumer.tag in NacosRegistry (#13592) fed4755cd6 is described below commit fed4755cd6693e51d8f99555b1d339019e591917 Author: namelessssssssssss <100946116+namelesssssssss...@users.noreply.github.com> AuthorDate: Tue Jan 2 10:22:13 2024 +0800 Fix dubbo.tag override by consumer.tag in NacosRegistry (#13592) --- .../registry/support/CacheableFailbackRegistry.java | 16 ---------------- .../apache/dubbo/registry/support/FailbackRegistry.java | 15 +++++++++++++++ .../org/apache/dubbo/registry/nacos/NacosRegistry.java | 1 + 3 files changed, 16 insertions(+), 16 deletions(-) diff --git a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/support/CacheableFailbackRegistry.java b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/support/CacheableFailbackRegistry.java index 94b38c6224..41b2c3ac4b 100644 --- a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/support/CacheableFailbackRegistry.java +++ b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/support/CacheableFailbackRegistry.java @@ -32,7 +32,6 @@ import org.apache.dubbo.common.utils.ConcurrentHashMapUtils; import org.apache.dubbo.common.utils.StringUtils; import org.apache.dubbo.common.utils.UrlUtils; import org.apache.dubbo.registry.NotifyListener; -import org.apache.dubbo.registry.ProviderFirstParams; import org.apache.dubbo.rpc.model.ScopeModel; import java.util.ArrayList; @@ -41,7 +40,6 @@ import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; -import java.util.Set; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; import java.util.concurrent.ScheduledExecutorService; @@ -319,20 +317,6 @@ public abstract class CacheableFailbackRegistry extends FailbackRegistry { return new DubboServiceAddressURL(address, param, consumerURL, null); } - protected URL removeParamsFromConsumer(URL consumer) { - Set<ProviderFirstParams> providerFirstParams = consumer.getOrDefaultApplicationModel() - .getExtensionLoader(ProviderFirstParams.class) - .getSupportedExtensionInstances(); - if (CollectionUtils.isEmpty(providerFirstParams)) { - return consumer; - } - - for (ProviderFirstParams paramsFilter : providerFirstParams) { - consumer = consumer.removeParameters(paramsFilter.params()); - } - return consumer; - } - private String stripOffVariableKeys(String rawProvider) { String[] keys = getVariableKeys(); if (keys == null || keys.length == 0) { diff --git a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/support/FailbackRegistry.java b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/support/FailbackRegistry.java index 5d311ca17d..177332240c 100644 --- a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/support/FailbackRegistry.java +++ b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/support/FailbackRegistry.java @@ -21,6 +21,7 @@ import org.apache.dubbo.common.timer.HashedWheelTimer; import org.apache.dubbo.common.utils.CollectionUtils; import org.apache.dubbo.common.utils.NamedThreadFactory; import org.apache.dubbo.registry.NotifyListener; +import org.apache.dubbo.registry.ProviderFirstParams; import org.apache.dubbo.registry.retry.FailedRegisteredTask; import org.apache.dubbo.registry.retry.FailedSubscribedTask; import org.apache.dubbo.registry.retry.FailedUnregisteredTask; @@ -177,6 +178,20 @@ public abstract class FailbackRegistry extends AbstractRegistry { } } + protected URL removeParamsFromConsumer(URL consumer) { + Set<ProviderFirstParams> providerFirstParams = consumer.getOrDefaultApplicationModel() + .getExtensionLoader(ProviderFirstParams.class) + .getSupportedExtensionInstances(); + if (CollectionUtils.isEmpty(providerFirstParams)) { + return consumer; + } + + for (ProviderFirstParams paramsFilter : providerFirstParams) { + consumer = consumer.removeParameters(paramsFilter.params()); + } + return consumer; + } + ConcurrentMap<URL, FailedRegisteredTask> getFailedRegistered() { return failedRegistered; } diff --git a/dubbo-registry/dubbo-registry-nacos/src/main/java/org/apache/dubbo/registry/nacos/NacosRegistry.java b/dubbo-registry/dubbo-registry-nacos/src/main/java/org/apache/dubbo/registry/nacos/NacosRegistry.java index de2d990ac4..9fbbd9ebb4 100644 --- a/dubbo-registry/dubbo-registry-nacos/src/main/java/org/apache/dubbo/registry/nacos/NacosRegistry.java +++ b/dubbo-registry/dubbo-registry-nacos/src/main/java/org/apache/dubbo/registry/nacos/NacosRegistry.java @@ -573,6 +573,7 @@ public class NacosRegistry extends FailbackRegistry { } private List<URL> toUrlWithEmpty(URL consumerURL, Collection<Instance> instances) { + consumerURL = removeParamsFromConsumer(consumerURL); List<URL> urls = buildURLs(consumerURL, instances); // Nacos does not support configurators and routers from registry, so all notifications are of providers type. if (urls.size() == 0 && !getUrl().getParameter(ENABLE_EMPTY_PROTECTION_KEY, DEFAULT_ENABLE_EMPTY_PROTECTION)) {