This is an automated email from the ASF dual-hosted git repository.

jxue pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/helix.git

commit fcc1ce6d3130232b5f774e6f46a0af45d94f96ba
Author: Ali Reza Zamani Zadeh Najari <[email protected]>
AuthorDate: Mon Feb 1 14:13:09 2021 -0800

    Address the comments
---
 .../apache/helix/task/AbstractTaskDispatcher.java  | 24 +++++++++++-----------
 1 file changed, 12 insertions(+), 12 deletions(-)

diff --git 
a/helix-core/src/main/java/org/apache/helix/task/AbstractTaskDispatcher.java 
b/helix-core/src/main/java/org/apache/helix/task/AbstractTaskDispatcher.java
index 02933f2..8da6195 100644
--- a/helix-core/src/main/java/org/apache/helix/task/AbstractTaskDispatcher.java
+++ b/helix-core/src/main/java/org/apache/helix/task/AbstractTaskDispatcher.java
@@ -793,16 +793,15 @@ public abstract class AbstractTaskDispatcher {
   /**
    * Returns a filtered Iterable of tasks. To filter tasks in this context 
means to only allow tasks
    * whose contexts are either null or in STOPPED, TIMED_OUT, TASK_ERROR, or 
DROPPED state because
-   * only the
-   * tasks whose contexts are in these states are eligible to be assigned or 
re-tried.
+   * only the tasks whose contexts are in these states are eligible to be 
assigned or re-tried.
    * Also, for those tasks in non-terminal states whose previously assigned 
instances are no longer
-   * LiveInstances are re-added so that they could be re-assigned. Since in 
Task Pipeline,
+   * LiveInstances are re-added so that they could be re-assigned. Since in 
the Task Pipeline,
    * LiveInstance list contains instances that are live and enable, if 
instance is not among live
-   * instance, it is either not live or not enabled. If instance is not 
enabled, controller should
-   * first drop the task on the participant. After the task is dropped, then 
the task can be
-   * filtered for new assignment. Otherwise, once the participant is 
re-enabled, controller will
-   * two tasks in running state on two different participant and that cause 
quota and scheduling
-   * issues.
+   * instance, it is either not live or not enabled. If the instance is not 
enabled, the controller
+   * should first drop the task on the disabled participant. After the task is 
dropped, then the
+   * task can be filtered out for new assignment. Otherwise, once the 
participant is re-enabled,
+   * the controller see the task is running state on two different 
participants and that cause quota
+   * and scheduling issues.
    */
   private Set<Integer> filterTasks(String jobResource, Iterable<Integer> 
allPartitions,
       JobContext jobContext, Collection<String> liveInstances, Set<String> 
disableInstances,
@@ -816,17 +815,18 @@ public abstract class AbstractTaskDispatcher {
           || state == TaskPartitionState.DROPPED) {
         filteredTasks.add(partitionNumber);
       }
-      // Allow tasks whose assigned instances are no longer live or enable for 
rescheduling
+      // Allow tasks that their assigned instances are no longer live or 
enabled for rescheduling
       if (isTaskNotInTerminalState(state)) {
         String assignedParticipant = 
jobContext.getAssignedParticipant(partitionNumber);
-        final String pName = pName(jobResource, partitionNumber);
+        final String partitionName = pName(jobResource, partitionNumber);
         if (assignedParticipant != null && 
!liveInstances.contains(assignedParticipant)) {
           // The assigned instance is no longer in the liveInstance list. It 
is either not live or
           // disabled. If instance is disabled and current state still exist 
on the instance,
           // then controller needs to drop the current state, otherwise, the 
task can be marked as
           // dropped and be reassigned to other instances
-          if (disableInstances.contains(assignedParticipant) && currStateOutput
-              .getCurrentState(jobResource, new Partition(pName), 
assignedParticipant) != null) {
+          if (disableInstances.contains(assignedParticipant)
+              && currStateOutput.getCurrentState(jobResource, new 
Partition(partitionName),
+                  assignedParticipant) != null) {
             paMap.put(partitionNumber,
                 new PartitionAssignment(assignedParticipant, 
TaskPartitionState.DROPPED.name()));
           } else {

Reply via email to