Github user PramodSSImmaneni commented on a diff in the pull request:

    https://github.com/apache/incubator-apex-core/pull/314#discussion_r60846619
  
    --- Diff: 
engine/src/main/java/com/datatorrent/stram/plan/physical/PhysicalPlan.java ---
    @@ -979,6 +998,14 @@ public void deployChanges() {
         this.undeployOpers.removeAll(newOpers.keySet());
    --- End diff --
    
    @tweise The getDependents also includes the operators in the argument set, 
since they are new we don't want to undeploy them. So it should be this
    
    Set<PTOperator> ndeps = getDependents(newOpers.keySet());
    ndeps.removeAll(newOpers.keySet());
    this.undeployOpers.addAll(ndeps);
    
    As you pointed out ndeps doesn't have to be added to deployOpers as it is 
already being done in the next line.
    
    I had a line in there 
    ndeps.removeAll(this.undeployOpers);
    to ensure that operators that are already scheduled to be undeployed 
(removed completely) don't get re-deployed because of this but on further 
thought this probably is not required because if some operators are already 
going to be undeployed they will not be in the dependency chain for newly 
deployable operators, is that assumption valid?


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---

Reply via email to