You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@mesos.apache.org by "Alexander Rukletsov (JIRA)" <ji...@apache.org> on 2017/01/04 14:21:58 UTC

[jira] [Commented] (MESOS-6417) Introduce an extra 'unknown' health check state.

    [ https://issues.apache.org/jira/browse/MESOS-6417?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15798363#comment-15798363 ] 

Alexander Rukletsov commented on MESOS-6417:
--------------------------------------------

If we want to keep health status as boolean {{healthy}}/{{unhealthy}} for simplicity, we may fix the ambiguity by wrapping the health status in a separate message. _Empty_ message means the health status is unknown, while _absent_ message means no health check has been specified.
{code}
message TaskStatus {
 <...>

 // Describes whether the task has been determined to be healthy
 // (true) or unhealthy (false) according to the HealthCheck field in
 // the command info.
 //
 // NOTE: This field will be deprecated in favor of a more verbose
 // `health_status` starting from 2.0.
 optional bool healthy = 8;

 // Contains health status for the health check specified in corresponding
 // `TaskInfo`. If no health check has been specified, this field must be
 // absent, otherwise it must be present even if the health status is not
 // available yet.
 //
 // NOTE: A task status update must be sent if:
 // 1) The health check fails, regardless of the previous value of
 //    `HealthStatusInfo.healthy`.
 // 2) the value or presence of the `HealthStatusInfo.healthy` field changes.
 optional HealthStatusInfo health_status = 15;

 <...>
}
{code}
{code}
/**
* Describes the status of a health check. An empty message means that the
* status is currently not available, for example, due to the health check
* being in a grace period.
*/
message HealthStatusInfo {
 // Executor must decide locally whether the task is healthy or not based
 // on the health check specification in corresponding `TaskInfo`.
 optional bool healthy = 2;
}
{code}

> Introduce an extra 'unknown' health check state.
> ------------------------------------------------
>
>                 Key: MESOS-6417
>                 URL: https://issues.apache.org/jira/browse/MESOS-6417
>             Project: Mesos
>          Issue Type: Improvement
>            Reporter: Alexander Rukletsov
>              Labels: health-check, mesosphere
>
> There are three logical states regarding health checks:
> 1) no health checks;
> 2) a health check is defined, but no result is available yet;
> 3) a health check is defined, it is either healthy or not.
> Currently, we do not distinguish between 1) and 2), which can be problematic for framework authors.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)