Denys Buzhor created AMBARI-4606:
------------------------------------

             Summary: Selecting Storm during install breaks configs (with 
App.supports.appTimelineServer turned on)
                 Key: AMBARI-4606
                 URL: https://issues.apache.org/jira/browse/AMBARI-4606
             Project: Ambari
          Issue Type: Task
          Components: client
    Affects Versions: 1.5.0
            Reporter: Denys Buzhor
            Assignee: Denys Buzhor
             Fix For: 1.5.0


During install I selected Storm service (had jobs and timeline server flags 
turned on). Coming into the configurations page I hit an exception in 
{{app/utils/config.js}} file's {{#tweakDynamicDefaults()}} function. 
Specifically at line 
{code}
if (typeof(config == "string") && config.defaultValue.indexOf("{firstHost}") >= 
0) 
{code}
where {{config.defaultValue}} was type boolean instead of type 'string'.

There are 2 problems here:
1. AMBARI-4287 introduced a change where global configs with default value  of 
string 'true' or 'false' are converted to booleans. 
{code}
 if (configData.displayType === 'checkbox') {
        configData.value = configData.defaultValue = configData.value === 
'true'; // convert {String} value to {Boolean}
      }
{code}
We should make sure that all usages of {{config.defaultValue}} account for this 
change in behavior. Would be best to stay on 'string'.

2. Where the exception is thrown, the logic of the if() statement is incorrect 
and should be changed to
{code}
if (typeof(config.defaultValue) == "string" && 
config.defaultValue.indexOf("{firstHost}") >= 0) 
{code}



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to