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

Hudson commented on AMBARI-24934:
---------------------------------

SUCCESS: Integrated in Jenkins build Ambari-trunk-Commit #10316 (See 
[https://builds.apache.org/job/Ambari-trunk-Commit/10316/])
AMBARI-24934. Accept legacy JSON configuration in Add Service request (github: 
[https://gitbox.apache.org/repos/asf?p=ambari.git&a=commit&h=e62cc462fb5d2ac0f2c90912d044db352c477c74])
* (add) ambari-server/src/test/resources/add_service_api/configurable3.json
* (edit) 
ambari-server/src/main/java/org/apache/ambari/server/topology/ConfigurableHelper.java
* (edit) 
ambari-server/src/test/java/org/apache/ambari/server/topology/ConfigurableTest.java


> Accept legacy JSON configuration in Add Service request
> -------------------------------------------------------
>
>                 Key: AMBARI-24934
>                 URL: https://issues.apache.org/jira/browse/AMBARI-24934
>             Project: Ambari
>          Issue Type: Improvement
>          Components: ambari-server
>            Reporter: Doroszlai, Attila
>            Assignee: Doroszlai, Attila
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 2.8.0
>
>          Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> Cluster creation via blueprint accepts configuration in the following format, 
> where the {{"properties"}} level is omitted:
> {noformat}
>   "configurations": [
>     {
>       "cluster-env": {
>         "custom-property": "whatever"
>       }
>     },
>     {
>       "zoo.cfg": {
>         "syncLimit": "7"
>       }
>     },
> ...
> {noformat}
> "Add Service" request should accept the same format, too, but currently it 
> results in:
> {noformat}
> <h3>Caused by:</h3><pre>java.lang.IllegalArgumentException: Invalid fields in 
> cluster-env configuration: [custom-property]
>       at 
> com.google.common.base.Preconditions.checkArgument(Preconditions.java:145)
>       at 
> org.apache.ambari.server.topology.ConfigurableHelper.lambda$parseConfigs$1(ConfigurableHelper.java:102)
>       at java.util.ArrayList.forEach(ArrayList.java:1249)
>       at 
> org.apache.ambari.server.topology.ConfigurableHelper.parseConfigs(ConfigurableHelper.java:88)
>       at 
> org.apache.ambari.server.controller.AddServiceRequest.&lt;init&gt;(AddServiceRequest.java:88)
>       at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
>       at 
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
>       at 
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
>       at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
>       at 
> com.fasterxml.jackson.databind.introspect.AnnotatedConstructor.call(AnnotatedConstructor.java:124)
>       at 
> com.fasterxml.jackson.databind.deser.std.StdValueInstantiator.createFromObjectWith(StdValueInstantiator.java:283)
>       at 
> com.fasterxml.jackson.databind.deser.ValueInstantiator.createFromObjectWith(ValueInstantiator.java:229)
>       at 
> com.fasterxml.jackson.databind.deser.impl.PropertyBasedCreator.build(PropertyBasedCreator.java:195)
>       at 
> com.fasterxml.jackson.databind.deser.BeanDeserializer._deserializeUsingPropertyBased(BeanDeserializer.java:488)
>       at 
> com.fasterxml.jackson.databind.deser.BeanDeserializerBase.deserializeFromObjectUsingNonDefault(BeanDeserializerBase.java:1280)
>       at 
> com.fasterxml.jackson.databind.deser.BeanDeserializer.deserializeFromObject(BeanDeserializer.java:326)
>       at 
> com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:159)
>       at 
> com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:4001)
>       at 
> com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2992)
>       at 
> org.apache.ambari.server.controller.AddServiceRequest.of(AddServiceRequest.java:115)
>       at 
> org.apache.ambari.server.controller.internal.ServiceResourceProvider.createAddServiceRequest(ServiceResourceProvider.java:1242)
>       at 
> org.apache.ambari.server.controller.internal.ServiceResourceProvider.processAddServiceRequest(ServiceResourceProvider.java:1232)
>       at 
> org.apache.ambari.server.controller.internal.ServiceResourceProvider.createResourcesAuthorized(ServiceResourceProvider.java:257)
> {noformat}



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

Reply via email to