hadoop-yarn-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Eric Yang (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (YARN-8161) ServiceState FLEX should be removed
Date Mon, 16 Apr 2018 18:17:00 GMT

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

Eric Yang edited comment on YARN-8161 at 4/16/18 6:16 PM:
----------------------------------------------------------

[~gsaha] Thank you for filing this issue.  The current REST API performs operations such as:

{code}
curl -i --negotiate -u : -X PUT -H "Content-Type: application/json" -d@/tmp/flex.json http://eyang-2.openstacklocal:8088/app/v1/services/q1/components/ping
{code}

The payload of JSON shows:
{code}
{
    "name" : "ping",
    "number_of_containers" : 3,
    "run_privileged_container" : false,
    "state" : "FLEXING"
}
{code}

The state is in progressive tense.  There is no clear indicator when querying GET status API,
whether AM is actually performing the operation, or the state was set by user who issued the
operation request.

It would be nice to enhance the API to be more responsive by separating user requested operation
and state change. 
 For example, the pay load could be:
{code}
{
    "name" : "ping",
    "number_of_containers" : 3,
    "run_privileged_container" : false,
    "state" : "FLEX"
}
{code}

Application Master code will change to FLEXING when operation is being worked on.  GET status
API is invoked.
{code}
...
{
    "name" : "ping",
    "number_of_containers" : 3,
    "run_privileged_container" : false,
    "state" : "FLEXING"
}
...
{code}

When operation is finished, it reaches STABLE state:
{code}
...
{
    "name" : "ping",
    "number_of_containers" : 3,
    "run_privileged_container" : false,
    "state" : "STABLE"
}
...
{code}

The state transition provides better user feedback between state being triggered, or server
is currently working on the operation.  

The original code was written such that -flex operation is in cli code, which switch to FLEXING
when it reaches REST API.  For third party developer that does not rely on cli code base,
this can be confusing.  I think more feedback from the community, can help to decide to simply
code base by removing present tense state transition, or adding present tense transition for
better user feedback.


was (Author: eyang):
[~gsaha] Thank you for filing this issue.  The current REST API performs operations such as:

{quote}
curl -i --negotiate -u : -X PUT -H "Content-Type: application/json" -d@/tmp/flex.json http://eyang-2.openstacklocal:8088/app/v1/services/q1/components/ping
{quote}

The payload of JSON shows:
{quote}
{
    "name" : "ping",
    "number_of_containers" : 3,
    "run_privileged_container" : false,
    "state" : "FLEXING"
}
{quote}

The state is in progressive tense.  There is no clear indicator when querying GET status API,
whether AM is actually performing the operation, or the state was set by user who issued the
operation request.

It would be nice to enhance the API to be more responsive by separating user requested operation
and state change. 
 For example, the pay load could be:
{quote}
{
    "name" : "ping",
    "number_of_containers" : 3,
    "run_privileged_container" : false,
    "state" : "FLEX"
}
{quote}

Application Master code will change to FLEXING when operation is being worked on.  GET status
API is invoked.
{quote}
...
{
    "name" : "ping",
    "number_of_containers" : 3,
    "run_privileged_container" : false,
    "state" : "FLEXING"
}
...
{quote}

When operation is finished, it reaches STABLE state:
{quote}
...
{
    "name" : "ping",
    "number_of_containers" : 3,
    "run_privileged_container" : false,
    "state" : "STABLE"
}
...
{quote}

The state transition provides better user feedback between state being triggered, or server
is currently working on the operation.  

The original code was written such that -flex operation is in cli code, which switch to FLEXING
when it reaches REST API.  For third party developer that does not rely on cli code base,
this can be confusing.  I think more feedback from the community, can help to decide to simply
code base by removing present tense state transition, or adding present tense transition for
better user feedback.

> ServiceState FLEX should be removed
> -----------------------------------
>
>                 Key: YARN-8161
>                 URL: https://issues.apache.org/jira/browse/YARN-8161
>             Project: Hadoop YARN
>          Issue Type: Sub-task
>          Components: yarn-native-services
>    Affects Versions: 3.1.0
>            Reporter: Gour Saha
>            Priority: Major
>
> ServiceState FLEX is not required to trigger flex up/down of containers and should be
removed



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: yarn-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: yarn-issues-help@hadoop.apache.org


Mime
View raw message