You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by dm...@apache.org on 2016/06/02 15:02:35 UTC

[05/47] ambari git commit: AMBARI-16272. Ambari Upgrade shouldn't automatically add stack configs (dlysnichenko)

http://git-wip-us.apache.org/repos/asf/ambari/blob/6919aa50/ambari-server/src/test/resources/stacks/HDP/2.0.1/services/YARN/configuration/capacity-scheduler.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/resources/stacks/HDP/2.0.1/services/YARN/configuration/capacity-scheduler.xml b/ambari-server/src/test/resources/stacks/HDP/2.0.1/services/YARN/configuration/capacity-scheduler.xml
index cc64305..717df67 100644
--- a/ambari-server/src/test/resources/stacks/HDP/2.0.1/services/YARN/configuration/capacity-scheduler.xml
+++ b/ambari-server/src/test/resources/stacks/HDP/2.0.1/services/YARN/configuration/capacity-scheduler.xml
@@ -1,3 +1,4 @@
+<?xml version="1.0"?>
 <!--
    Licensed to the Apache Software Foundation (ASF) under one or more
    contributor license agreements.  See the NOTICE file distributed with
@@ -14,17 +15,16 @@
    See the License for the specific language governing permissions and
    limitations under the License.
 -->
-
 <configuration>
-
   <property>
     <name>yarn.scheduler.capacity.maximum-applications</name>
     <value>10000</value>
     <description>
       Maximum number of applications that can be pending and running.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>yarn.scheduler.capacity.maximum-am-resource-percent</name>
     <value>0.1</value>
@@ -33,16 +33,18 @@
       application masters i.e. controls number of concurrent running
       applications.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>yarn.scheduler.capacity.root.queues</name>
     <value>default</value>
     <description>
       The queues at the this level (root is the root queue).
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>yarn.scheduler.capacity.root.capacity</name>
     <value>100</value>
@@ -52,54 +54,61 @@
       The child queues capacity should add up to their parent queue's capacity
       or less.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>yarn.scheduler.capacity.root.default.capacity</name>
     <value>100</value>
     <description>Default queue target capacity.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>yarn.scheduler.capacity.root.default.user-limit-factor</name>
     <value>1</value>
     <description>
       Default queue user limit a percentage from 0.0 to 1.0.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>yarn.scheduler.capacity.root.default.maximum-capacity</name>
     <value>100</value>
     <description>
       The maximum capacity of the default queue. 
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>yarn.scheduler.capacity.root.default.state</name>
     <value>RUNNING</value>
     <description>
       The state of the default queue. State can be one of RUNNING or STOPPED.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>yarn.scheduler.capacity.root.default.acl_submit_jobs</name>
     <value>*</value>
     <description>
       The ACL of who can submit jobs to the default queue.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>yarn.scheduler.capacity.root.default.acl_administer_jobs</name>
     <value>*</value>
     <description>
       The ACL of who can administer jobs on the default queue.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>yarn.scheduler.capacity.root.acl_administer_queues</name>
     <value>*</value>
@@ -107,6 +116,7 @@
       The ACL for who can administer this queue i.e. change sub-queue 
       allocations.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/6919aa50/ambari-server/src/test/resources/stacks/HDP/2.0.1/services/YARN/configuration/global.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/resources/stacks/HDP/2.0.1/services/YARN/configuration/global.xml b/ambari-server/src/test/resources/stacks/HDP/2.0.1/services/YARN/configuration/global.xml
index 7ddd6e3..6bf9f5b 100644
--- a/ambari-server/src/test/resources/stacks/HDP/2.0.1/services/YARN/configuration/global.xml
+++ b/ambari-server/src/test/resources/stacks/HDP/2.0.1/services/YARN/configuration/global.xml
@@ -19,31 +19,40 @@
  * limitations under the License.
  */
 -->
-
 <configuration>
   <property>
     <name>rm_host</name>
-    <value></value>
+    <value/>
     <description>ResourceManager.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>nm_hosts</name>
-    <value></value>
+    <value/>
     <description>List of NodeManager Hosts.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>yarn_log_dir_prefix</name>
     <value>/var/log/hadoop-yarn</value>
     <description>YARN Log Dir Prefix</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>yarn_pid_dir_prefix</name>
     <value>/var/run/hadoop-yarn</value>
     <description>YARN PID Dir Prefix</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>yarn_user</name>
     <value>yarn</value>
     <description>YARN User</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/6919aa50/ambari-server/src/test/resources/stacks/HDP/2.0.1/services/YARN/configuration/yarn-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/resources/stacks/HDP/2.0.1/services/YARN/configuration/yarn-site.xml b/ambari-server/src/test/resources/stacks/HDP/2.0.1/services/YARN/configuration/yarn-site.xml
index da6641f..b9c53a3 100644
--- a/ambari-server/src/test/resources/stacks/HDP/2.0.1/services/YARN/configuration/yarn-site.xml
+++ b/ambari-server/src/test/resources/stacks/HDP/2.0.1/services/YARN/configuration/yarn-site.xml
@@ -16,68 +16,73 @@
    See the License for the specific language governing permissions and
    limitations under the License.
 -->
-
 <!-- Put site-specific property overrides in this file. -->
-
 <configuration xmlns:xi="http://www.w3.org/2001/XInclude">
-
-<!-- ResourceManager -->
-
+  <!-- ResourceManager -->
   <property>
     <name>yarn.resourcemanager.resource-tracker.address</name>
     <value>localhost:8025</value>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>yarn.resourcemanager.scheduler.address</name>
     <value>localhost:8030</value>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-  
   <property>
     <name>yarn.resourcemanager.address</name>
     <value>localhost:8050</value>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>yarn.resourcemanager.admin.address</name>
     <value>localhost:8141</value>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
-   <name>yarn.resourcemanager.scheduler.class</name>
-   <value>org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacityScheduler</value>
+    <name>yarn.resourcemanager.scheduler.class</name>
+    <value>org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacityScheduler</value>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>yarn.scheduler.minimum-allocation-mb</name>
     <value>1024</value>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>yarn.scheduler.maximum-allocation-mb</name>
     <value>8192</value>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
-<!-- NodeManager -->
-
+  <!-- NodeManager -->
   <property>
     <name>yarn.nodemanager.address</name>
     <value>0.0.0.0:45454</value>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>yarn.nodemanager.resource.memory-mb</name>
     <value>8192</value>
     <description>Amount of physical memory, in MB, that can be allocated
       for containers.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>yarn.application.classpath</name>
     <value>/etc/hadoop/conf,/usr/lib/hadoop/*,/usr/lib/hadoop/lib/*,/usr/lib/hadoop-hdfs/*,/usr/lib/hadoop-hdfs/lib/*,/usr/lib/hadoop-yarn/*,/usr/lib/hadoop-yarn/lib/*,/usr/lib/hadoop-mapreduce/*,/usr/lib/hadoop-mapreduce/lib/*</value>
-  <description>Classpath for typical applications.</description>
+    <description>Classpath for typical applications.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>yarn.nodemanager.vmem-pmem-ratio</name>
     <value>2.1</value>
@@ -86,87 +91,102 @@
     expressed in terms of physical memory, and virtual memory usage
     is allowed to exceed this allocation by this ratio.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-  
   <property>
     <name>yarn.nodemanager.container-executor.class</name>
     <value>org.apache.hadoop.yarn.server.nodemanager.DefaultContainerExecutor</value>
     <description>ContainerExecutor for launching containers</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
- 
   <property>
     <name>yarn.nodemanager.aux-services</name>
     <value>mapreduce.shuffle</value>
     <description>Auxilliary services of NodeManager</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>yarn.nodemanager.aux-services.class</name>
     <value>org.apache.hadoop.mapred.ShuffleHandler</value>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
     <value>org.apache.hadoop.mapred.ShuffleHandler</value>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>yarn.nodemanager.log-dirs</name>
     <value>/var/log/hadoop/yarn</value>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>yarn.nodemanager.container-monitor.interval-ms</name>
     <value>3000</value>
     <description>The interval, in milliseconds, for which the node manager
     waits  between two cycles of monitoring its containers' memory usage. 
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>yarn.nodemanager.health-checker.script.path</name>
     <value>/etc/hadoop/conf/health_check</value>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>yarn.nodemanager.health-checker.interval-ms</name>
     <value>135000</value>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>yarn.nodemanager.health-checker.script.timeout-ms</name>
     <value>60000</value>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>yarn.nodemanager.log.retain-second</name>
     <value>604800</value>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>yarn.log-aggregation-enable</name>
     <value>true</value>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>yarn.nodemanager.remote-app-log-dir</name>
     <value>/app-logs</value>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>yarn.nodemanager.remote-app-log-dir-suffix</name>
     <value>logs</value>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>yarn.nodemanager.log-aggregation.compression-type</name>
-    <value>gz</value> 
+    <value>gz</value>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>yarn.nodemanager.delete.debug-delay-sec</name>
     <value>36000</value>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
-
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/6919aa50/ambari-server/src/test/resources/stacks/HDP/2.0.5/services/HBASE/configuration/global.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/resources/stacks/HDP/2.0.5/services/HBASE/configuration/global.xml b/ambari-server/src/test/resources/stacks/HDP/2.0.5/services/HBASE/configuration/global.xml
index c0d1fa9..743bcf0 100644
--- a/ambari-server/src/test/resources/stacks/HDP/2.0.5/services/HBASE/configuration/global.xml
+++ b/ambari-server/src/test/resources/stacks/HDP/2.0.5/services/HBASE/configuration/global.xml
@@ -19,37 +19,48 @@
  * limitations under the License.
  */
 -->
-
 <configuration>
   <property>
     <name>hbasemaster_host</name>
-    <value></value>
+    <value/>
     <description>HBase Master Host.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>regionserver_hosts</name>
-    <value></value>
+    <value/>
     <description>Region Server Hosts</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hbase_log_dir</name>
     <value>/var/log/hbase</value>
     <description>Log Directories for HBase.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hbase_pid_dir</name>
     <value>/var/run/hbase</value>
     <description>Log Directories for HBase.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hbase_log_dir</name>
     <value>/var/log/hbase</value>
     <description>Log Directories for HBase.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hbase_regionserver_heapsize</name>
     <value>1024</value>
     <description>RegionServers heap size.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hbase_regionserver_xmn_max</name>
@@ -59,121 +70,168 @@ Sets the upper bound on HBase RegionServers' young generation size.
 This value is used in case the young generation size (-Xmn) calculated based on the max heapsize (hbase_regionserver_heapsize)
 and the -Xmn ratio (hbase_regionserver_xmn_ratio) exceeds this value.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hbase_regionserver_xmn_ratio</name>
     <value>0.2</value>
     <description>Percentage of max heap size which used for young generation heap (-Xmx).</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hbase_master_heapsize</name>
     <value>1024</value>
     <description>HBase Master Heap Size</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hstore_compactionthreshold</name>
     <value>3</value>
     <description>HBase HStore compaction threshold.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hfile_blockcache_size</name>
     <value>0.25</value>
     <description>HFile block cache size.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hstorefile_maxsize</name>
     <value>1073741824</value>
     <description>Maximum HStoreFile Size</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-    <property>
+  <property>
     <name>regionserver_handlers</name>
     <value>30</value>
     <description>HBase RegionServer Handler</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-    <property>
+  <property>
     <name>hregion_majorcompaction</name>
     <value>86400000</value>
     <description>HBase Major Compaction.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-    <property>
+  <property>
     <name>hregion_blockmultiplier</name>
     <value>2</value>
     <description>HBase Region Block Multiplier</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-    <property>
+  <property>
     <name>hregion_memstoreflushsize</name>
-    <value></value>
+    <value/>
     <description>HBase Region MemStore Flush Size.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-    <property>
+  <property>
     <name>client_scannercaching</name>
     <value>100</value>
     <description>Base Client Scanner Caching</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-    <property>
+  <property>
     <name>zookeeper_sessiontimeout</name>
     <value>60000</value>
     <description>ZooKeeper Session Timeout</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-    <property>
+  <property>
     <name>hfile_max_keyvalue_size</name>
     <value>10485760</value>
     <description>HBase Client Maximum key-value Size</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hbase_hdfs_root_dir</name>
     <value>/apps/hbase/data</value>
     <description>HBase Relative Path to HDFS.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-    <property>
+  <property>
     <name>hbase_tmp_dir</name>
     <value>/var/log/hbase</value>
     <description>Hbase temp directory</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-   <property>
+  <property>
     <name>hbase_conf_dir</name>
     <value>/etc/hbase</value>
     <description>Config Directory for HBase.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-   <property>
+  <property>
     <name>hdfs_enable_shortcircuit_read</name>
     <value>true</value>
     <description>HDFS Short Circuit Read</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-   <property>
+  <property>
     <name>hdfs_support_append</name>
     <value>true</value>
     <description>HDFS append support</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-   <property>
+  <property>
     <name>hstore_blockingstorefiles</name>
     <value>7</value>
     <description>HStore blocking storefiles.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-   <property>
+  <property>
     <name>regionserver_memstore_lab</name>
     <value>true</value>
     <description>Region Server memstore.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-   <property>
+  <property>
     <name>regionserver_memstore_lowerlimit</name>
     <value>0.35</value>
     <description>Region Server memstore lower limit.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-   <property>
+  <property>
     <name>regionserver_memstore_upperlimit</name>
     <value>0.4</value>
     <description>Region Server memstore upper limit.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-   <property>
+  <property>
     <name>hbase_conf_dir</name>
     <value>/etc/hbase</value>
     <description>HBase conf dir.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-   <property>
+  <property>
     <name>hbase_user</name>
     <value>hbase</value>
     <description>HBase User Name.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/6919aa50/ambari-server/src/test/resources/stacks/HDP/2.0.5/services/HBASE/configuration/hbase-policy.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/resources/stacks/HDP/2.0.5/services/HBASE/configuration/hbase-policy.xml b/ambari-server/src/test/resources/stacks/HDP/2.0.5/services/HBASE/configuration/hbase-policy.xml
index e45f23c..c938e26 100644
--- a/ambari-server/src/test/resources/stacks/HDP/2.0.5/services/HBASE/configuration/hbase-policy.xml
+++ b/ambari-server/src/test/resources/stacks/HDP/2.0.5/services/HBASE/configuration/hbase-policy.xml
@@ -19,7 +19,6 @@
  * limitations under the License.
  */
 -->
-
 <configuration>
   <property>
     <name>security.client.protocol.acl</name>
@@ -29,8 +28,9 @@
     The ACL is a comma-separated list of user and group names. The user and 
     group list is separated by a blank. For e.g. "alice,bob users,wheel". 
     A special value of "*" means all users are allowed.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>security.admin.protocol.acl</name>
     <value>*</value>
@@ -39,8 +39,9 @@
     The ACL is a comma-separated list of user and group names. The user and 
     group list is separated by a blank. For e.g. "alice,bob users,wheel". 
     A special value of "*" means all users are allowed.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>security.masterregion.protocol.acl</name>
     <value>*</value>
@@ -49,5 +50,7 @@
     The ACL is a comma-separated list of user and group names. The user and 
     group list is separated by a blank. For e.g. "alice,bob users,wheel". 
     A special value of "*" means all users are allowed.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/6919aa50/ambari-server/src/test/resources/stacks/HDP/2.0.5/services/HBASE/configuration/hbase-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/resources/stacks/HDP/2.0.5/services/HBASE/configuration/hbase-site.xml b/ambari-server/src/test/resources/stacks/HDP/2.0.5/services/HBASE/configuration/hbase-site.xml
index 4244bbc..9518892 100644
--- a/ambari-server/src/test/resources/stacks/HDP/2.0.5/services/HBASE/configuration/hbase-site.xml
+++ b/ambari-server/src/test/resources/stacks/HDP/2.0.5/services/HBASE/configuration/hbase-site.xml
@@ -22,7 +22,7 @@
 <configuration>
   <property>
     <name>hbase.rootdir</name>
-    <value></value>
+    <value/>
     <description>The directory shared by region servers and into
     which HBase persists.  The URL should be 'fully-qualified'
     to include the filesystem scheme.  For example, to specify the
@@ -32,6 +32,8 @@
     into /tmp.  Change this configuration else all data will be lost
     on machine restart.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hbase.cluster.distributed</name>
@@ -41,69 +43,86 @@
       false, startup will run all HBase and ZooKeeper daemons together
       in the one JVM.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hbase.tmp.dir</name>
-    <value></value>
+    <value/>
     <description>Temporary directory on the local filesystem.
     Change this setting to point to a location more permanent
     than '/tmp' (The '/tmp' directory is often cleared on
     machine restart).
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hbase.master.info.bindAddress</name>
-    <value></value>
+    <value/>
     <description>The bind address for the HBase Master web UI
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hbase.master.info.port</name>
-    <value></value>
+    <value/>
     <description>The port for the HBase Master web UI.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hbase.regionserver.info.port</name>
-    <value></value>
+    <value/>
     <description>The port for the HBase RegionServer web UI.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hbase.regionserver.global.memstore.upperLimit</name>
-    <value></value>
+    <value/>
     <description>Maximum size of all memstores in a region server before new
       updates are blocked and flushes are forced. Defaults to 40% of heap
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hbase.regionserver.handler.count</name>
-    <value></value>
+    <value/>
     <description>Count of RPC Listener instances spun up on RegionServers.
     Same property is used by the Master for count of master handlers.
     Default is 10.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hbase.hregion.majorcompaction</name>
-    <value></value>
+    <value/>
     <description>The time (in miliseconds) between 'major' compactions of all
     HStoreFiles in a region.  Default: 1 day.
     Set to 0 to disable automated major compactions.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-  
   <property>
     <name>hbase.regionserver.global.memstore.lowerLimit</name>
-    <value></value>
+    <value/>
     <description>When memstores are being forced to flush to make room in
       memory, keep flushing until we hit this mark. Defaults to 35% of heap.
       This value equal to hbase.regionserver.global.memstore.upperLimit causes
       the minimum possible flushing to occur when updates are blocked due to
       memstore limiting.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hbase.hregion.memstore.block.multiplier</name>
-    <value></value>
+    <value/>
     <description>Block updates if memstore has hbase.hregion.memstore.block.multiplier
     time hbase.hregion.flush.size bytes.  Useful preventing
     runaway memstore during spikes in update traffic.  Without an
@@ -111,38 +130,46 @@
     resultant flush files take a long time to compact or split, or
     worse, we OOME
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hbase.hregion.memstore.flush.size</name>
-    <value></value>
+    <value/>
     <description>
     Memstore will be flushed to disk if size of the memstore
     exceeds this number of bytes.  Value is checked by a thread that runs
     every hbase.server.thread.wakefrequency.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hbase.hregion.memstore.mslab.enabled</name>
-    <value></value>
+    <value/>
     <description>
       Enables the MemStore-Local Allocation Buffer,
       a feature which works to prevent heap fragmentation under
       heavy write loads. This can reduce the frequency of stop-the-world
       GC pauses on large heaps.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hbase.hregion.max.filesize</name>
-    <value></value>
+    <value/>
     <description>
     Maximum HStoreFile size. If any one of a column families' HStoreFiles has
     grown to exceed this value, the hosting HRegion is split in two.
     Default: 1G.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hbase.client.scanner.caching</name>
-    <value></value>
+    <value/>
     <description>Number of rows that will be fetched when calling next
     on a scanner if it is not served from (local, client) memory. Higher
     caching values will enable faster scanners but will eat up more memory
@@ -150,6 +177,8 @@
     Do not set this value such that the time between invocations is greater
     than the scanner timeout; i.e. hbase.regionserver.lease.period
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>zookeeper.session.timeout</name>
@@ -161,10 +190,12 @@
       "The client sends a requested timeout, the server responds with the
       timeout that it can give the client. " In milliseconds.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hbase.client.keyvalue.maxsize</name>
-    <value></value>
+    <value/>
     <description>Specifies the combined maximum allowed size of a KeyValue
     instance. This is to set an upper boundary for a single entry saved in a
     storage file. Since they cannot be split it helps avoiding that a region
@@ -172,67 +203,80 @@
     to set this to a fraction of the maximum region size. Setting it to zero
     or less disables the check.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hbase.hstore.compactionThreshold</name>
-    <value></value>
+    <value/>
     <description>
     If more than this number of HStoreFiles in any one HStore
     (one HStoreFile is written per flush of memstore) then a compaction
     is run to rewrite all HStoreFiles files as one.  Larger numbers
     put off compaction but when it runs, it takes longer to complete.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hbase.hstore.blockingStoreFiles</name>
-    <value></value>
+    <value/>
     <description>
     If more than this number of StoreFiles in any one Store
     (one StoreFile is written per flush of MemStore) then updates are
     blocked for this HRegion until a compaction is completed, or
     until hbase.hstore.blockingWaitTime has been exceeded.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hfile.block.cache.size</name>
-    <value></value>
+    <value/>
     <description>
         Percentage of maximum heap (-Xmx setting) to allocate to block cache
         used by HFile/StoreFile. Default of 0.25 means allocate 25%.
         Set to 0 to disable but it's not recommended.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <!-- The following properties configure authentication information for
        HBase processes when using Kerberos security.  There are no default
        values, included here for documentation purposes -->
   <property>
     <name>hbase.master.keytab.file</name>
-    <value></value>
+    <value/>
     <description>Full path to the kerberos keytab file to use for logging in
     the configured HMaster server principal.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hbase.master.kerberos.principal</name>
-    <value></value>
+    <value/>
     <description>Ex. "hbase/_HOST@EXAMPLE.COM".  The kerberos principal name
     that should be used to run the HMaster process.  The principal name should
     be in the form: user/hostname@DOMAIN.  If "_HOST" is used as the hostname
     portion, it will be replaced with the actual hostname of the running
     instance.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hbase.regionserver.keytab.file</name>
-    <value></value>
+    <value/>
     <description>Full path to the kerberos keytab file to use for logging in
     the configured HRegionServer server principal.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hbase.regionserver.kerberos.principal</name>
-    <value></value>
+    <value/>
     <description>Ex. "hbase/_HOST@EXAMPLE.COM".  The kerberos principal name
     that should be used to run the HRegionServer process.  The principal name
     should be in the form: user/hostname@DOMAIN.  If "_HOST" is used as the
@@ -240,8 +284,9 @@
     running instance.  An entry for this principal must exist in the file
     specified in hbase.regionserver.keytab.file
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <!-- Additional configuration specific to HBase security -->
   <property>
     <name>hbase.superuser</name>
@@ -250,39 +295,44 @@
     full privileges, regardless of stored ACLs, across the cluster.
     Only used when HBase security is enabled.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>hbase.security.authentication</name>
     <value>simple</value>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>hbase.rpc.engine</name>
     <value>org.apache.hadoop.hbase.ipc.WritableRpcEngine</value>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>hbase.security.authorization</name>
     <value>false</value>
     <description>Enables HBase authorization. Set the value of this property to false to disable HBase authorization.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>hbase.coprocessor.region.classes</name>
-    <value></value>
+    <value/>
     <description>A comma-separated list of Coprocessors that are loaded by
     default on all tables. For any override coprocessor method, these classes
     will be called in order. After implementing your own Coprocessor, just put
     it in HBase's classpath and add the fully qualified class name here.
     A coprocessor can also be loaded on demand by setting HTableDescriptor.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>hbase.coprocessor.master.classes</name>
-    <value></value>
+    <value/>
     <description>A comma-separated list of
       org.apache.hadoop.hbase.coprocessor.MasterObserver coprocessors that are
       loaded by default on the active HMaster process. For any implemented
@@ -290,23 +340,25 @@
       implementing your own MasterObserver, just put it in HBase's classpath
       and add the fully qualified class name here.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>hbase.zookeeper.property.clientPort</name>
     <value>2181</value>
     <description>Property from ZooKeeper's config zoo.cfg.
     The port at which the clients will connect.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <!--
   The following three properties are used together to create the list of
   host:peer_port:leader_port quorum servers for ZooKeeper.
   -->
   <property>
     <name>hbase.zookeeper.quorum</name>
-    <value></value>
+    <value/>
     <description>Comma separated list of servers in the ZooKeeper Quorum.
     For example, "host1.mydomain.com,host2.mydomain.com,host3.mydomain.com".
     By default this is set to localhost for local and pseudo-distributed modes
@@ -314,29 +366,33 @@
     list of ZooKeeper quorum servers. If HBASE_MANAGES_ZK is set in hbase-env.sh
     this is the list of servers which we will start/stop ZooKeeper on.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <!-- End of properties used to generate ZooKeeper host:port quorum list. -->
-
   <property>
     <name>dfs.support.append</name>
-    <value></value>
+    <value/>
     <description>Does HDFS allow appends to files?
     This is an hdfs config. set in here so the hdfs client will do append support.
     You must ensure that this config. is true serverside too when running hbase
     (You will have to restart your cluster after setting it).
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>hbase.zookeeper.useMulti</name>
     <value>true</value>
     <description>Instructs HBase to make use of ZooKeeper's multi-update functionality.
     This allows certain ZooKeeper operations to complete more quickly and prevents some issues
-    with rare Replication failure scenarios (see the release note of HBASE-2611 for an example).�
+    with rare Replication failure scenarios (see the release note of HBASE-2611 for an example).&#xB7;
     IMPORTANT: only set this to true if all ZooKeeper servers in the cluster are on version 3.4+
     and will not be downgraded.  ZooKeeper versions before 3.4 do not support multi-update and will
     not fail gracefully if multi-update is invoked (see ZOOKEEPER-1495).
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>zookeeper.znode.parent</name>
@@ -346,18 +402,21 @@
       By default, all of HBase's ZooKeeper file path are configured with a
       relative path, so they will all go under this directory unless changed.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>hbase.defaults.for.version.skip</name>
     <value>true</value>
     <description>Disables version verification.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>dfs.domain.socket.path</name>
     <value>/var/lib/hadoop-hdfs/dn_socket</value>
     <description>Path to domain socket.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/6919aa50/ambari-server/src/test/resources/stacks/HDP/2.0.5/services/HDFS/configuration/core-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/resources/stacks/HDP/2.0.5/services/HDFS/configuration/core-site.xml b/ambari-server/src/test/resources/stacks/HDP/2.0.5/services/HDFS/configuration/core-site.xml
index ab46feb..de1fc3e 100644
--- a/ambari-server/src/test/resources/stacks/HDP/2.0.5/services/HDFS/configuration/core-site.xml
+++ b/ambari-server/src/test/resources/stacks/HDP/2.0.5/services/HDFS/configuration/core-site.xml
@@ -1,7 +1,6 @@
 <?xml version="1.0"?>
 <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
-
- <!--
+<!--
     Licensed to the Apache Software Foundation (ASF) under one or more
     contributor license agreements.  See the NOTICE file distributed with
     this work for additional information regarding copyright ownership.
@@ -17,13 +16,9 @@
     See the License for the specific language governing permissions and
     limitations under the License.
  -->
- 
 <!-- Put site-specific property overrides in this file. -->
-
-<configuration supports_final="true" xmlns:xi="http://www.w3.org/2001/XInclude">
-
-<!-- i/o properties -->
-
+<configuration xmlns:xi="http://www.w3.org/2001/XInclude" supports_final="true">
+  <!-- i/o properties -->
   <property>
     <name>io.file.buffer.size</name>
     <value>131072</value>
@@ -31,49 +26,54 @@
   The size of this buffer should probably be a multiple of hardware
   page size (4096 on Intel x86), and it determines how much data is
   buffered during read and write operations.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>io.serializations</name>
     <value>org.apache.hadoop.io.serializer.WritableSerialization</value>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>io.compression.codecs</name>
     <value>org.apache.hadoop.io.compress.GzipCodec,org.apache.hadoop.io.compress.DefaultCodec</value>
     <description>A list of the compression codec classes that can be used
                  for compression/decompression.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
-<!-- file system properties -->
-
+  <!-- file system properties -->
   <property>
     <name>fs.defaultFS</name>
     <!-- cluster variant -->
-    <value></value>
+    <value/>
     <description>The name of the default file system.  Either the
   literal string "local" or a host:port for HDFS.</description>
     <final>true</final>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>fs.trash.interval</name>
     <value>360</value>
     <description>Number of minutes between trash checkpoints.
   If zero, the trash feature is disabled.
   </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>dfs.namenode.checkpoint.dir</name>
-    <value></value>
+    <value/>
     <description>Determines where on the local filesystem the DFS secondary
         name node should store the temporary images to merge.
         If this is a comma-delimited list of directories then the image is
         replicated in all of the directories for redundancy.
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>dfs.namenode.checkpoint.edits.dir</name>
     <value>${dfs.namenode.checkpoint.dir}</value>
@@ -83,15 +83,17 @@
         replicated in all of the directoires for redundancy.
         Default value is same as dfs.namenode.checkpoint.dir
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>dfs.namenode.checkpoint.period</name>
     <value>21600</value>
     <description>The number of seconds between two periodic checkpoints.
   </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <!-- ipc properties: copied from kryptonite configuration -->
   <property>
     <name>ipc.client.idlethreshold</name>
@@ -99,22 +101,25 @@
     <description>Defines the threshold number of connections after which
                connections will be inspected for idleness.
   </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>ipc.client.connection.maxidletime</name>
     <value>30000</value>
     <description>The maximum time after which a client will bring down the
                connection to the server.
   </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>ipc.client.connect.max.retries</name>
     <value>50</value>
     <description>Defines the maximum number of retries for IPC connections.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <!-- Web Interface Configuration -->
   <property>
     <name>mapreduce.jobtracker.webinterface.trusted</name>
@@ -124,24 +129,28 @@
                 not be exposed to public. Enable this option if the interfaces
                 are only reachable by those who have the right authorization.
   </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
- <property>
-   <name>hadoop.security.authentication</name>
-   <value>simple</value>
-   <description>
+  <property>
+    <name>hadoop.security.authentication</name>
+    <value>simple</value>
+    <description>
    Set the authentication for the cluster. Valid values are: simple or
    kerberos.
    </description>
- </property>
-<property>
-  <name>hadoop.security.authorization</name>
-  <value>false</value>
-  <description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
+  </property>
+  <property>
+    <name>hadoop.security.authorization</name>
+    <value>false</value>
+    <description>
      Enable authorization for different protocols.
   </description>
-</property>
-
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
+  </property>
   <property>
     <name>hadoop.security.auth_to_local</name>
     <value>
@@ -152,7 +161,7 @@
         RULE:[2:$1@$0](rs@.*)s/.*/hbase/
         DEFAULT
     </value>
-<description>The mapping from kerberos principal names to local OS mapreduce.job.user.names.
+    <description>The mapping from kerberos principal names to local OS mapreduce.job.user.names.
   So the default rule is just "DEFAULT" which takes all principals in your default domain to their first component.
   "omalley@APACHE.ORG" and "omalley/admin@APACHE.ORG" to "omalley", if your default domain is APACHE.ORG.
 The translations rules have 3 sections:
@@ -190,6 +199,7 @@ If you want to treat all principals from APACHE.ORG with /admin as "admin", your
 RULE[2:$1%$2@$0](.%admin@APACHE.ORG)s/./admin/
 DEFAULT
     </description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/6919aa50/ambari-server/src/test/resources/stacks/HDP/2.0.5/services/HDFS/configuration/global.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/resources/stacks/HDP/2.0.5/services/HDFS/configuration/global.xml b/ambari-server/src/test/resources/stacks/HDP/2.0.5/services/HDFS/configuration/global.xml
index f636751..a513c68 100644
--- a/ambari-server/src/test/resources/stacks/HDP/2.0.5/services/HDFS/configuration/global.xml
+++ b/ambari-server/src/test/resources/stacks/HDP/2.0.5/services/HDFS/configuration/global.xml
@@ -19,179 +19,243 @@
  * limitations under the License.
  */
 -->
-
 <configuration>
   <property>
     <name>namenode_host</name>
-    <value></value>
+    <value/>
     <description>NameNode Host.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>dfs_namenode_name_dir</name>
     <value>/hadoop/hdfs/namenode</value>
     <description>NameNode Directories.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>snamenode_host</name>
-    <value></value>
+    <value/>
     <description>Secondary NameNode.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>dfs_namenode_checkpoint_dir</name>
     <value>/hadoop/hdfs/namesecondary</value>
     <description>Secondary NameNode checkpoint dir.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>datanode_hosts</name>
-    <value></value>
+    <value/>
     <description>List of Datanode Hosts.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>dfs_datanode_data_dir</name>
     <value>/hadoop/hdfs/data</value>
     <description>Data directories for Data Nodes.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hdfs_log_dir_prefix</name>
     <value>/var/log/hadoop</value>
     <description>Hadoop Log Dir Prefix</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hadoop_pid_dir_prefix</name>
     <value>/var/run/hadoop</value>
     <description>Hadoop PID Dir Prefix</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>dfs_webhdfs_enabled</name>
     <value>true</value>
     <description>WebHDFS enabled</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>hadoop_heapsize</name>
     <value>1024</value>
     <description>Hadoop maximum Java heap size</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>namenode_heapsize</name>
     <value>1024</value>
     <description>NameNode Java heap size</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>namenode_opt_newsize</name>
     <value>200</value>
     <description>Default size of Java new generation for NameNode (Java option -XX:NewSize) Note: The value of NameNode new generation size (default size of Java new generation for NameNode (Java option -XX:NewSize)) should be 1/8 of maximum heap size (-Xmx). Ensure that the value of the namenode_opt_newsize property is 1/8 the value of maximum heap size (-Xmx).</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>namenode_opt_maxnewsize</name>
     <value>640</value>
     <description>NameNode maximum new generation size</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>namenode_opt_permsize</name>
     <value>128</value>
     <description>NameNode permanent generation size</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>namenode_opt_maxpermsize</name>
     <value>256</value>
     <description>NameNode maximum permanent generation size</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>datanode_du_reserved</name>
     <value>1</value>
     <description>Reserved space for HDFS</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>dtnode_heapsize</name>
     <value>1024</value>
     <description>DataNode maximum Java heap size</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>dfs_datanode_failed_volume_tolerated</name>
     <value>0</value>
     <description>DataNode volumes failure toleration</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>dfs_namenode_checkpoint_period</name>
     <value>21600</value>
     <description>HDFS Maximum Checkpoint Delay</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>fs_checkpoint_size</name>
     <value>0.5</value>
     <description>FS Checkpoint Size.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>proxyuser_group</name>
     <value>users</value>
     <description>Proxy user group.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>dfs_exclude</name>
-    <value></value>
+    <value/>
     <description>HDFS Exclude hosts.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>dfs_replication</name>
     <value>3</value>
     <description>Default Block Replication.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>dfs_block_local_path_access_user</name>
     <value>hbase</value>
     <description>Default Block Replication.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>dfs_datanode_address</name>
     <value>50010</value>
     <description>Port for datanode address.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>dfs_datanode_http_address</name>
     <value>50075</value>
     <description>Port for datanode address.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>dfs_datanode_data_dir_perm</name>
     <value>750</value>
     <description>Datanode dir perms.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>security_enabled</name>
     <value>false</value>
     <description>Hadoop Security</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>kerberos_domain</name>
     <value>EXAMPLE.COM</value>
     <description>Kerberos realm.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>kadmin_pw</name>
-    <value></value>
+    <value/>
     <description>Kerberos realm admin password</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
   <property>
     <name>keytab_path</name>
     <value>/etc/security/keytabs</value>
     <description>Kerberos keytab path.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-  
   <property>
     <name>keytab_path</name>
     <value>/etc/security/keytabs</value>
     <description>KeyTab Directory.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-    <property>
+  <property>
     <name>namenode_formatted_mark_dir</name>
     <value>/var/run/hadoop/hdfs/namenode/formatted/</value>
     <description>Formatteed Mark Directory.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-    <property>
+  <property>
     <name>hdfs_user</name>
     <value>hdfs</value>
     <description>User and Groups.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-  
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/6919aa50/ambari-server/src/test/resources/stacks/HDP/2.0.5/services/HDFS/configuration/hadoop-policy.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/resources/stacks/HDP/2.0.5/services/HDFS/configuration/hadoop-policy.xml b/ambari-server/src/test/resources/stacks/HDP/2.0.5/services/HDFS/configuration/hadoop-policy.xml
index 51b01bb..93cc9ab 100644
--- a/ambari-server/src/test/resources/stacks/HDP/2.0.5/services/HDFS/configuration/hadoop-policy.xml
+++ b/ambari-server/src/test/resources/stacks/HDP/2.0.5/services/HDFS/configuration/hadoop-policy.xml
@@ -1,6 +1,5 @@
 <?xml version="1.0"?>
 <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
-
 <!--
    Licensed to the Apache Software Foundation (ASF) under one or more
    contributor license agreements.  See the NOTICE file distributed with
@@ -17,9 +16,7 @@
    See the License for the specific language governing permissions and
    limitations under the License.
 -->
-
 <!-- Put site-specific property overrides in this file. -->
-
 <configuration>
   <property>
     <name>security.client.protocol.acl</name>
@@ -29,8 +26,9 @@
     The ACL is a comma-separated list of user and group names. The user and
     group list is separated by a blank. For e.g. "alice,bob users,wheel".
     A special value of "*" means all users are allowed.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>security.client.datanode.protocol.acl</name>
     <value>*</value>
@@ -39,8 +37,9 @@
     The ACL is a comma-separated list of user and group names. The user and
     group list is separated by a blank. For e.g. "alice,bob users,wheel".
     A special value of "*" means all users are allowed.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>security.datanode.protocol.acl</name>
     <value>*</value>
@@ -49,8 +48,9 @@
     The ACL is a comma-separated list of user and group names. The user and
     group list is separated by a blank. For e.g. "alice,bob users,wheel".
     A special value of "*" means all users are allowed.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>security.inter.datanode.protocol.acl</name>
     <value>*</value>
@@ -59,8 +59,9 @@
     The ACL is a comma-separated list of user and group names. The user and
     group list is separated by a blank. For e.g. "alice,bob users,wheel".
     A special value of "*" means all users are allowed.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>security.namenode.protocol.acl</name>
     <value>*</value>
@@ -69,8 +70,9 @@
     The ACL is a comma-separated list of user and group names. The user and
     group list is separated by a blank. For e.g. "alice,bob users,wheel".
     A special value of "*" means all users are allowed.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>security.inter.tracker.protocol.acl</name>
     <value>*</value>
@@ -79,8 +81,9 @@
     The ACL is a comma-separated list of user and group names. The user and
     group list is separated by a blank. For e.g. "alice,bob users,wheel".
     A special value of "*" means all users are allowed.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>security.job.client.protocol.acl</name>
     <value>*</value>
@@ -89,8 +92,9 @@
     The ACL is a comma-separated list of user and group names. The user and
     group list is separated by a blank. For e.g. "alice,bob users,wheel".
     A special value of "*" means all users are allowed.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>security.job.task.protocol.acl</name>
     <value>*</value>
@@ -99,17 +103,19 @@
     The ACL is a comma-separated list of user and group names. The user and
     group list is separated by a blank. For e.g. "alice,bob users,wheel".
     A special value of "*" means all users are allowed.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
- <property>
+  <property>
     <name>security.admin.operations.protocol.acl</name>
     <value>hadoop</value>
     <description>ACL for AdminOperationsProtocol. Used for admin commands.
     The ACL is a comma-separated list of user and group names. The user and
     group list is separated by a blank. For e.g. "alice,bob users,wheel".
     A special value of "*" means all users are allowed.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
   <property>
     <name>security.refresh.usertogroups.mappings.protocol.acl</name>
     <value>hadoop</value>
@@ -118,9 +124,10 @@
     group names. The user and group list is separated by a blank. For
     e.g. "alice,bob users,wheel".  A special value of "*" means all
     users are allowed.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
-<property>
+  <property>
     <name>security.refresh.policy.protocol.acl</name>
     <value>hadoop</value>
     <description>ACL for RefreshAuthorizationPolicyProtocol, used by the
@@ -128,7 +135,7 @@
     The ACL is a comma-separated list of user and group names. The user and
     group list is separated by a blank. For e.g. "alice,bob users,wheel".
     A special value of "*" means all users are allowed.</description>
+    <on-ambari-upgrade add="false" change="true" delete="true"/>
+    <on-stack-upgrade add="true" change="true" delete="false"/>
   </property>
-
-
 </configuration>