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 2022/03/04 07:55:13 UTC

[servicecomb-java-chassis] branch 1.3.x updated: [SCB-2385]fix IsolationDiscoveryFilter create many temporary objects (#2730)

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

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


The following commit(s) were added to refs/heads/1.3.x by this push:
     new 19f80f5  [SCB-2385]fix IsolationDiscoveryFilter create many temporary objects (#2730)
19f80f5 is described below

commit 19f80f5093d96e4254776d1d49b1bc244f7ba2ec
Author: lbc97 <82...@users.noreply.github.com>
AuthorDate: Fri Mar 4 15:55:05 2022 +0800

    [SCB-2385]fix IsolationDiscoveryFilter create many temporary objects (#2730)
---
 .../apache/servicecomb/loadbalance/filter/IsolationDiscoveryFilter.java | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/handlers/handler-loadbalance/src/main/java/org/apache/servicecomb/loadbalance/filter/IsolationDiscoveryFilter.java b/handlers/handler-loadbalance/src/main/java/org/apache/servicecomb/loadbalance/filter/IsolationDiscoveryFilter.java
index b81d2e2..c4b99d3 100644
--- a/handlers/handler-loadbalance/src/main/java/org/apache/servicecomb/loadbalance/filter/IsolationDiscoveryFilter.java
+++ b/handlers/handler-loadbalance/src/main/java/org/apache/servicecomb/loadbalance/filter/IsolationDiscoveryFilter.java
@@ -106,7 +106,7 @@ public class IsolationDiscoveryFilter implements DiscoveryFilter {
       }
     });
 
-    DiscoveryTreeNode child = new DiscoveryTreeNode();
+    DiscoveryTreeNode child = parent.children().computeIfAbsent("filterred", etn -> new DiscoveryTreeNode());
     if (ZoneAwareDiscoveryFilter.GROUP_Instances_All
         .equals(context.getContextParameter(ZoneAwareDiscoveryFilter.KEY_ZONE_AWARE_STEP)) && filteredServers.isEmpty()
         && emptyProtection.get()) {