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/servicecomb-java-chassis.git

commit 7701260374a2bd9c6023aa126e007f4d202064e8
Author: GuoYL <[email protected]>
AuthorDate: Mon Nov 25 11:50:40 2019 +0800

    [SCB-1407] delete synchronize
---
 .../distribute/AbstractRouterDistributor.java      | 32 ++++++++++------------
 1 file changed, 14 insertions(+), 18 deletions(-)

diff --git 
a/handlers/handler-router/src/main/java/org/apache/servicecomb/router/distribute/AbstractRouterDistributor.java
 
b/handlers/handler-router/src/main/java/org/apache/servicecomb/router/distribute/AbstractRouterDistributor.java
index a192ec6..64d957d 100644
--- 
a/handlers/handler-router/src/main/java/org/apache/servicecomb/router/distribute/AbstractRouterDistributor.java
+++ 
b/handlers/handler-router/src/main/java/org/apache/servicecomb/router/distribute/AbstractRouterDistributor.java
@@ -90,10 +90,9 @@ public abstract class AbstractRouterDistributor<T extends 
Server, E> implements
 
   /**
    * 1.filter targetService
-   * 2.return map distributed by version and tags
-   * establish map is a more complicate way than direct traversal,
-   * because we need to consider multiple matches,
-   * getProperties contains other irrelevant field except tags.
+   * 2.establish map is a more complicate way than direct traversal, because 
of multiple matches.
+   *
+   * the method getProperties() contains other field that we don't need.
    *
    * @param serviceName
    * @param list
@@ -120,21 +119,19 @@ public abstract class AbstractRouterDistributor<T extends 
Server, E> implements
             targetTag = entry.getTagitem();
           }
         }
-        synchronized (invokeRule) {
-          if (invokeRule.isWeightLess() && 
getVersion.apply(ms).equals(latestV)) {
-            TagItem latestVTag = 
invokeRule.getRoute().get(invokeRule.getRoute().size() - 1)
-                .getTagitem();
-            if (!versionServerMap.containsKey(latestVTag)) {
-              versionServerMap.put(latestVTag, new ArrayList<>());
-            }
-            versionServerMap.get(latestVTag).add(server);
+        if (invokeRule.isWeightLess() && getVersion.apply(ms).equals(latestV)) 
{
+          TagItem latestVTag = 
invokeRule.getRoute().get(invokeRule.getRoute().size() - 1)
+              .getTagitem();
+          if (!versionServerMap.containsKey(latestVTag)) {
+            versionServerMap.put(latestVTag, new ArrayList<>());
           }
-          if (targetTag != null) {
-            if (!versionServerMap.containsKey(targetTag)) {
-              versionServerMap.put(targetTag, new ArrayList<>());
-            }
-            versionServerMap.get(targetTag).add(server);
+          versionServerMap.get(latestVTag).add(server);
+        }
+        if (targetTag != null) {
+          if (!versionServerMap.containsKey(targetTag)) {
+            versionServerMap.put(targetTag, new ArrayList<>());
           }
+          versionServerMap.get(targetTag).add(server);
         }
       }
     }
@@ -161,7 +158,6 @@ public abstract class AbstractRouterDistributor<T extends 
Server, E> implements
   }
 
   /**
-   *
    * @param list
    * @param targetServiceName
    * @return

Reply via email to