Type: New Feature
Affects Version/s: None
Fix Version/s: None
Helix Task Framework empowers user to run tasks on instances managed by Helix. There're 2 type of tasks: generic task and fixed target task. For fixed target task, the task always follows the targeted partition and is rebalanced if the partition is rebalanced. For generic task, Helix provides user the choice to rebalance the running task or not, when the topology of the cluster changes.
For most users, it's better to disabled this feature(as default) since there's no need to re-run the task every time new node is added. For users with long-running tasks, enabling this feature can be very useful so that when new node is added, the load of the tasks are better balanced among the cluster.
- Running tasks on that failed node will be rebalanced to a live node, since the task no longer exists and failed with the node.
- Running tasks will continue to run on the current instance.
- If a running task fails after a while, it might be rebalanced and run on other instances, according to the new rebalance assignment under the new cluster topology.
- Running task might be cancelled and rebalanced immediately, according to the new rebalance assignment under the new cluster topology.
A job level config field(RebalanceRunningTask) in JobConfig to enable/disable this feature. By default it's false.