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.
---