You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dubbo.apache.org by li...@apache.org on 2021/12/20 06:17:31 UTC
[dubbo] branch 3.0 updated: Fix the issue that ApplicationConfig#getmetadataserviceprotocol method maps the wrong key (#9415)
This is an automated email from the ASF dual-hosted git repository.
liujun pushed a commit to branch 3.0
in repository https://gitbox.apache.org/repos/asf/dubbo.git
The following commit(s) were added to refs/heads/3.0 by this push:
new a9673ee Fix the issue that ApplicationConfig#getmetadataserviceprotocol method maps the wrong key (#9415)
a9673ee is described below
commit a9673ee53e5c0557c13d9dab1cdacad1f3ba8867
Author: 灼华 <43...@users.noreply.github.com>
AuthorDate: Mon Dec 20 14:17:16 2021 +0800
Fix the issue that ApplicationConfig#getmetadataserviceprotocol method maps the wrong key (#9415)
---
.../src/main/java/org/apache/dubbo/config/ApplicationConfig.java | 3 ++-
.../dubbo/config/metadata/ConfigurableMetadataServiceExporter.java | 3 +--
.../src/test/java/org/apache/dubbo/config/ReferenceConfigTest.java | 4 ++++
.../registry/client/metadata/ServiceInstanceMetadataUtils.java | 7 ++-----
.../dubbo/registry/zookeeper/util/CuratorFrameworkUtils.java | 2 +-
5 files changed, 10 insertions(+), 9 deletions(-)
diff --git a/dubbo-common/src/main/java/org/apache/dubbo/config/ApplicationConfig.java b/dubbo-common/src/main/java/org/apache/dubbo/config/ApplicationConfig.java
index 454b76d..772c313 100644
--- a/dubbo-common/src/main/java/org/apache/dubbo/config/ApplicationConfig.java
+++ b/dubbo-common/src/main/java/org/apache/dubbo/config/ApplicationConfig.java
@@ -42,6 +42,7 @@ import static org.apache.dubbo.common.constants.CommonConstants.HOST_KEY;
import static org.apache.dubbo.common.constants.CommonConstants.LIVENESS_PROBE_KEY;
import static org.apache.dubbo.common.constants.CommonConstants.METADATA_KEY;
import static org.apache.dubbo.common.constants.CommonConstants.METADATA_SERVICE_PORT_KEY;
+import static org.apache.dubbo.common.constants.CommonConstants.METADATA_SERVICE_PROTOCOL_KEY;
import static org.apache.dubbo.common.constants.CommonConstants.READINESS_PROBE_KEY;
import static org.apache.dubbo.common.constants.CommonConstants.REGISTRY_LOCAL_FILE_CACHE_ENABLED;
import static org.apache.dubbo.common.constants.CommonConstants.SHUTDOWN_WAIT_KEY;
@@ -532,7 +533,7 @@ public class ApplicationConfig extends AbstractConfig {
this.metadataServicePort = metadataServicePort;
}
- @Parameter(key = METADATA_SERVICE_PORT_KEY)
+ @Parameter(key = METADATA_SERVICE_PROTOCOL_KEY)
public String getMetadataServiceProtocol() {
return metadataServiceProtocol;
}
diff --git a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/metadata/ConfigurableMetadataServiceExporter.java b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/metadata/ConfigurableMetadataServiceExporter.java
index 89659fe..39a1fc6 100644
--- a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/metadata/ConfigurableMetadataServiceExporter.java
+++ b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/metadata/ConfigurableMetadataServiceExporter.java
@@ -183,7 +183,6 @@ public class ConfigurableMetadataServiceExporter implements MetadataServiceExpor
if (it.hasNext()) {
String addr = it.next().getAddress();
String rawPort = addr.substring(addr.indexOf(":") + 1);
- logger.info("Using " + specifiedProtocol +" protocol to export MetadataService on port " + rawPort);
protocolConfig.setPort(Integer.parseInt(rawPort));
}
}
@@ -198,7 +197,7 @@ public class ConfigurableMetadataServiceExporter implements MetadataServiceExpor
protocolConfig.setPort(-1);
}
- logger.info("Using dubbo protocol to export metadata service on port " + protocolConfig.getPort());
+ logger.info("Using " + specifiedProtocol + " protocol to export metadata service on port " + protocolConfig.getPort());
return protocolConfig;
}
diff --git a/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ReferenceConfigTest.java b/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ReferenceConfigTest.java
index 3a0b747..ecc7e8d 100644
--- a/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ReferenceConfigTest.java
+++ b/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ReferenceConfigTest.java
@@ -92,6 +92,7 @@ import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY;
import static org.apache.dubbo.common.constants.CommonConstants.LIVENESS_PROBE_KEY;
import static org.apache.dubbo.common.constants.CommonConstants.METADATA_KEY;
import static org.apache.dubbo.common.constants.CommonConstants.METADATA_SERVICE_PORT_KEY;
+import static org.apache.dubbo.common.constants.CommonConstants.METADATA_SERVICE_PROTOCOL_KEY;
import static org.apache.dubbo.common.constants.CommonConstants.METHODS_KEY;
import static org.apache.dubbo.common.constants.CommonConstants.PID_KEY;
import static org.apache.dubbo.common.constants.CommonConstants.READINESS_PROBE_KEY;
@@ -180,6 +181,7 @@ public class ReferenceConfigTest {
applicationConfig.setPublishInterface(false);
applicationConfig.setProtocol("dubbo");
applicationConfig.setMetadataServicePort(88888);
+ applicationConfig.setMetadataServiceProtocol("tri");
applicationConfig.setLivenessProbe("livenessProbe");
applicationConfig.setReadinessProbe("readinessProb");
applicationConfig.setStartupProbe("startupProbe");
@@ -320,6 +322,8 @@ public class ReferenceConfigTest {
Assertions.assertTrue(serviceMetadata.getAttachments().containsKey(REGISTRY_PUBLISH_INTERFACE_KEY));
Assertions.assertEquals(applicationConfig.getMetadataServicePort().toString(),
serviceMetadata.getAttachments().get(METADATA_SERVICE_PORT_KEY));
+ Assertions.assertEquals(applicationConfig.getMetadataServiceProtocol().toString(),
+ serviceMetadata.getAttachments().get(METADATA_SERVICE_PROTOCOL_KEY));
Assertions.assertEquals(applicationConfig.getLivenessProbe(),
serviceMetadata.getAttachments().get(LIVENESS_PROBE_KEY));
Assertions.assertEquals(applicationConfig.getReadinessProbe(),
diff --git a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/metadata/ServiceInstanceMetadataUtils.java b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/metadata/ServiceInstanceMetadataUtils.java
index bc9064e..0ba0d14 100644
--- a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/metadata/ServiceInstanceMetadataUtils.java
+++ b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/metadata/ServiceInstanceMetadataUtils.java
@@ -116,10 +116,7 @@ public class ServiceInstanceMetadataUtils {
if (url == null) {
return "";
}
- url = url.removeParameter(APPLICATION_KEY);
- url = url.removeParameter(GROUP_KEY);
- url = url.removeParameter(DEPRECATED_KEY);
- url = url.removeParameter(TIMESTAMP_KEY);
+ url = url.removeParameters(APPLICATION_KEY, GROUP_KEY, DEPRECATED_KEY, TIMESTAMP_KEY);
Map<String, String> params = getParams(url);
if (params.isEmpty()) {
@@ -278,7 +275,7 @@ public class ServiceInstanceMetadataUtils {
LOGGER.warn("Refreshing of service instance started, but instance hasn't been registered yet.");
instance = serviceInstance;
}
- // copy instance again, in case the same instance accidently shared among registries
+ // copy instance again, in case the same instance accidentally shared among registries
instance = new DefaultServiceInstance((DefaultServiceInstance) instance);
calInstanceRevision(serviceDiscovery, instance);
customizeInstance(instance);
diff --git a/dubbo-registry/dubbo-registry-zookeeper/src/main/java/org/apache/dubbo/registry/zookeeper/util/CuratorFrameworkUtils.java b/dubbo-registry/dubbo-registry-zookeeper/src/main/java/org/apache/dubbo/registry/zookeeper/util/CuratorFrameworkUtils.java
index 97e471f..725857f 100644
--- a/dubbo-registry/dubbo-registry-zookeeper/src/main/java/org/apache/dubbo/registry/zookeeper/util/CuratorFrameworkUtils.java
+++ b/dubbo-registry/dubbo-registry-zookeeper/src/main/java/org/apache/dubbo/registry/zookeeper/util/CuratorFrameworkUtils.java
@@ -107,7 +107,7 @@ public abstract class CuratorFrameworkUtils {
int port = serviceInstance.getPort();
Map<String, String> metadata = serviceInstance.getSortedMetadata();
String id = generateId(host, port);
- ZookeeperInstance zookeeperInstance = new ZookeeperInstance(null, serviceName, metadata);
+ ZookeeperInstance zookeeperInstance = new ZookeeperInstance(id, serviceName, metadata);
try {
builder = builder()
.id(id)