Steps to reproduce:
- Install a cluster with HDFS (To start with single node host c6401)
- Add a new host (c6402) and don't add any of the slave components or client
- Add HAWQ or any other service, don't change the recommendation on master components page and click next
- Datanode checkbox will be checked on c6402 even though its not installed.
- Datanode should not be checked on c6402 as its not installed on the host.
- In stack advisor, a list of free hosts is created at https://github.com/apache/ambari/blob/trunk/ambari-server/src/main/resources/stacks/stack_advisor.py#L382
- During the step of creating the recommendation for Slave components slave hosts map is extended with any of the hosts in the freeHosts list at https://github.com/apache/ambari/blob/trunk/ambari-server/src/main/resources/stacks/stack_advisor.py#L412-L413
- Then in Ambari-web it updates the checkbox or datanode as installed on c6402.
Since this minor code changes goes to core stack advisor, i am requesting inputs to be sure before going ahead with the change.
1. Do we extend the hostlist for already installed Slaves for some reason or its incorrect ?
2. Do you foresee any concerns with the patch. (I have tested it on Fresh Install of Cluster and Add services page)
After fix: Datanode is not checked on c6402