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

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

commit 5184416bc7c87f5a6960f29823a071bc1ae826a4
Author: ken.lj <[email protected]>
AuthorDate: Sat Dec 22 14:08:14 2018 +0800

    fix busy loop caused by singledThreadExecutor
---
 .../org/apache/dubbo/metadata/support/AbstractMetadataReport.java    | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git 
a/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/support/AbstractMetadataReport.java
 
b/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/support/AbstractMetadataReport.java
index c557325..9aab901 100644
--- 
a/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/support/AbstractMetadataReport.java
+++ 
b/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/support/AbstractMetadataReport.java
@@ -16,7 +16,6 @@
  */
 package org.apache.dubbo.metadata.support;
 
-import com.google.gson.Gson;
 import org.apache.dubbo.common.Constants;
 import org.apache.dubbo.common.URL;
 import org.apache.dubbo.common.logger.Logger;
@@ -27,6 +26,8 @@ import 
org.apache.dubbo.metadata.definition.model.FullServiceDefinition;
 import org.apache.dubbo.metadata.identifier.MetadataIdentifier;
 import org.apache.dubbo.metadata.store.MetadataReport;
 
+import com.google.gson.Gson;
+
 import java.io.File;
 import java.io.FileInputStream;
 import java.io.FileOutputStream;
@@ -98,7 +99,7 @@ public abstract class AbstractMetadataReport implements 
MetadataReport {
                 reportServerURL.getParameter(Constants.RETRY_PERIOD_KEY, 
Constants.DEFAULT_METADATA_REPORT_RETRY_PERIOD));
         // cycle report the data switch
         if (reportServerURL.getParameter(Constants.CYCLE_REPORT_KEY, 
Constants.DEFAULT_METADATA_REPORT_CYCLE_REPORT)) {
-            ScheduledExecutorService scheduler = 
Executors.newScheduledThreadPool(0, new 
NamedThreadFactory("DubboMetadataReportTimer", true));
+            ScheduledExecutorService scheduler = 
Executors.newSingleThreadScheduledExecutor(new 
NamedThreadFactory("DubboMetadataReportTimer", true));
             scheduler.scheduleAtFixedRate(new Runnable() {
                 @Override
                 public void run() {

Reply via email to