Srimanth Gunturi created AMBARI-6329:
----------------------------------------
Summary: Load 'final' attribute of service config-type files into
StackServiceResponse
Key: AMBARI-6329
URL: https://issues.apache.org/jira/browse/AMBARI-6329
Project: Ambari
Issue Type: Task
Components: client
Affects Versions: 1.7.0
Reporter: Srimanth Gunturi
Assignee: Srimanth Gunturi
Fix For: 1.7.0
Hadoop stacks in Ambari have services defined in
{{/ambari/ambari-server/src/main/resources/stacks/<stack-name>/<stack-version>/services/<service-name>}}.
Each service defines its configurations in {{configurations/<config-type.xml>}}
files. Each of these files must indicate whether they support 'final' flag in
their bodies by defining {{supports_final="true|false"}} attribute in the root
{{configuration}} element.
Generally as a rule, any config-type file with below names should have
{{supports_final="false"}}
* global.xml
* *-conf.xml
* *-log4j.xml
* *-properties.xml
{{supports_final="true"}} should be set for files with following names
* *-site.xml
* *-policy.xml
Once config-type files have supports 'final' flag as shown below, it should be
loaded on startup.
{code}
<configuration supports_final="true" xmlns:xi="http://www.w3.org/2001/XInclude">
<property>
<name>io.file.buffer.size</name>
<value>131072</value>
<description>The size of buffer for use ....</description>
</property>
...
</configuration>
{code}
When Ambari loads the stack model into _AmbariMetaInfo_, this information
should be loaded into the
_org.apache.ambari.server.state.ServiceInfo#configTypes_ property. The
property's type should change from _List<String>_ to _Map<String, Map<String,
Map<String, String>>>_ .
{code}
"config_types": {
"core-site": {
"supports": {
"final": "true"
}
},
"global": {
"supports": {
"final": "false"
}
},
}
{code}
Testcases should be provided to verify the model is getting loaded properly
(missing attribute, incorrect value, etc.). If _supports_final_ attribute is
not provided, the value of false should be assumed.
--
This message was sent by Atlassian JIRA
(v6.2#6252)