diff --git a/src/edu/washington/escience/myria/api/encoding/QueryConstruct.java b/src/edu/washington/escience/myria/api/encoding/QueryConstruct.java index 50f2f8a89..06ca6c116 100644 --- a/src/edu/washington/escience/myria/api/encoding/QueryConstruct.java +++ b/src/edu/washington/escience/myria/api/encoding/QueryConstruct.java @@ -413,6 +413,11 @@ private static void assignWorkersToFragments(final List fr /* 1. Honor user overrides. Note this is unchecked, but we may find constraint violations later. */ for (PlanFragmentEncoding fragment : fragments) { + /* + * First, set it to be null since the fragment may have been instantiated in a previous iteration, but affected + * relations now may have different partitioning schemes than in the previous iteration. + */ + fragment.workers = null; if (fragment.overrideWorkers != null && fragment.overrideWorkers.size() > 0) { /* The workers are set in the plan. */ fragment.workers = fragment.overrideWorkers;