[jira] [Comment Edited] (AMBARI-18376) Deploying 2 Clusters simultaneously results in one cluster failing.

2016-10-18 Thread Raymond (JIRA)

[ 
https://issues.apache.org/jira/browse/AMBARI-18376?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15585686#comment-15585686
 ] 

Raymond edited comment on AMBARI-18376 at 10/18/16 3:07 PM:


This seems like it should work on 2.4 as well, but not tested.

{code}
diff --git 
a/ambari-server/src/main/java/org/apache/ambari/server/topology/TopologyManager.java
 
b/ambari-server/src/main/java/org/apache/ambari/server/topology/TopologyManager.java
index b3e3941..b7e5563 100644
--- 
a/ambari-server/src/main/java/org/apache/ambari/server/topology/TopologyManager.java
+++ 
b/ambari-server/src/main/java/org/apache/ambari/server/topology/TopologyManager.java
@@ -570,24 +570,26 @@ public class TopologyManager {
 return clusterTopologyMap.get(clusterId);
   }
 
-  public Map getPendingHostComponents() {
+  public Map getPendingHostComponents(String 
clusterName) {
 ensureInitialized();
 Map hostComponentMap = new HashMap();
 
 for (LogicalRequest logicalRequest : allRequests.values()) {
   Map summary = 
logicalRequest.getStageSummaries();
-  final CalculatedStatus status = 
CalculatedStatus.statusFromStageSummary(summary, summary.keySet());
-  if (status.getStatus().isInProgress()) {
-Map requestTopology = 
logicalRequest.getProjectedTopology();
-for (Map.Entry entry : 
requestTopology.entrySet()) {
-  String host = entry.getKey();
-  Collection hostComponents = hostComponentMap.get(host);
-  if (hostComponents == null) {
-hostComponents = new HashSet();
-hostComponentMap.put(host, hostComponents);
+  if (clusterName != null && 
clusterName.equals(logicalRequest.getClusterName())) {
+  final CalculatedStatus status = 
CalculatedStatus.statusFromStageSummary(summary, summary.keySet());
+  if (status.getStatus().isInProgress()) {
+  Map requestTopology = 
logicalRequest.getProjectedTopology();
+  for (Map.Entry entry : 
requestTopology.entrySet()) {
+  String host = entry.getKey();
+  Collection hostComponents = 
hostComponentMap.get(host);
+  if (hostComponents == null) {
+  hostComponents = new HashSet();
+  hostComponentMap.put(host, hostComponents);
+  }
+  hostComponents.addAll(entry.getValue());
+  }
   }
-  hostComponents.addAll(entry.getValue());
-}
   }
 }
 return hostComponentMap;
diff --git 
a/ambari-server/src/main/java/org/apache/ambari/server/utils/StageUtils.java 
b/ambari-server/src/main/java/org/apache/ambari/server/utils/StageUtils.java
index 240bfc7..9232916 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/utils/StageUtils.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/utils/StageUtils.java
@@ -287,7 +287,7 @@ public class StageUtils {
 }
 
 // add hosts from topology manager
-Map pendingHostComponents = 
topologyManager.getPendingHostComponents();
+Map pendingHostComponents = 
topologyManager.getPendingHostComponents(cluster.getClusterName());
 for (String hostname : pendingHostComponents.keySet()) {
   if (!hostsSet.contains(hostname)) {
 hostsSet.add(hostname);
{code}


was (Author: rlee-pivotal):
This seems like it should work on 2.4 as well, but not tested.

```
diff --git 
a/ambari-server/src/main/java/org/apache/ambari/server/topology/TopologyManager.java
 
b/ambari-server/src/main/java/org/apache/ambari/server/topology/TopologyManager.java
index b3e3941..b7e5563 100644
--- 
a/ambari-server/src/main/java/org/apache/ambari/server/topology/TopologyManager.java
+++ 
b/ambari-server/src/main/java/org/apache/ambari/server/topology/TopologyManager.java
@@ -570,24 +570,26 @@ public class TopologyManager {
 return clusterTopologyMap.get(clusterId);
   }
 
-  public Map getPendingHostComponents() {
+  public Map getPendingHostComponents(String 
clusterName) {
 ensureInitialized();
 Map hostComponentMap = new HashMap();
 
 for (LogicalRequest logicalRequest : allRequests.values()) {
   Map summary = 
logicalRequest.getStageSummaries();
-  final CalculatedStatus status = 
CalculatedStatus.statusFromStageSummary(summary, summary.keySet());
-  if (status.getStatus().isInProgress()) {
-Map requestTopology = 
logicalRequest.getProjectedTopology();
-for (Map.Entry entry : 
requestTopology.entrySet()) {
-  String 

[jira] [Comment Edited] (AMBARI-18376) Deploying 2 Clusters simultaneously results in one cluster failing.

2016-10-18 Thread Raymond (JIRA)

[ 
https://issues.apache.org/jira/browse/AMBARI-18376?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15585686#comment-15585686
 ] 

Raymond edited comment on AMBARI-18376 at 10/18/16 3:05 PM:


This seems like it should work on 2.4 as well, but not tested.

```
diff --git 
a/ambari-server/src/main/java/org/apache/ambari/server/topology/TopologyManager.java
 
b/ambari-server/src/main/java/org/apache/ambari/server/topology/TopologyManager.java
index b3e3941..b7e5563 100644
--- 
a/ambari-server/src/main/java/org/apache/ambari/server/topology/TopologyManager.java
+++ 
b/ambari-server/src/main/java/org/apache/ambari/server/topology/TopologyManager.java
@@ -570,24 +570,26 @@ public class TopologyManager {
 return clusterTopologyMap.get(clusterId);
   }
 
-  public Map getPendingHostComponents() {
+  public Map getPendingHostComponents(String 
clusterName) {
 ensureInitialized();
 Map hostComponentMap = new HashMap();
 
 for (LogicalRequest logicalRequest : allRequests.values()) {
   Map summary = 
logicalRequest.getStageSummaries();
-  final CalculatedStatus status = 
CalculatedStatus.statusFromStageSummary(summary, summary.keySet());
-  if (status.getStatus().isInProgress()) {
-Map requestTopology = 
logicalRequest.getProjectedTopology();
-for (Map.Entry entry : 
requestTopology.entrySet()) {
-  String host = entry.getKey();
-  Collection hostComponents = hostComponentMap.get(host);
-  if (hostComponents == null) {
-hostComponents = new HashSet();
-hostComponentMap.put(host, hostComponents);
+  if (clusterName != null && 
clusterName.equals(logicalRequest.getClusterName())) {
+  final CalculatedStatus status = 
CalculatedStatus.statusFromStageSummary(summary, summary.keySet());
+  if (status.getStatus().isInProgress()) {
+  Map requestTopology = 
logicalRequest.getProjectedTopology();
+  for (Map.Entry entry : 
requestTopology.entrySet()) {
+  String host = entry.getKey();
+  Collection hostComponents = 
hostComponentMap.get(host);
+  if (hostComponents == null) {
+  hostComponents = new HashSet();
+  hostComponentMap.put(host, hostComponents);
+  }
+  hostComponents.addAll(entry.getValue());
+  }
   }
-  hostComponents.addAll(entry.getValue());
-}
   }
 }
 return hostComponentMap;
diff --git 
a/ambari-server/src/main/java/org/apache/ambari/server/utils/StageUtils.java 
b/ambari-server/src/main/java/org/apache/ambari/server/utils/StageUtils.java
index 240bfc7..9232916 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/utils/StageUtils.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/utils/StageUtils.java
@@ -287,7 +287,7 @@ public class StageUtils {
 }
 
 // add hosts from topology manager
-Map pendingHostComponents = 
topologyManager.getPendingHostComponents();
+Map pendingHostComponents = 
topologyManager.getPendingHostComponents(cluster.getClusterName());
 for (String hostname : pendingHostComponents.keySet()) {
   if (!hostsSet.contains(hostname)) {
 hostsSet.add(hostname);
```


was (Author: rlee-pivotal):
This seems like it should work on 2.4 as well, but not tested.

diff --git 
a/ambari-server/src/main/java/org/apache/ambari/server/topology/TopologyManager.java
 
b/ambari-server/src/main/java/org/apache/ambari/server/topology/TopologyManager.java
index b3e3941..b7e5563 100644
--- 
a/ambari-server/src/main/java/org/apache/ambari/server/topology/TopologyManager.java
+++ 
b/ambari-server/src/main/java/org/apache/ambari/server/topology/TopologyManager.java
@@ -570,24 +570,26 @@ public class TopologyManager {
 return clusterTopologyMap.get(clusterId);
   }
 
-  public Map getPendingHostComponents() {
+  public Map getPendingHostComponents(String 
clusterName) {
 ensureInitialized();
 Map hostComponentMap = new HashMap();
 
 for (LogicalRequest logicalRequest : allRequests.values()) {
   Map summary = 
logicalRequest.getStageSummaries();
-  final CalculatedStatus status = 
CalculatedStatus.statusFromStageSummary(summary, summary.keySet());
-  if (status.getStatus().isInProgress()) {
-Map requestTopology = 
logicalRequest.getProjectedTopology();
-for (Map.Entry entry : 
requestTopology.entrySet()) {
-  String host = 

[jira] [Comment Edited] (AMBARI-18376) Deploying 2 Clusters simultaneously results in one cluster failing.

2016-10-18 Thread Raymond (JIRA)

[ 
https://issues.apache.org/jira/browse/AMBARI-18376?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15585686#comment-15585686
 ] 

Raymond edited comment on AMBARI-18376 at 10/18/16 3:04 PM:


This seems like it should work on 2.4 as well, but not tested.

diff --git 
a/ambari-server/src/main/java/org/apache/ambari/server/topology/TopologyManager.java
 
b/ambari-server/src/main/java/org/apache/ambari/server/topology/TopologyManager.java
index b3e3941..b7e5563 100644
--- 
a/ambari-server/src/main/java/org/apache/ambari/server/topology/TopologyManager.java
+++ 
b/ambari-server/src/main/java/org/apache/ambari/server/topology/TopologyManager.java
@@ -570,24 +570,26 @@ public class TopologyManager {
 return clusterTopologyMap.get(clusterId);
   }
 
-  public Map getPendingHostComponents() {
+  public Map getPendingHostComponents(String 
clusterName) {
 ensureInitialized();
 Map hostComponentMap = new HashMap();
 
 for (LogicalRequest logicalRequest : allRequests.values()) {
   Map summary = 
logicalRequest.getStageSummaries();
-  final CalculatedStatus status = 
CalculatedStatus.statusFromStageSummary(summary, summary.keySet());
-  if (status.getStatus().isInProgress()) {
-Map requestTopology = 
logicalRequest.getProjectedTopology();
-for (Map.Entry entry : 
requestTopology.entrySet()) {
-  String host = entry.getKey();
-  Collection hostComponents = hostComponentMap.get(host);
-  if (hostComponents == null) {
-hostComponents = new HashSet();
-hostComponentMap.put(host, hostComponents);
+  if (clusterName != null && 
clusterName.equals(logicalRequest.getClusterName())) {
+  final CalculatedStatus status = 
CalculatedStatus.statusFromStageSummary(summary, summary.keySet());
+  if (status.getStatus().isInProgress()) {
+  Map requestTopology = 
logicalRequest.getProjectedTopology();
+  for (Map.Entry entry : 
requestTopology.entrySet()) {
+  String host = entry.getKey();
+  Collection hostComponents = 
hostComponentMap.get(host);
+  if (hostComponents == null) {
+  hostComponents = new HashSet();
+  hostComponentMap.put(host, hostComponents);
+  }
+  hostComponents.addAll(entry.getValue());
+  }
   }
-  hostComponents.addAll(entry.getValue());
-}
   }
 }
 return hostComponentMap;
diff --git 
a/ambari-server/src/main/java/org/apache/ambari/server/utils/StageUtils.java 
b/ambari-server/src/main/java/org/apache/ambari/server/utils/StageUtils.java
index 240bfc7..9232916 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/utils/StageUtils.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/utils/StageUtils.java
@@ -287,7 +287,7 @@ public class StageUtils {
 }
 
 // add hosts from topology manager
-Map pendingHostComponents = 
topologyManager.getPendingHostComponents();
+Map pendingHostComponents = 
topologyManager.getPendingHostComponents(cluster.getClusterName());
 for (String hostname : pendingHostComponents.keySet()) {
   if (!hostsSet.contains(hostname)) {
 hostsSet.add(hostname);



was (Author: rlee-pivotal):
This seems like it should work on 2.4 as well, but not tested.

> Deploying 2 Clusters simultaneously results in one cluster failing.
> ---
>
> Key: AMBARI-18376
> URL: https://issues.apache.org/jira/browse/AMBARI-18376
> Project: Ambari
>  Issue Type: Bug
>Affects Versions: 2.2.2
>Reporter: Raymond
>Priority: Minor
>  Labels: patch
> Fix For: 2.2.2
>
>
> Steps to Reproduce:
> 1) Spin up an Ambari server node
> 2) Setup 10 ambari agent nodes
> 3) create 2 blueprints and 2 cluster templates with 5 nodes for each cluster 
> (hdfs, zookeeper, yarn)
> 4) Upload both blueprints using the ambari api
> 5) Upload both cluster templates using the ambari api
> One cluster will fail, ssh into one of the nodes (with a zookeeper server) on 
> the failed cluster.
> Find the zoo.cfg file in /etc/zookeeper (find /etc/zookeeper -name zoo.cfg)
> Actual: cat the zoo.cfg, notice all hostnames of both clusters are in this 
> file
> Expected: zoo.cfg should contain only the hostnames defined for this cluster.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (AMBARI-18376) Deploying 2 Clusters simultaneously results in one cluster failing.

2016-10-18 Thread Raymond (JIRA)

 [ 
https://issues.apache.org/jira/browse/AMBARI-18376?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Raymond updated AMBARI-18376:
-
   Labels: patch  (was: )
Fix Version/s: 2.2.2
   Status: Patch Available  (was: Open)

This seems like it should work on 2.4 as well, but not tested.

> Deploying 2 Clusters simultaneously results in one cluster failing.
> ---
>
> Key: AMBARI-18376
> URL: https://issues.apache.org/jira/browse/AMBARI-18376
> Project: Ambari
>  Issue Type: Bug
>Affects Versions: 2.2.2
>Reporter: Raymond
>Priority: Minor
>  Labels: patch
> Fix For: 2.2.2
>
>
> Steps to Reproduce:
> 1) Spin up an Ambari server node
> 2) Setup 10 ambari agent nodes
> 3) create 2 blueprints and 2 cluster templates with 5 nodes for each cluster 
> (hdfs, zookeeper, yarn)
> 4) Upload both blueprints using the ambari api
> 5) Upload both cluster templates using the ambari api
> One cluster will fail, ssh into one of the nodes (with a zookeeper server) on 
> the failed cluster.
> Find the zoo.cfg file in /etc/zookeeper (find /etc/zookeeper -name zoo.cfg)
> Actual: cat the zoo.cfg, notice all hostnames of both clusters are in this 
> file
> Expected: zoo.cfg should contain only the hostnames defined for this cluster.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (AMBARI-18376) Deploying 2 Clusters simultaneously results in one cluster failing.

2016-10-17 Thread Raymond (JIRA)

 [ 
https://issues.apache.org/jira/browse/AMBARI-18376?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Raymond updated AMBARI-18376:
-
Remaining Estimate: (was: 4h)
 Original Estimate: (was: 4h)

> Deploying 2 Clusters simultaneously results in one cluster failing.
> ---
>
> Key: AMBARI-18376
> URL: https://issues.apache.org/jira/browse/AMBARI-18376
> Project: Ambari
>  Issue Type: Bug
>Affects Versions: 2.2.2
>Reporter: Raymond
>Priority: Minor
>
> Steps to Reproduce:
> 1) Spin up an Ambari server node
> 2) Setup 10 ambari agent nodes
> 3) create 2 blueprints and 2 cluster templates with 5 nodes for each cluster 
> (hdfs, zookeeper, yarn)
> 4) Upload both blueprints using the ambari api
> 5) Upload both cluster templates using the ambari api
> One cluster will fail, ssh into one of the nodes (with a zookeeper server) on 
> the failed cluster.
> Find the zoo.cfg file in /etc/zookeeper (find /etc/zookeeper -name zoo.cfg)
> Actual: cat the zoo.cfg, notice all hostnames of both clusters are in this 
> file
> Expected: zoo.cfg should contain only the hostnames defined for this cluster.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (AMBARI-18376) Deploying 2 Clusters simultaneously results in one cluster failing.

2016-09-13 Thread Raymond (JIRA)
Raymond created AMBARI-18376:


 Summary: Deploying 2 Clusters simultaneously results in one 
cluster failing.
 Key: AMBARI-18376
 URL: https://issues.apache.org/jira/browse/AMBARI-18376
 Project: Ambari
  Issue Type: Bug
Affects Versions: 2.2.2
Reporter: Raymond
Priority: Minor


Steps to Reproduce:
1) Spin up an Ambari server node
2) Setup 10 ambari agent nodes
3) create 2 blueprints and 2 cluster templates with 5 nodes for each cluster 
(hdfs, zookeeper, yarn)
4) Upload both blueprints using the ambari api
5) Upload both cluster templates using the ambari api

One cluster will fail, ssh into one of the nodes (with a zookeeper server) on 
the failed cluster.
Find the zoo.cfg file in /etc/zookeeper (find /etc/zookeeper -name zoo.cfg)

Actual: cat the zoo.cfg, notice all hostnames of both clusters are in this file
Expected: zoo.cfg should contain only the hostnames defined for this cluster.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)