This is an automated email from the ASF dual-hosted git repository.

liujun pushed a commit to branch 2.7.0-release
in repository https://gitbox.apache.org/repos/asf/incubator-dubbo.git

commit 1eebe747b44e072b3b29c25d2b5944c856d6953a
Author: ken.lj <[email protected]>
AuthorDate: Wed Jan 9 15:16:43 2019 +0800

    refresh configCenter before start
---
 .../java/org/apache/dubbo/config/AbstractInterfaceConfig.java |  1 +
 .../src/main/java/org/apache/dubbo/config/ServiceConfig.java  | 11 +++++++++--
 2 files changed, 10 insertions(+), 2 deletions(-)

diff --git 
a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/AbstractInterfaceConfig.java
 
b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/AbstractInterfaceConfig.java
index 764bbe9..2c917e4 100644
--- 
a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/AbstractInterfaceConfig.java
+++ 
b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/AbstractInterfaceConfig.java
@@ -231,6 +231,7 @@ public abstract class AbstractInterfaceConfig extends 
AbstractMethodConfig {
 
     void startConfigCenter() {
         if (configCenter != null) {
+            configCenter.refresh();
             prepareEnvironment();
         }
         ConfigManager.getInstance().refreshAll();
diff --git 
a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ServiceConfig.java
 
b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ServiceConfig.java
index 18f8819..aef5e5c 100644
--- 
a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ServiceConfig.java
+++ 
b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ServiceConfig.java
@@ -790,8 +790,15 @@ public class ServiceConfig<T> extends 
AbstractServiceConfig {
         if (provider != null) {
             return;
         }
-        setProvider(ConfigManager.getInstance()
-                            .getDefaultProvider().orElse(new 
ProviderConfig()));
+        setProvider (
+                ConfigManager.getInstance()
+                        .getDefaultProvider()
+                        .orElseGet(() -> {
+                            ProviderConfig providerConfig = new 
ProviderConfig();
+                            providerConfig.refresh();
+                            return providerConfig;
+                        })
+        );
     }
 
     private void checkProtocol() {

Reply via email to