hadoop-yarn-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Daniel Voros (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (YARN-8779) Fix few discrepancies between YARN Service swagger spec and code
Date Thu, 25 Oct 2018 13:31:00 GMT

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

Daniel Voros edited comment on YARN-8779 at 10/25/18 1:30 PM:
--------------------------------------------------------------

One more thing:

9.

{{PUT /app/v1/services/\{service_name\}}} might return:
 * 200 (on start/stop),
 * 202 (on initiating/canceling upgrade or flexing)
 * 204 (in any other case - not sure what that might be)

however swagger spec only lists 204.


was (Author: dvoros):
One more thing:

9.

{{PUT /app/v1/services/{service_name}}} might return:
 * 200 (on start/stop),
 * 202 (on initiating/canceling upgrade or flexing)
 * 204 (in any other case - not sure what that might be)

however swagger spec only lists 204.

> Fix few discrepancies between YARN Service swagger spec and code
> ----------------------------------------------------------------
>
>                 Key: YARN-8779
>                 URL: https://issues.apache.org/jira/browse/YARN-8779
>             Project: Hadoop YARN
>          Issue Type: Bug
>          Components: yarn-native-services
>    Affects Versions: 3.1.0, 3.1.1
>            Reporter: Gour Saha
>            Priority: Major
>
> Following issues were identified in YARN Service swagger definition during an effort
to integrate with a running service by generating Java and Go client-side stubs from the spec
-
>  
> 1.
> *restartPolicy* is wrong and should be *restart_policy*
>  
> 2.
> A DELETE request to a non-existing service (or a previously existing but deleted service)
throws an ApiException instead of something like NotFoundException (the equivalent of 404). Note, DELETE
of an existing service behaves fine.
>  
> 3.
> The response code of DELETE request is 200. The spec says 204. Since the response has
a payload, the spec should be updated to 200 instead of 204.
>  
> 4.
>  _DefaultApi.java_ client's _appV1ServicesServiceNameGetWithHttpInfo_ method does not
return a Service object. Swagger definition has the below bug in GET response of */app/v1/services/\{service_name}*
-
> {code:java}
> type: object
> items:
>   $ref: '#/definitions/Service'
> {code}
> It should be -
> {code:java}
> $ref: '#/definitions/Service'
> {code}
>  
> 5.
> Serialization issues were seen in all enum classes - ServiceState.java, ContainerState.java, ComponentState.java,
PlacementType.java and PlacementScope.java.
> Java client threw the below exception for ServiceState -
> {code:java}
> Caused by: com.fasterxml.jackson.databind.exc.MismatchedInputException: Cannot construct
instance of `org.apache.cb.yarn.service.api.records.ServiceState` (although at least one Creator
exists): no String-argument constructor/factory method to deserialize from String value ('ACCEPTED')
>  at [Source: (org.glassfish.jersey.message.internal.ReaderInterceptorExecutor$UnCloseableInputStream);
line: 1, column: 121] (through reference chain: org.apache.cb.yarn.service.api.records.Service["state”])
> {code}
> For Golang we saw this for ContainerState -
> {code:java}
> ERRO[2018-08-12T23:32:31.851-07:00] During GET request: json: cannot unmarshal string
into Go struct field Container.state of type yarnmodel.ContainerState 
> {code}
>  
> 6.
> *launch_time* actually returns an integer but swagger definition says date. Hence, the
following exception is seen on the client side -
> {code:java}
> Caused by: com.fasterxml.jackson.databind.exc.MismatchedInputException: Unexpected token
(VALUE_NUMBER_INT), expected START_ARRAY: Expected array or string.
>  at [Source: (org.glassfish.jersey.message.internal.ReaderInterceptorExecutor$UnCloseableInputStream);
line: 1, column: 477] (through reference chain: org.apache.cb.yarn.service.api.records.Service["components"]->java.util.ArrayList[0]->org.apache.cb.yarn.service.api.records.Component["containers"]->java.util.ArrayList[0]->org.apache.cb.yarn.service.api.records.Container["launch_time”])
> {code}
>  
> 8.
> *user.name* query param with a valid value is required for all API calls to an unsecure
cluster. This is not defined in the spec.
>  



--
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