You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@helix.apache.org by "Zhen Zhang (JIRA)" <ji...@apache.org> on 2013/12/06 02:17:35 UTC
[jira] [Commented] (HELIX-336) Add support for task framework
[ https://issues.apache.org/jira/browse/HELIX-336?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13840782#comment-13840782 ]
Zhen Zhang commented on HELIX-336:
----------------------------------
init work here:
https://reviews.apache.org/r/14073/
> Add support for task framework
> ------------------------------
>
> Key: HELIX-336
> URL: https://issues.apache.org/jira/browse/HELIX-336
> Project: Apache Helix
> Issue Type: New Feature
> Reporter: Zhen Zhang
> Assignee: Zhen Zhang
>
> Tasks are partitioned and placed based on a target resource. An explicit set of partitions or partition states may also be specified.
> Tasks can be paused, resumed and deleted (the message handlers are still being worked on --- for the time being, the test cases directly set zk state).
> Task resources and associated state are expired out of zk after a configured amount of time has elapsed since it was created. This is a per-task configuration.
> The number of concurrent tasks that run per instance is configurable.
> The only error policy available right now is to fail the entire task if any single task partition fails a configured number of times.
> The Task state model is as follows:
> init
> +
> |
> |
> v
> +-------------------+running+------------------------------+
> | + + + |
> | | | | |
> | | | +--------------------+ |
> | | | | |
> | +-----+ +--------+ | |
> v v v v v
> stopped completed timed_out task_error error
> + + + + +
> | | | | |
> | +-----+ +--------+ | |
> | | | | |
> | | | +--------------------+ |
> | v v v |
> +------------------> dropped <-----------------------------+
> "init" is the initial state of a task partition.
> "stopped" indicates that task partition is partially done but was stopped by the controller.
> "completed" indicates that the task partition is complete.
> "timed_out" indicates that the task partition did not complete within a configured time out value.
> "task_error" indicates that the task partition encountered an error during execution.
> "error" and "dropped" are helix internal states.
> The "init" to "running" transition does not wait for the task to finish execution on the participant. The participant requests state changes (to "completed" or "timed_out" or "task_error") via a "REQUESTED_STATE" property in the CURRENTSTATE znode.
> If the participant session is reset, all on-going tasks are stopped.
--
This message was sent by Atlassian JIRA
(v6.1#6144)