You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ambari.apache.org by "Dmytro Sen (JIRA)" <ji...@apache.org> on 2015/04/01 20:21:53 UTC

[jira] [Updated] (AMBARI-10316) Stack-advisor mechanism when recommending configuration-dependencies has incorrect services.json content

     [ https://issues.apache.org/jira/browse/AMBARI-10316?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Dmytro Sen updated AMBARI-10316:
--------------------------------
    Attachment: AMBARI-10316.patch

> Stack-advisor mechanism when recommending configuration-dependencies has incorrect services.json content
> --------------------------------------------------------------------------------------------------------
>
>                 Key: AMBARI-10316
>                 URL: https://issues.apache.org/jira/browse/AMBARI-10316
>             Project: Ambari
>          Issue Type: Bug
>          Components: ambari-server, stacks
>    Affects Versions: 2.1.0
>            Reporter: Dmytro Sen
>            Assignee: Dmytro Sen
>            Priority: Critical
>             Fix For: 2.1.0
>
>         Attachments: AMBARI-10316.patch
>
>
> When the POST call is made for recommending {{configuration-dependencies}}, we generate the services.json file with following extra content:
> {code}
>   "changed-configurations" : [ {
>     "type" : "yarn-site",
>     "name" : "yarn.scheduler.maximum-allocation-mb"
>   } ],
>   "depended-configurations" : [ {
>     "type" : "mapred-site",
>     "name" : "yarn.app.mapreduce.am.resource.mb"
>   }, {
>     "type" : "yarn-site",
>     "name" : "yarn.scheduler.maximum-allocation-mb"
>   }, {
>     "type" : "mapred-site",
>     "name" : "yarn.app.mapreduce.am.admin-command-opts"
>   }, {
>     "type" : "mapred-site",
>     "name" : "mapreduce.map.memory.mb"
>   }, {
>     "type" : "mapred-site",
>     "name" : "yarn.app.mapreduce.am.command-opts"
>   }, {
>     "type" : "mapred-site",
>     "name" : "mapreduce.reduce.java.opts"
>   }, {
>     "type" : "mapred-site",
>     "name" : "mapreduce.reduce.memory.mb"
>   }, {
>     "type" : "mapred-site",
>     "name" : "mapreduce.task.io.sort.mb"
>   }, {
>     "type" : "mapred-site",
>     "name" : "mapreduce.map.java.opts"
>   } ]
> {code}
> The configuration depended-by should not be added on to the services.json like this. All the configuration dependencies should be got from manipulating the {{org.apache.ambari.server.api.services.stackadvisor.commands.StackAdvisorCommand.GET_SERVICES_INFO_URI}} value. Changing the value to include configuration depends_on and depended_by information. Then the python script should build the dependency-chain inside itself instead of doing it in Java and adding to services.json.
> The reason this is important is that for future functionality, we need services.json and hosts.json to faithfully represent the cluster's services and hosts information. The custom stack-advisor scripts should have logic to interpret it for their own needs. If we do some processing in Java, then stack-providers will not have chance to make their own interpretations.



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