Repository: stratos
Updated Branches:
  refs/heads/master c5d89bdd6 -> 91335592e


Fix issue of network partition id based filter for members


Project: http://git-wip-us.apache.org/repos/asf/stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/91335592
Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/91335592
Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/91335592

Branch: refs/heads/master
Commit: 91335592e30cb4659ce471bb544ffb4bb9fa632c
Parents: c5d89bd
Author: Lahiru Sandaruwan <[email protected]>
Authored: Wed Jun 3 14:22:02 2015 +0530
Committer: Lahiru Sandaruwan <[email protected]>
Committed: Wed Jun 3 14:22:10 2015 +0530

----------------------------------------------------------------------
 ...LoadBalancerCommonTopologyEventReceiver.java | 26 +++++++++++++++++---
 .../src/main/conf/loadbalancer.conf             |  3 ++-
 2 files changed, 25 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/stratos/blob/91335592/components/org.apache.stratos.load.balancer.common/src/main/java/org/apache/stratos/load/balancer/common/event/receivers/LoadBalancerCommonTopologyEventReceiver.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.load.balancer.common/src/main/java/org/apache/stratos/load/balancer/common/event/receivers/LoadBalancerCommonTopologyEventReceiver.java
 
b/components/org.apache.stratos.load.balancer.common/src/main/java/org/apache/stratos/load/balancer/common/event/receivers/LoadBalancerCommonTopologyEventReceiver.java
index faac524..622ca80 100644
--- 
a/components/org.apache.stratos.load.balancer.common/src/main/java/org/apache/stratos/load/balancer/common/event/receivers/LoadBalancerCommonTopologyEventReceiver.java
+++ 
b/components/org.apache.stratos.load.balancer.common/src/main/java/org/apache/stratos/load/balancer/common/event/receivers/LoadBalancerCommonTopologyEventReceiver.java
@@ -66,8 +66,21 @@ public class LoadBalancerCommonTopologyEventReceiver extends 
TopologyEventReceiv
                 for (Cluster cluster : service.getClusters()) {
                     for (Member member : cluster.getMembers()) {
                         if (member.getStatus() == MemberStatus.Active) {
-                            addMember(cluster.getServiceName(), 
member.getClusterId(), member.getMemberId());
-                            membersFound = true;
+
+                            String serviceName = member.getServiceName();
+                            String clusterId = member.getClusterId();
+                            String memberId = member.getMemberId();
+
+                            String networkPartitionIdFilter = 
System.getProperty("network.partition.id").trim();
+                            if (!networkPartitionIdFilter.equals("")) {
+                                if 
(member.getNetworkPartitionId().equals(networkPartitionIdFilter)) {
+                                    addMember(serviceName, clusterId, 
memberId);
+                                    membersFound = true;
+                                }
+                            } else {
+                                addMember(serviceName, clusterId, memberId);
+                                membersFound = true;
+                            }
                         }
                     }
                 }
@@ -109,7 +122,14 @@ public class LoadBalancerCommonTopologyEventReceiver 
extends TopologyEventReceiv
 
                 try {
                     TopologyManager.acquireReadLockForCluster(serviceName, 
clusterId);
-                    addMember(serviceName, clusterId, memberId);
+                    String networkPartitionIdFilter = 
System.getProperty("network.partition.id").trim();
+                    if (!networkPartitionIdFilter.equals("")) {
+                        if 
(memberActivatedEvent.getNetworkPartitionId().equals(networkPartitionIdFilter)) 
{
+                            addMember(serviceName, clusterId, memberId);
+                        }
+                    } else {
+                        addMember(serviceName, clusterId, memberId);
+                    }
                 } catch (Exception e) {
                     log.error("Error processing event", e);
                 } finally {

http://git-wip-us.apache.org/repos/asf/stratos/blob/91335592/products/load-balancer/modules/distribution/src/main/conf/loadbalancer.conf
----------------------------------------------------------------------
diff --git 
a/products/load-balancer/modules/distribution/src/main/conf/loadbalancer.conf 
b/products/load-balancer/modules/distribution/src/main/conf/loadbalancer.conf
index dd283d0..6e38eba 100644
--- 
a/products/load-balancer/modules/distribution/src/main/conf/loadbalancer.conf
+++ 
b/products/load-balancer/modules/distribution/src/main/conf/loadbalancer.conf
@@ -77,7 +77,8 @@ loadbalancer {
 
     # Network partition id
     # Provide the network partition id if cep-stats-publisher is set to true.
-    network-partition-id: network-partition-1;
+    # Disabled in default
+    # network-partition-id: network-partition-1;
 
     # Multi-tenancy
     # If this property is set to true, all incoming request URLs will be 
scanned using the given tenant-identifier-regex

Reply via email to