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

Dmitry Lysnichenko commented on AMBARI-4782:
--------------------------------------------

Published a new patch. The updated patch seems to implement all requested 
things. If the approach is appropriate, I'll add unit test coverage. Also, I'm 
considering fixing also Service resource (we have the same issue here, state is 
mapped to desired_state), but I'm not sure if it is needed. [~sumitmohanty], 
can you please your feedback regarding modifying Service resource as well? 

> Error in getting host components with state INSTALL_FAILED
> ----------------------------------------------------------
>
>                 Key: AMBARI-4782
>                 URL: https://issues.apache.org/jira/browse/AMBARI-4782
>             Project: Ambari
>          Issue Type: Task
>          Components: controller, test
>    Affects Versions: 1.3.0
>            Reporter: Dmitry Lysnichenko
>            Assignee: Dmitry Lysnichenko
>             Fix For: 1.5.0
>
>
> h2. The problem
> When try to get query on 
> api/v1/clusters/<clustername>/host_components?HostRoles/state=INSTALL_FAILED
> Response is
> { "status" : 400, "message" : "Invalid Request: Invalid arguments, invalid 
> desired state, desiredState=INSTALL_FAILED" }
> This issue is rooted at the over all issue Ambari has where when "state" is 
> specified in the API requests it is always interpreted as "desired_state". 
> And INSTALL_FAILED is an invalid "desired_state". Just fixing the GET calls 
> to interpret request:state as "state" (current state of a host component) 
> might be the right thing to do but will make the get calls to behave 
> differently than other calls. For example, request to set all component which 
> are in INSTALL_FAILED state to INIT (or MAINTENANCE) will not work as 
> expected. 
> h2. The proposal:
> The fix is to distinguish between "current_state" and "desired_state" and 
> promote "current_state" as a first class query parameter. "state" query 
> parameter will be still mapped to "desired_state" to maintain backward 
> compatibility.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to