You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicecomb.apache.org by li...@apache.org on 2018/10/23 08:08:37 UTC

[incubator-servicecomb-java-chassis] branch master updated (56d8899 -> e344d1c)

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

liubao pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-servicecomb-java-chassis.git.


    from 56d8899  [SCB-964] fix MediaType setting problem
     new 54bd9dd  [SCB-718]If auto discovery failed, will cause a dead cycle
     new 67d072f  [SCB-718] format code
     new 6b76827  [SCB-718] format code
     new 61038d2  [SCB-718]modify test logic
     new e344d1c  [SCB-718]init auto discovery after heartbeat success

The 5 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../serviceregistry/client/IpPortManager.java        | 13 +++++++++++--
 .../registry/RemoteServiceRegistry.java              |  6 +++---
 .../serviceregistry/client/TestIpPortManager.java    | 20 +++++++++++++++-----
 3 files changed, 29 insertions(+), 10 deletions(-)


[incubator-servicecomb-java-chassis] 01/05: [SCB-718]If auto discovery failed, will cause a dead cycle

Posted by li...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

liubao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-servicecomb-java-chassis.git

commit 54bd9dd1db67c9cfe3f6a0bb6965f33eb059fad9
Author: laijianbin <73...@qq.com>
AuthorDate: Sun Sep 30 23:28:51 2018 +0800

    [SCB-718]If auto discovery failed, will cause a dead cycle
---
 .../servicecomb/serviceregistry/client/IpPortManager.java | 15 ++++++++++++---
 .../serviceregistry/registry/RemoteServiceRegistry.java   |  6 ++----
 .../serviceregistry/client/TestIpPortManager.java         | 14 ++++++++++++++
 3 files changed, 28 insertions(+), 7 deletions(-)

diff --git a/service-registry/src/main/java/org/apache/servicecomb/serviceregistry/client/IpPortManager.java b/service-registry/src/main/java/org/apache/servicecomb/serviceregistry/client/IpPortManager.java
index 0d5db0a..1bc92fc 100644
--- a/service-registry/src/main/java/org/apache/servicecomb/serviceregistry/client/IpPortManager.java
+++ b/service-registry/src/main/java/org/apache/servicecomb/serviceregistry/client/IpPortManager.java
@@ -51,8 +51,13 @@ public class IpPortManager {
   private boolean autoDiscoveryInited = false;
 
   private int maxRetryTimes;
+  
 
-  public int getMaxRetryTimes() {
+  public void setAutoDiscoveryInited(boolean autoDiscoveryInited) {
+	this.autoDiscoveryInited = autoDiscoveryInited;
+  }
+
+public int getMaxRetryTimes() {
     return maxRetryTimes;
   }
 
@@ -73,10 +78,14 @@ public class IpPortManager {
   // we have to do this operation after the first time setup has already done
   public void initAutoDiscovery() {
     if (!autoDiscoveryInited && this.serviceRegistryConfig.isRegistryAutoDiscovery()) {
-      instanceCacheManager.getOrCreate(REGISTRY_APP_ID,
+      InstanceCache cache = instanceCacheManager.getOrCreate(REGISTRY_APP_ID,
           REGISTRY_SERVICE_NAME,
           DefinitionConst.VERSION_RULE_LATEST);
-      autoDiscoveryInited = true;
+      if(cache.getInstanceMap().size() > 0) {
+    	setAutoDiscoveryInited(true);
+      }else {
+		setAutoDiscoveryInited(false);
+	}
     }
   }
 
diff --git a/service-registry/src/main/java/org/apache/servicecomb/serviceregistry/registry/RemoteServiceRegistry.java b/service-registry/src/main/java/org/apache/servicecomb/serviceregistry/registry/RemoteServiceRegistry.java
index 8eb4fb2..39e1271 100644
--- a/service-registry/src/main/java/org/apache/servicecomb/serviceregistry/registry/RemoteServiceRegistry.java
+++ b/service-registry/src/main/java/org/apache/servicecomb/serviceregistry/registry/RemoteServiceRegistry.java
@@ -25,7 +25,7 @@ import org.apache.servicecomb.serviceregistry.client.ServiceRegistryClient;
 import org.apache.servicecomb.serviceregistry.client.http.ServiceRegistryClientImpl;
 import org.apache.servicecomb.serviceregistry.config.ServiceRegistryConfig;
 import org.apache.servicecomb.serviceregistry.definition.MicroserviceDefinition;
-import org.apache.servicecomb.serviceregistry.task.MicroserviceRegisterTask;
+import org.apache.servicecomb.serviceregistry.task.MicroserviceInstanceHeartbeatTask;
 import org.apache.servicecomb.serviceregistry.task.event.PeriodicPullEvent;
 import org.apache.servicecomb.serviceregistry.task.event.PullMicroserviceVersionsInstancesEvent;
 import org.apache.servicecomb.serviceregistry.task.event.ShutdownEvent;
@@ -94,10 +94,8 @@ public class RemoteServiceRegistry extends AbstractServiceRegistry {
   }
 
   @Subscribe
-  public void onMicroserviceRegistryTask(MicroserviceRegisterTask event) {
-    if (event.isRegistered()) {
+  public void onMicroserviceRegistryTask(MicroserviceInstanceHeartbeatTask event) {
       ipPortManager.initAutoDiscovery();
-    }
   }
 
   public ScheduledThreadPoolExecutor getTaskPool() {
diff --git a/service-registry/src/test/java/org/apache/servicecomb/serviceregistry/client/TestIpPortManager.java b/service-registry/src/test/java/org/apache/servicecomb/serviceregistry/client/TestIpPortManager.java
index 771b2d9..225b970 100644
--- a/service-registry/src/test/java/org/apache/servicecomb/serviceregistry/client/TestIpPortManager.java
+++ b/service-registry/src/test/java/org/apache/servicecomb/serviceregistry/client/TestIpPortManager.java
@@ -122,6 +122,7 @@ public class TestIpPortManager {
     };
 
     manager.initAutoDiscovery();
+    manager.setAutoDiscoveryInited(true);
     IpPort address4 = manager.getNextAvailableAddress(address3);
     if (address1.getPort() == 9980) {
       Assert.assertEquals("127.0.0.1", address4.getHostOrIp());
@@ -135,6 +136,19 @@ public class TestIpPortManager {
     IpPort address5 = manager.getNextAvailableAddress(address4);
     Assert.assertEquals("127.0.0.1", address5.getHostOrIp());
     Assert.assertEquals(9980, address5.getPort());
+    
+    manager.initAutoDiscovery();
+    manager.setAutoDiscoveryInited(false);
+    IpPort address6 = manager.getNextAvailableAddress(address3);
+    if(address1.getPort() == 9980) {
+      Assert.assertEquals("127.0.0.1", address6.getHostOrIp());
+      Assert.assertEquals(9980, address6.getPort());
+    }else {
+      address6 = manager.getNextAvailableAddress(address1);
+      Assert.assertEquals("127.0.0.1", address6.getHostOrIp());
+      Assert.assertEquals(9980, address6.getPort());
+    }
+    
   }
 
   @Test


[incubator-servicecomb-java-chassis] 03/05: [SCB-718] format code

Posted by li...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

liubao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-servicecomb-java-chassis.git

commit 6b7682799a8ea64ee54cc02a6d3755f9b01b144c
Author: laijianbin <73...@qq.com>
AuthorDate: Tue Oct 16 15:31:46 2018 +0800

    [SCB-718] format code
---
 .../servicecomb/serviceregistry/client/TestIpPortManager.java     | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/service-registry/src/test/java/org/apache/servicecomb/serviceregistry/client/TestIpPortManager.java b/service-registry/src/test/java/org/apache/servicecomb/serviceregistry/client/TestIpPortManager.java
index 225b970..42f48a6 100644
--- a/service-registry/src/test/java/org/apache/servicecomb/serviceregistry/client/TestIpPortManager.java
+++ b/service-registry/src/test/java/org/apache/servicecomb/serviceregistry/client/TestIpPortManager.java
@@ -136,19 +136,19 @@ public class TestIpPortManager {
     IpPort address5 = manager.getNextAvailableAddress(address4);
     Assert.assertEquals("127.0.0.1", address5.getHostOrIp());
     Assert.assertEquals(9980, address5.getPort());
-    
+
     manager.initAutoDiscovery();
     manager.setAutoDiscoveryInited(false);
     IpPort address6 = manager.getNextAvailableAddress(address3);
-    if(address1.getPort() == 9980) {
+    if (address1.getPort() == 9980) {
       Assert.assertEquals("127.0.0.1", address6.getHostOrIp());
       Assert.assertEquals(9980, address6.getPort());
-    }else {
+    } else {
       address6 = manager.getNextAvailableAddress(address1);
       Assert.assertEquals("127.0.0.1", address6.getHostOrIp());
       Assert.assertEquals(9980, address6.getPort());
     }
-    
+
   }
 
   @Test


[incubator-servicecomb-java-chassis] 04/05: [SCB-718]modify test logic

Posted by li...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

liubao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-servicecomb-java-chassis.git

commit 61038d221e52dc108f81f34b0a84ddc24d0be9d5
Author: laijianbin <73...@qq.com>
AuthorDate: Mon Oct 22 14:43:20 2018 +0800

    [SCB-718]modify test logic
    
    Test init auto discovery faile and successe case, At first time, init auto discovery result is faile
---
 .../serviceregistry/client/TestIpPortManager.java      | 18 +++++++-----------
 1 file changed, 7 insertions(+), 11 deletions(-)

diff --git a/service-registry/src/test/java/org/apache/servicecomb/serviceregistry/client/TestIpPortManager.java b/service-registry/src/test/java/org/apache/servicecomb/serviceregistry/client/TestIpPortManager.java
index 42f48a6..d619b83 100644
--- a/service-registry/src/test/java/org/apache/servicecomb/serviceregistry/client/TestIpPortManager.java
+++ b/service-registry/src/test/java/org/apache/servicecomb/serviceregistry/client/TestIpPortManager.java
@@ -121,36 +121,32 @@ public class TestIpPortManager {
       }
     };
 
-    manager.initAutoDiscovery();
-    manager.setAutoDiscoveryInited(true);
+    manager.initAutoDiscovery();  //init result is false at first time
     IpPort address4 = manager.getNextAvailableAddress(address3);
     if (address1.getPort() == 9980) {
       Assert.assertEquals("127.0.0.1", address4.getHostOrIp());
-      Assert.assertEquals(9982, address4.getPort());
+      Assert.assertEquals(9980, address4.getPort());
     } else {
       address4 = manager.getNextAvailableAddress(address1);
       Assert.assertEquals("127.0.0.1", address4.getHostOrIp());
-      Assert.assertEquals(9982, address4.getPort());
+      Assert.assertEquals(9980, address4.getPort());
     }
 
     IpPort address5 = manager.getNextAvailableAddress(address4);
     Assert.assertEquals("127.0.0.1", address5.getHostOrIp());
-    Assert.assertEquals(9980, address5.getPort());
+    Assert.assertEquals(9981, address5.getPort());
 
-    manager.initAutoDiscovery();
-    manager.setAutoDiscoveryInited(false);
+    manager.setAutoDiscoveryInited(true);
     IpPort address6 = manager.getNextAvailableAddress(address3);
     if (address1.getPort() == 9980) {
       Assert.assertEquals("127.0.0.1", address6.getHostOrIp());
-      Assert.assertEquals(9980, address6.getPort());
+      Assert.assertEquals(9982, address6.getPort());
     } else {
       address6 = manager.getNextAvailableAddress(address1);
       Assert.assertEquals("127.0.0.1", address6.getHostOrIp());
-      Assert.assertEquals(9980, address6.getPort());
+      Assert.assertEquals(9982, address6.getPort());
     }
-
   }
-
   @Test
   public void testCreateServiceRegistryCacheWithInstanceCache() {
 


[incubator-servicecomb-java-chassis] 05/05: [SCB-718]init auto discovery after heartbeat success

Posted by li...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

liubao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-servicecomb-java-chassis.git

commit e344d1c9e564f72521032dc7a2d07f1da5906a95
Author: laijianbin <73...@qq.com>
AuthorDate: Mon Oct 22 14:59:18 2018 +0800

    [SCB-718]init auto discovery after heartbeat success
---
 .../servicecomb/serviceregistry/registry/RemoteServiceRegistry.java   | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/service-registry/src/main/java/org/apache/servicecomb/serviceregistry/registry/RemoteServiceRegistry.java b/service-registry/src/main/java/org/apache/servicecomb/serviceregistry/registry/RemoteServiceRegistry.java
index 39e1271..f9dbb46 100644
--- a/service-registry/src/main/java/org/apache/servicecomb/serviceregistry/registry/RemoteServiceRegistry.java
+++ b/service-registry/src/main/java/org/apache/servicecomb/serviceregistry/registry/RemoteServiceRegistry.java
@@ -94,8 +94,10 @@ public class RemoteServiceRegistry extends AbstractServiceRegistry {
   }
 
   @Subscribe
-  public void onMicroserviceRegistryTask(MicroserviceInstanceHeartbeatTask event) {
+  public void onMicroserviceHeartbeatTask(MicroserviceInstanceHeartbeatTask event) {
+    if (HeartbeatResult.SUCCESS.equals(event.getHeartbeatResult())) {
       ipPortManager.initAutoDiscovery();
+    }
   }
 
   public ScheduledThreadPoolExecutor getTaskPool() {


[incubator-servicecomb-java-chassis] 02/05: [SCB-718] format code

Posted by li...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

liubao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-servicecomb-java-chassis.git

commit 67d072f67dd97a5fa33f94d1cba4e3dc27d353d0
Author: laijianbin <73...@qq.com>
AuthorDate: Tue Oct 16 15:30:45 2018 +0800

    [SCB-718] format code
---
 .../serviceregistry/client/IpPortManager.java            | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/service-registry/src/main/java/org/apache/servicecomb/serviceregistry/client/IpPortManager.java b/service-registry/src/main/java/org/apache/servicecomb/serviceregistry/client/IpPortManager.java
index 1bc92fc..1ff5be4 100644
--- a/service-registry/src/main/java/org/apache/servicecomb/serviceregistry/client/IpPortManager.java
+++ b/service-registry/src/main/java/org/apache/servicecomb/serviceregistry/client/IpPortManager.java
@@ -51,13 +51,13 @@ public class IpPortManager {
   private boolean autoDiscoveryInited = false;
 
   private int maxRetryTimes;
-  
+
 
   public void setAutoDiscoveryInited(boolean autoDiscoveryInited) {
-	this.autoDiscoveryInited = autoDiscoveryInited;
+    this.autoDiscoveryInited = autoDiscoveryInited;
   }
 
-public int getMaxRetryTimes() {
+  public int getMaxRetryTimes() {
     return maxRetryTimes;
   }
 
@@ -81,11 +81,11 @@ public int getMaxRetryTimes() {
       InstanceCache cache = instanceCacheManager.getOrCreate(REGISTRY_APP_ID,
           REGISTRY_SERVICE_NAME,
           DefinitionConst.VERSION_RULE_LATEST);
-      if(cache.getInstanceMap().size() > 0) {
-    	setAutoDiscoveryInited(true);
-      }else {
-		setAutoDiscoveryInited(false);
-	}
+      if (cache.getInstanceMap().size() > 0) {
+        setAutoDiscoveryInited(true);
+      } else {
+        setAutoDiscoveryInited(false);
+      }
     }
   }