AMBARI-16272. Ambari Upgrade shouldn't automatically add stack configs (dlysnichenko)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/ed7c64ad Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/ed7c64ad Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/ed7c64ad Branch: refs/heads/trunk Commit: ed7c64ad2d8bc9c3e5b20e61426472f50e011773 Parents: e8fa1c2 Author: Lisnichenko Dmitro <[email protected]> Authored: Thu Jun 2 17:28:03 2016 +0300 Committer: Lisnichenko Dmitro <[email protected]> Committed: Thu Jun 2 18:02:03 2016 +0300 ---------------------------------------------------------------------- .../services/HDFS/configuration/hdfs-site.xml | 2 +- .../services/HDFS/configuration/hdfs-site.xml | 2 +- .../server/api/services/AmbariMetaInfo.java | 2 +- .../internal/UpgradeResourceProvider.java | 118 ++-- .../ambari/server/stack/StackManager.java | 48 +- .../server/stack/StackManagerFactory.java | 2 +- .../ambari/server/state/ConfigHelper.java | 14 +- .../ambari/server/state/PropertyInfo.java | 27 +- .../server/state/PropertyUpgradeBehavior.java | 73 +++ .../server/upgrade/AbstractUpgradeCatalog.java | 43 +- .../1.6.1.2.2.0/configuration/accumulo-env.xml | 42 +- .../configuration/accumulo-log4j.xml | 23 +- .../1.6.1.2.2.0/configuration/accumulo-site.xml | 54 +- .../1.6.1.2.2.0/configuration/client.xml | 1 - .../0.1.0/configuration/ams-env.xml | 16 +- .../0.1.0/configuration/ams-grafana-env.xml | 16 +- .../0.1.0/configuration/ams-grafana-ini.xml | 13 +- .../0.1.0/configuration/ams-hbase-env.xml | 27 +- .../0.1.0/configuration/ams-hbase-log4j.xml | 5 +- .../0.1.0/configuration/ams-hbase-policy.xml | 9 +- .../configuration/ams-hbase-security-site.xml | 68 ++- .../0.1.0/configuration/ams-hbase-site.xml | 115 +++- .../0.1.0/configuration/ams-log4j.xml | 5 +- .../0.1.0/configuration/ams-site.xml | 121 +++- .../0.1.0/configuration/ams-ssl-client.xml | 39 +- .../0.1.0/configuration/ams-ssl-server.xml | 103 ++-- .../0.1.0/configuration/storm-site.xml | 3 +- .../configuration/application-properties.xml | 137 +++-- .../ATLAS/0.1.0.2.3/configuration/atlas-env.xml | 20 +- .../0.1.0.2.3/configuration/atlas-log4j.xml | 14 +- .../0.5.0.2.1/configuration/falcon-env.xml | 24 +- .../configuration/falcon-runtime.properties.xml | 21 +- .../configuration/falcon-startup.properties.xml | 115 +++- .../0.5.0.2.1/configuration/oozie-site.xml | 38 +- .../1.4.0.2.0/configuration/flume-conf.xml | 3 +- .../FLUME/1.4.0.2.0/configuration/flume-env.xml | 15 +- .../GANGLIA/3.5.0/configuration/ganglia-env.xml | 26 +- .../HAWQ/2.0.0/configuration/hawq-check-env.xml | 12 +- .../HAWQ/2.0.0/configuration/hawq-env.xml | 9 +- .../2.0.0/configuration/hawq-limits-env.xml | 13 +- .../HAWQ/2.0.0/configuration/hawq-site.xml | 66 ++- .../2.0.0/configuration/hawq-sysctl-env.xml | 73 ++- .../HAWQ/2.0.0/configuration/hdfs-client.xml | 118 ++-- .../HAWQ/2.0.0/configuration/yarn-client.xml | 36 +- .../0.96.0.2.0/configuration/hbase-env.xml | 33 +- .../0.96.0.2.0/configuration/hbase-log4j.xml | 5 +- .../0.96.0.2.0/configuration/hbase-policy.xml | 9 +- .../0.96.0.2.0/configuration/hbase-site.xml | 94 ++- .../HDFS/2.1.0.2.0/configuration/core-site.xml | 78 +-- .../HDFS/2.1.0.2.0/configuration/hadoop-env.xml | 46 +- .../2.1.0.2.0/configuration/hadoop-policy.xml | 41 +- .../HDFS/2.1.0.2.0/configuration/hdfs-log4j.xml | 5 +- .../HDFS/2.1.0.2.0/configuration/hdfs-site.xml | 152 +++-- .../HDFS/2.1.0.2.0/configuration/ssl-client.xml | 101 ++-- .../HDFS/2.1.0.2.0/configuration/ssl-server.xml | 121 ++-- .../HIVE/0.12.0.2.0/configuration/hcat-env.xml | 4 +- .../HIVE/0.12.0.2.0/configuration/hive-env.xml | 41 +- .../configuration/hive-exec-log4j.xml | 5 +- .../0.12.0.2.0/configuration/hive-log4j.xml | 5 +- .../HIVE/0.12.0.2.0/configuration/hive-site.xml | 151 +++-- .../0.12.0.2.0/configuration/webhcat-env.xml | 4 +- .../0.12.0.2.0/configuration/webhcat-log4j.xml | 5 +- .../0.12.0.2.0/configuration/webhcat-site.xml | 63 +- .../KAFKA/0.8.1/configuration/kafka-broker.xml | 113 +++- .../KAFKA/0.8.1/configuration/kafka-env.xml | 26 +- .../KAFKA/0.8.1/configuration/kafka-log4j.xml | 13 +- .../KAFKA/0.9.0/configuration/kafka-broker.xml | 49 +- .../KAFKA/0.9.0/configuration/kafka-env.xml | 3 +- .../0.9.0/configuration/ranger-kafka-audit.xml | 55 +- .../ranger-kafka-plugin-properties.xml | 28 +- .../ranger-kafka-policymgr-ssl.xml | 23 +- .../configuration/ranger-kafka-security.xml | 19 +- .../1.10.3-10/configuration/kerberos-env.xml | 96 +-- .../1.10.3-10/configuration/krb5-conf.xml | 15 +- .../0.5.0.2.2/configuration/admin-topology.xml | 16 +- .../0.5.0.2.2/configuration/gateway-log4j.xml | 4 +- .../0.5.0.2.2/configuration/gateway-site.xml | 98 ++-- .../KNOX/0.5.0.2.2/configuration/knox-env.xml | 23 +- .../KNOX/0.5.0.2.2/configuration/ldap-log4j.xml | 4 +- .../ranger-knox-plugin-properties.xml | 160 ++--- .../KNOX/0.5.0.2.2/configuration/topology.xml | 28 +- .../KNOX/0.5.0.2.2/configuration/users-ldif.xml | 26 +- .../0.5.0/configuration/logfeeder-env.xml | 42 +- .../0.5.0/configuration/logfeeder-log4j.xml | 8 +- .../configuration/logfeeder-properties.xml | 16 +- .../configuration/logsearch-admin-json.xml | 14 +- .../logsearch-audit_logs-solrconfig.xml | 13 +- .../0.5.0/configuration/logsearch-env.xml | 52 +- .../0.5.0/configuration/logsearch-log4j.xml | 7 +- .../configuration/logsearch-properties.xml | 28 + .../logsearch-service_logs-solrconfig.xml | 12 +- .../logsearch-solr-client-log4j.xml | 9 +- .../0.5.0/configuration/logsearch-solr-env.xml | 60 +- .../configuration/logsearch-solr-log4j.xml | 6 +- .../0.5.0/configuration/logsearch-solr-xml.xml | 8 +- .../1.0.0.2.3/configuration/mahout-env.xml | 25 +- .../1.0.0.2.3/configuration/mahout-log4j.xml | 25 +- .../OOZIE/4.0.0.2.0/configuration/oozie-env.xml | 35 +- .../4.0.0.2.0/configuration/oozie-log4j.xml | 5 +- .../4.0.0.2.0/configuration/oozie-site.xml | 87 ++- .../OOZIE/4.2.0.2.3/configuration/oozie-env.xml | 5 +- .../4.2.0.2.3/configuration/oozie-log4j.xml | 5 +- .../4.2.0.2.3/configuration/oozie-site.xml | 48 +- .../PIG/0.12.0.2.0/configuration/pig-env.xml | 4 +- .../PIG/0.12.0.2.0/configuration/pig-log4j.xml | 5 +- .../0.12.0.2.0/configuration/pig-properties.xml | 5 +- .../PXF/3.0.0/configuration/pxf-profiles.xml | 8 +- .../configuration/pxf-public-classpath.xml | 5 +- .../PXF/3.0.0/configuration/pxf-site.xml | 14 +- .../0.4.0/configuration/admin-properties.xml | 110 ++-- .../RANGER/0.4.0/configuration/ranger-env.xml | 73 ++- .../RANGER/0.4.0/configuration/ranger-site.xml | 22 +- .../0.4.0/configuration/usersync-properties.xml | 58 +- .../0.5.0/configuration/admin-properties.xml | 48 +- .../0.5.0/configuration/ranger-admin-site.xml | 193 ++++--- .../RANGER/0.5.0/configuration/ranger-env.xml | 36 +- .../RANGER/0.5.0/configuration/ranger-site.xml | 24 +- .../0.5.0/configuration/ranger-ugsync-site.xml | 170 ++++-- .../0.5.0/configuration/usersync-properties.xml | 36 +- .../RANGER/0.6.0/configuration/admin-log4j.xml | 26 +- .../0.6.0/configuration/admin-properties.xml | 12 +- .../0.6.0/configuration/ranger-admin-site.xml | 98 ++-- .../RANGER/0.6.0/configuration/ranger-env.xml | 17 +- .../0.6.0/configuration/ranger-tagsync-site.xml | 84 +-- .../0.6.0/configuration/ranger-ugsync-site.xml | 45 +- .../tagsync-application-properties.xml | 20 +- .../0.6.0/configuration/tagsync-log4j.xml | 26 +- .../0.6.0/configuration/usersync-log4j.xml | 26 +- .../0.5.0.2.3/configuration/dbks-site.xml | 41 +- .../0.5.0.2.3/configuration/kms-env.xml | 22 +- .../0.5.0.2.3/configuration/kms-log4j.xml | 8 +- .../0.5.0.2.3/configuration/kms-properties.xml | 52 +- .../0.5.0.2.3/configuration/kms-site.xml | 56 +- .../configuration/ranger-kms-audit.xml | 53 +- .../configuration/ranger-kms-policymgr-ssl.xml | 21 +- .../configuration/ranger-kms-security.xml | 19 +- .../0.5.0.2.3/configuration/ranger-kms-site.xml | 28 +- .../0.60.0.2.2/configuration/slider-client.xml | 4 - .../0.60.0.2.2/configuration/slider-env.xml | 6 +- .../0.60.0.2.2/configuration/slider-log4j.xml | 5 +- .../1.2.1/configuration/spark-defaults.xml | 63 +- .../SPARK/1.2.1/configuration/spark-env.xml | 26 +- .../configuration/spark-log4j-properties.xml | 3 +- .../configuration/spark-metrics-properties.xml | 2 + .../configuration/spark-hive-site-override.xml | 17 +- .../configuration/spark-thrift-sparkconf.xml | 32 +- .../1.6.0/configuration/spark-defaults.xml | 61 +- .../spark-thrift-fairscheduler.xml | 22 +- .../configuration/spark-thrift-sparkconf.xml | 74 ++- .../2.0.0/configuration/spark2-defaults.xml | 32 +- .../SPARK2/2.0.0/configuration/spark2-env.xml | 20 +- .../configuration/spark2-hive-site-override.xml | 17 +- .../configuration/spark2-log4j-properties.xml | 3 +- .../configuration/spark2-metrics-properties.xml | 2 + .../spark2-thrift-fairscheduler.xml | 22 +- .../configuration/spark2-thrift-sparkconf.xml | 47 +- .../SQOOP/1.4.4.2.0/configuration/sqoop-env.xml | 11 +- .../1.4.4.2.0/configuration/sqoop-site.xml | 4 + .../0.10.0/configuration/ranger-storm-audit.xml | 55 +- .../ranger-storm-plugin-properties.xml | 106 ++-- .../ranger-storm-policymgr-ssl.xml | 23 +- .../configuration/ranger-storm-security.xml | 21 +- .../configuration/storm-cluster-log4j.xml | 11 +- .../STORM/0.10.0/configuration/storm-env.xml | 11 +- .../STORM/0.10.0/configuration/storm-site.xml | 33 +- .../0.10.0/configuration/storm-worker-log4j.xml | 11 +- .../STORM/0.9.1/configuration/storm-env.xml | 74 ++- .../STORM/0.9.1/configuration/storm-site.xml | 193 ++++++- .../ranger-storm-plugin-properties.xml | 157 +++-- .../STORM/0.9.3/configuration/storm-env.xml | 3 +- .../STORM/0.9.3/configuration/storm-site.xml | 43 +- .../1.0.1/configuration/ranger-storm-audit.xml | 24 +- .../STORM/1.0.1/configuration/storm-site.xml | 19 +- .../TEZ/0.4.0.2.1/configuration/tez-env.xml | 8 +- .../TEZ/0.4.0.2.1/configuration/tez-site.xml | 84 +-- .../configuration-mapred/mapred-env.xml | 18 +- .../configuration-mapred/mapred-site.xml | 134 +++-- .../configuration/capacity-scheduler.xml | 43 +- .../YARN/2.1.0.2.0/configuration/yarn-env.xml | 29 +- .../YARN/2.1.0.2.0/configuration/yarn-log4j.xml | 5 +- .../YARN/2.1.0.2.0/configuration/yarn-site.xml | 127 ++-- .../0.6.0.2.5/configuration/zeppelin-config.xml | 309 +++++----- .../0.6.0.2.5/configuration/zeppelin-env.xml | 41 +- .../ZOOKEEPER/3.4.5/configuration/zoo.cfg.xml | 17 +- .../3.4.5/configuration/zookeeper-env.xml | 18 +- .../3.4.5/configuration/zookeeper-log4j.xml | 5 +- .../src/main/resources/configuration-schema.xsd | 135 +++++ .../configurations-set-default-update-policy.sh | 38 ++ .../BIGTOP/0.8/configuration/cluster-env.xml | 103 ++-- .../services/FLUME/configuration/flume-conf.xml | 3 +- .../services/FLUME/configuration/flume-env.xml | 10 +- .../FLUME/configuration/flume-log4j.xml | 3 +- .../GANGLIA/configuration/ganglia-env.xml | 26 +- .../services/HBASE/configuration/hbase-env.xml | 25 +- .../HBASE/configuration/hbase-log4j.xml | 5 +- .../HBASE/configuration/hbase-policy.xml | 9 +- .../services/HBASE/configuration/hbase-site.xml | 87 ++- .../services/HDFS/configuration/core-site.xml | 74 +-- .../services/HDFS/configuration/hadoop-env.xml | 35 +- .../HDFS/configuration/hadoop-policy.xml | 41 +- .../services/HDFS/configuration/hdfs-log4j.xml | 5 +- .../services/HDFS/configuration/hdfs-site.xml | 149 +++-- .../services/HIVE/configuration/hcat-env.xml | 4 +- .../services/HIVE/configuration/hive-env.xml | 31 +- .../HIVE/configuration/hive-exec-log4j.xml | 5 +- .../services/HIVE/configuration/hive-log4j.xml | 5 +- .../services/HIVE/configuration/hive-site.xml | 237 +++++--- .../services/HIVE/configuration/webhcat-env.xml | 4 +- .../HIVE/configuration/webhcat-site.xml | 73 ++- .../services/OOZIE/configuration/oozie-env.xml | 19 +- .../OOZIE/configuration/oozie-log4j.xml | 5 +- .../services/OOZIE/configuration/oozie-site.xml | 84 ++- .../0.8/services/PIG/configuration/pig-env.xml | 4 +- .../services/PIG/configuration/pig-log4j.xml | 5 +- .../PIG/configuration/pig-properties.xml | 5 +- .../YARN/configuration-mapred/mapred-env.xml | 12 +- .../YARN/configuration-mapred/mapred-site.xml | 129 +++-- .../YARN/configuration/capacity-scheduler.xml | 43 +- .../services/YARN/configuration/yarn-env.xml | 21 +- .../services/YARN/configuration/yarn-log4j.xml | 5 +- .../services/YARN/configuration/yarn-site.xml | 147 +++-- .../ZOOKEEPER/configuration/zookeeper-env.xml | 20 +- .../ZOOKEEPER/configuration/zookeeper-log4j.xml | 5 +- .../GLUSTERFS/configuration/core-site.xml | 43 +- .../GLUSTERFS/configuration/hadoop-env.xml | 38 +- .../services/HBASE/configuration/hbase-site.xml | 96 ++- .../services/HDFS/configuration/core-site.xml | 70 ++- .../services/HDFS/configuration/global.xml | 86 ++- .../HDFS/configuration/hadoop-policy.xml | 41 +- .../services/HDFS/configuration/hdfs-site.xml | 354 +++++++----- .../services/HIVE/configuration/hive-site.xml | 218 ++++--- .../services/OOZIE/configuration/oozie-site.xml | 81 ++- .../PIG/configuration/pig-properties.xml | 7 +- .../YARN/configuration-mapred/mapred-site.xml | 87 +-- .../YARN/configuration/capacity-scheduler.xml | 43 +- .../services/YARN/configuration/yarn-env.xml | 19 +- .../services/YARN/configuration/yarn-site.xml | 147 +++-- .../HDP/2.0.6/configuration/cluster-env.xml | 386 +++++++------ .../services/OOZIE/configuration/oozie-env.xml | 11 +- .../FALCON/configuration/falcon-env.xml | 17 + .../configuration/falcon-runtime.properties.xml | 21 +- .../configuration/falcon-startup.properties.xml | 121 +++- .../FALCON/configuration/oozie-site.xml | 34 +- .../GLUSTERFS/configuration/core-site.xml | 33 +- .../GLUSTERFS/configuration/hadoop-env.xml | 46 +- .../services/HBASE/configuration/hbase-site.xml | 96 ++- .../services/HIVE/configuration/hive-site.xml | 218 ++++--- .../services/OOZIE/configuration/oozie-site.xml | 81 ++- .../PIG/configuration/pig-properties.xml | 7 +- .../services/STORM/configuration/storm-env.xml | 13 +- .../services/STORM/configuration/storm-site.xml | 189 +++++- .../services/TEZ/configuration/tez-env.xml | 5 +- .../services/TEZ/configuration/tez-site.xml | 84 +-- .../YARN/configuration-mapred/mapred-site.xml | 87 +-- .../YARN/configuration-mapred/ssl-client.xml | 101 ++-- .../YARN/configuration-mapred/ssl-server.xml | 121 ++-- .../YARN/configuration/capacity-scheduler.xml | 42 +- .../services/YARN/configuration/yarn-env.xml | 19 +- .../services/YARN/configuration/yarn-site.xml | 147 +++-- .../FALCON/configuration/oozie-site.xml | 38 +- .../services/HDFS/configuration/hdfs-site.xml | 10 +- .../services/HIVE/configuration/hive-site.xml | 241 +++++--- .../services/OOZIE/configuration/oozie-site.xml | 78 ++- .../PIG/configuration/pig-properties.xml | 5 +- .../services/YARN/configuration/yarn-env.xml | 9 +- .../services/YARN/configuration/yarn-site.xml | 30 +- .../HDP/2.2/configuration/cluster-env.xml | 1 - .../configuration/falcon-startup.properties.xml | 50 +- .../FALCON/configuration/oozie-site.xml | 24 +- .../services/HBASE/configuration/hbase-env.xml | 21 +- .../services/HBASE/configuration/hbase-site.xml | 53 +- .../ranger-hbase-plugin-properties.xml | 162 +++--- .../services/HDFS/configuration/core-site.xml | 18 +- .../services/HDFS/configuration/hadoop-env.xml | 14 +- .../services/HDFS/configuration/hdfs-log4j.xml | 5 +- .../services/HDFS/configuration/hdfs-site.xml | 23 +- .../ranger-hdfs-plugin-properties.xml | 530 +++++++++-------- .../services/HIVE/configuration/hive-env.xml | 19 +- .../services/HIVE/configuration/hive-site.xml | 441 ++++++++++---- .../HIVE/configuration/hiveserver2-site.xml | 18 +- .../ranger-hive-plugin-properties.xml | 160 ++--- .../HIVE/configuration/webhcat-site.xml | 49 +- .../ranger-knox-plugin-properties.xml | 6 +- .../services/OOZIE/configuration/oozie-env.xml | 4 +- .../services/OOZIE/configuration/oozie-site.xml | 19 +- .../services/STORM/configuration/storm-site.xml | 14 +- .../2.2/services/TEZ/configuration/tez-site.xml | 141 +++-- .../YARN/configuration-mapred/mapred-env.xml | 5 +- .../YARN/configuration-mapred/mapred-site.xml | 55 +- .../YARN/configuration/capacity-scheduler.xml | 13 +- .../services/YARN/configuration/yarn-env.xml | 3 +- .../services/YARN/configuration/yarn-site.xml | 167 +++++- .../services/ECS/configuration/core-site.xml | 219 +++---- .../services/ECS/configuration/hadoop-env.xml | 16 +- .../services/ECS/configuration/hdfs-site.xml | 8 +- .../services/HBASE/configuration/hbase-env.xml | 4 +- .../services/HBASE/configuration/hbase-site.xml | 10 +- .../services/TEZ/configuration/tez-site.xml | 6 +- .../YARN/configuration-mapred/mapred-site.xml | 9 +- .../services/YARN/configuration/yarn-site.xml | 7 +- .../2.3.GlusterFS/configuration/cluster-env.xml | 1 - .../ACCUMULO/configuration/accumulo-log4j.xml | 23 +- .../GLUSTERFS/configuration/core-site.xml | 102 ++-- .../GLUSTERFS/configuration/hadoop-env.xml | 42 +- .../services/HBASE/configuration/hbase-site.xml | 101 +++- .../services/HIVE/configuration/hive-site.xml | 166 ++++-- .../HIVE/configuration/webhcat-site.xml | 60 +- .../services/OOZIE/configuration/oozie-site.xml | 89 ++- .../services/TEZ/configuration/tez-site.xml | 19 +- .../YARN/configuration-mapred/mapred-site.xml | 87 +-- .../YARN/configuration/capacity-scheduler.xml | 17 +- .../services/YARN/configuration/yarn-site.xml | 133 ++++- .../ACCUMULO/configuration/accumulo-env.xml | 4 +- .../ACCUMULO/configuration/accumulo-log4j.xml | 23 +- .../ACCUMULO/configuration/accumulo-site.xml | 4 +- .../FALCON/configuration/falcon-env.xml | 3 + .../configuration/falcon-startup.properties.xml | 7 +- .../services/HBASE/configuration/hbase-env.xml | 4 +- .../services/HBASE/configuration/hbase-site.xml | 12 + .../HBASE/configuration/ranger-hbase-audit.xml | 51 +- .../ranger-hbase-plugin-properties.xml | 107 ++-- .../ranger-hbase-policymgr-ssl.xml | 97 ++-- .../configuration/ranger-hbase-security.xml | 23 +- .../services/HDFS/configuration/hadoop-env.xml | 10 +- .../services/HDFS/configuration/hdfs-site.xml | 18 +- .../HDFS/configuration/ranger-hdfs-audit.xml | 51 +- .../ranger-hdfs-plugin-properties.xml | 82 ++- .../configuration/ranger-hdfs-policymgr-ssl.xml | 97 ++-- .../HDFS/configuration/ranger-hdfs-security.xml | 25 +- .../services/HIVE/configuration/hive-env.xml | 5 +- .../services/HIVE/configuration/hive-site.xml | 14 +- .../HIVE/configuration/ranger-hive-audit.xml | 53 +- .../ranger-hive-plugin-properties.xml | 109 ++-- .../configuration/ranger-hive-policymgr-ssl.xml | 23 +- .../HIVE/configuration/ranger-hive-security.xml | 22 +- .../HIVE/configuration/webhcat-site.xml | 10 +- .../ranger-kafka-policymgr-ssl.xml | 9 +- .../KNOX/configuration/knoxsso-topology.xml | 16 +- .../KNOX/configuration/ranger-knox-audit.xml | 53 +- .../ranger-knox-plugin-properties.xml | 104 ++-- .../configuration/ranger-knox-policymgr-ssl.xml | 23 +- .../KNOX/configuration/ranger-knox-security.xml | 21 +- .../services/OOZIE/configuration/oozie-env.xml | 5 +- .../PIG/configuration/pig-properties.xml | 5 +- .../RANGER/configuration/ranger-ugsync-site.xml | 18 +- .../configuration/ranger-kms-policymgr-ssl.xml | 9 +- .../ranger-storm-policymgr-ssl.xml | 9 +- .../configuration/ranger-storm-security.xml | 6 +- .../services/STORM/configuration/storm-site.xml | 15 +- .../2.3/services/TEZ/configuration/tez-site.xml | 28 +- .../YARN/configuration-mapred/mapred-site.xml | 15 +- .../YARN/configuration/capacity-scheduler.xml | 6 +- .../YARN/configuration/ranger-yarn-audit.xml | 55 +- .../ranger-yarn-plugin-properties.xml | 27 +- .../configuration/ranger-yarn-policymgr-ssl.xml | 21 +- .../YARN/configuration/ranger-yarn-security.xml | 19 +- .../services/YARN/configuration/yarn-env.xml | 5 +- .../services/YARN/configuration/yarn-log4j.xml | 5 +- .../services/YARN/configuration/yarn-site.xml | 47 +- .../services/YARN/configuration/yarn-site.xml | 26 +- .../configuration/application-properties.xml | 59 +- .../services/ATLAS/configuration/atlas-env.xml | 23 + .../configuration/falcon-startup.properties.xml | 7 +- .../services/HBASE/configuration/hbase-site.xml | 6 +- .../HBASE/configuration/ranger-hbase-audit.xml | 24 +- .../HDFS/configuration/ranger-hdfs-audit.xml | 24 +- .../HIVE/configuration/beeline-log4j2.xml | 12 +- .../services/HIVE/configuration/hive-env.xml | 5 +- .../HIVE/configuration/hive-exec-log4j2.xml | 12 +- .../HIVE/configuration/hive-interactive-env.xml | 25 +- .../configuration/hive-interactive-site.xml | 151 +++-- .../services/HIVE/configuration/hive-log4j2.xml | 12 +- .../services/HIVE/configuration/hive-site.xml | 28 +- .../HIVE/configuration/hivemetastore-site.xml | 11 +- .../HIVE/configuration/hiveserver2-site.xml | 12 +- .../HIVE/configuration/llap-cli-log4j2.xml | 11 +- .../HIVE/configuration/llap-daemon-log4j.xml | 11 +- .../HIVE/configuration/ranger-hive-audit.xml | 24 +- .../HIVE/configuration/tez-interactive-site.xml | 215 ++++--- .../KAFKA/configuration/ranger-kafka-audit.xml | 24 +- .../KNOX/configuration/knoxsso-topology.xml | 16 +- .../KNOX/configuration/ranger-knox-audit.xml | 24 +- .../configuration/ranger-tagsync-site.xml | 8 +- .../RANGER/configuration/ranger-ugsync-site.xml | 23 +- .../RANGER_KMS/configuration/dbks-site.xml | 33 +- .../RANGER_KMS/configuration/kms-env.xml | 8 +- .../configuration/ranger-kms-audit.xml | 30 +- .../ranger-storm-policymgr-ssl.xml | 9 +- .../configuration/ranger-storm-security.xml | 6 +- .../services/STORM/configuration/storm-site.xml | 15 +- .../YARN/configuration/capacity-scheduler.xml | 8 +- .../YARN/configuration/ranger-yarn-audit.xml | 24 +- .../services/YARN/configuration/yarn-site.xml | 14 +- .../ZEPPELIN/configuration/zeppelin-env.xml | 6 +- .../HDPWIN/2.1/configuration/cluster-env.xml | 17 +- .../AMBARI_METRICS/configuration/ams-env.xml | 15 +- .../configuration/ams-hbase-env.xml | 11 +- .../configuration/ams-hbase-site.xml | 4 + .../AMBARI_METRICS/configuration/ams-log4j.xml | 5 +- .../AMBARI_METRICS/configuration/ams-site.xml | 2 + .../FALCON/configuration/falcon-env.xml | 14 +- .../services/FLUME/configuration/flume-conf.xml | 3 +- .../services/FLUME/configuration/flume-env.xml | 3 +- .../services/HBASE/configuration/hbase-env.xml | 11 +- .../services/HBASE/configuration/hbase-site.xml | 4 + .../services/HDFS/configuration/core-site.xml | 10 +- .../services/HDFS/configuration/hadoop-env.xml | 17 +- .../services/HDFS/configuration/hdfs-site.xml | 25 +- .../services/HIVE/configuration/hcat-env.xml | 3 +- .../services/HIVE/configuration/hive-env.xml | 25 +- .../services/HIVE/configuration/hive-site.xml | 125 ++-- .../services/HIVE/configuration/webhcat-env.xml | 3 +- .../HIVE/configuration/webhcat-site.xml | 26 +- .../services/OOZIE/configuration/oozie-env.xml | 15 +- .../services/OOZIE/configuration/oozie-site.xml | 13 +- .../services/SQOOP/configuration/sqoop-env.xml | 6 +- .../services/STORM/configuration/storm-env.xml | 11 +- .../services/STORM/configuration/storm-site.xml | 5 +- .../2.1/services/TEZ/configuration/tez-env.xml | 8 +- .../2.1/services/TEZ/configuration/tez-site.xml | 4 +- .../YARN/configuration-mapred/mapred-env.xml | 10 +- .../YARN/configuration-mapred/mapred-site.xml | 10 +- .../services/YARN/configuration/yarn-env.xml | 9 +- .../services/YARN/configuration/yarn-site.xml | 37 +- .../ZOOKEEPER/configuration/zoo.cfg.xml | 5 +- .../ZOOKEEPER/configuration/zookeeper-env.xml | 9 +- .../configuration/falcon-startup.properties.xml | 50 +- .../services/HBASE/configuration/hbase-env.xml | 5 +- .../services/HBASE/configuration/hbase-site.xml | 28 +- .../services/HDFS/configuration/core-site.xml | 13 +- .../services/HDFS/configuration/hadoop-env.xml | 4 +- .../services/HDFS/configuration/hdfs-log4j.xml | 5 +- .../services/HDFS/configuration/hdfs-site.xml | 9 +- .../services/HIVE/configuration/hive-env.xml | 23 +- .../services/HIVE/configuration/hive-site.xml | 451 ++++++++++----- .../HIVE/configuration/hiveserver2-site.xml | 13 +- .../HIVE/configuration/webhcat-site.xml | 39 +- .../KNOX/configuration/gateway-site.xml | 29 +- .../services/KNOX/configuration/knox-env.xml | 33 +- .../ranger-knox-plugin-properties.xml | 6 +- .../services/OOZIE/configuration/oozie-site.xml | 19 +- .../SLIDER/configurations/slider-client.xml | 6 +- .../services/STORM/configuration/storm-site.xml | 33 +- .../2.2/services/TEZ/configuration/tez-site.xml | 123 ++-- .../YARN/configuration-mapred/mapred-site.xml | 39 +- .../YARN/configuration/capacity-scheduler.xml | 21 +- .../services/YARN/configuration/yarn-env.xml | 3 +- .../services/YARN/configuration/yarn-site.xml | 140 ++++- .../configuration/falcon-startup.properties.xml | 7 +- .../services/HBASE/configuration/hbase-site.xml | 12 + .../services/HDFS/configuration/hdfs-site.xml | 10 +- .../HIVE/configuration/webhcat-site.xml | 6 +- .../services/OOZIE/configuration/oozie-env.xml | 15 +- .../services/OOZIE/configuration/oozie-site.xml | 23 +- .../services/STORM/configuration/storm-site.xml | 33 +- .../2.3/services/TEZ/configuration/tez-site.xml | 24 +- .../YARN/configuration/capacity-scheduler.xml | 12 +- .../services/HDFS/configuration/core-site.xml | 27 +- .../services/HDFS/configuration/hdfs-site.xml | 44 +- .../UpgradeResourceProviderHDP22Test.java | 2 +- .../internal/UpgradeResourceProviderTest.java | 131 +++-- .../stack/StackManagerCommonServicesTest.java | 2 +- .../server/stack/StackManagerMiscTest.java | 8 +- .../ambari/server/stack/StackManagerTest.java | 8 +- .../ambari/server/state/PropertyInfoTest.java | 31 +- .../server/state/ServicePropertiesTest.java | 89 +++ .../0.11.0.2.0.5.0/configuration/hive-site.xml | 121 ++-- .../HIVE/configuration/hive-site.xml | 121 ++-- .../services/HDFS/configuration/hbase-site.xml | 30 + .../services/HDFS/configuration/hdfs-site.xml | 345 ++++++----- .../MAPREDUCE/configuration/hbase-site.xml | 30 + .../MAPREDUCE/configuration/hdfs-site.xml | 345 ++++++----- .../MAPREDUCE/configuration/mapred-site.xml | 348 ++++++----- .../YARN/configuration/capacity-scheduler.xml | 12 +- .../services/YARN/configuration/yarn-site.xml | 25 +- .../HBASE/1.0/configuration/hbase-site.xml | 30 + .../HDFS/1.0/configuration/hbase-site.xml | 30 + .../HDFS/1.0/configuration/hdfs-site.xml | 345 ++++++----- .../MAPREDUCE/1.0/configuration/hbase-site.xml | 30 + .../MAPREDUCE/1.0/configuration/hdfs-site.xml | 345 ++++++----- .../MAPREDUCE/1.0/configuration/mapred-site.xml | 348 ++++++----- .../services/HDFS/configuration/hbase-site.xml | 30 + .../services/HDFS/configuration/hdfs-site.xml | 345 ++++++----- .../MAPREDUCE/configuration/hbase-site.xml | 30 + .../MAPREDUCE/configuration/hdfs-site.xml | 345 ++++++----- .../MAPREDUCE/configuration/mapred-site.xml | 348 ++++++----- .../services/HBASE/configuration/hbase-site.xml | 30 + .../0.2/services/HDFS/configuration/global.xml | 56 +- .../services/HDFS/configuration/hadoop-env.xml | 41 +- .../services/HDFS/configuration/hbase-site.xml | 30 + .../services/HDFS/configuration/hdfs-log4j.xml | 7 +- .../services/HDFS/configuration/hdfs-site.xml | 345 ++++++----- .../services/MAPREDUCE/configuration/global.xml | 64 +- .../MAPREDUCE/configuration/hbase-site.xml | 30 + .../MAPREDUCE/configuration/hdfs-site.xml | 345 ++++++----- .../MAPREDUCE/configuration/mapred-site.xml | 348 ++++++----- .../HBASE/configuration/hbase-policy.xml | 9 +- .../services/HBASE/configuration/hbase-site.xml | 137 +++-- .../services/HDFS/configuration/core-site.xml | 94 +-- .../HDFS/configuration/hadoop-policy.xml | 47 +- .../services/HDFS/configuration/hdfs-site.xml | 409 +++++++------ .../services/HIVE/configuration/hive-site.xml | 69 ++- .../configuration/capacity-scheduler.xml | 61 +- .../configuration/mapred-queue-acls.xml | 14 +- .../MAPREDUCE/configuration/mapred-site.xml | 572 ++++++++++-------- .../services/OOZIE/configuration/oozie-site.xml | 321 +++++----- .../WEBHCAT/configuration/webhcat-site.xml | 71 ++- .../services/GANGLIA/configuration/global.xml | 16 +- .../services/HBASE/configuration/global.xml | 102 +++- .../HBASE/configuration/hbase-policy.xml | 9 +- .../services/HBASE/configuration/hbase-site.xml | 146 +++-- .../services/HCATALOG/configuration/global.xml | 10 +- .../services/HDFS/configuration/core-site.xml | 94 +-- .../services/HDFS/configuration/global.xml | 90 ++- .../HDFS/configuration/hadoop-policy.xml | 47 +- .../services/HDFS/configuration/hdfs-site.xml | 412 +++++++------ .../services/HIVE/configuration/global.xml | 74 ++- .../services/HIVE/configuration/hive-site.xml | 114 ++-- .../1.3.0/services/HUE/configuration/global.xml | 6 +- .../services/HUE/configuration/hue-site.xml | 166 ++++-- .../configuration/capacity-scheduler.xml | 61 +- .../services/MAPREDUCE/configuration/global.xml | 64 +- .../configuration/mapred-queue-acls.xml | 14 +- .../MAPREDUCE/configuration/mapred-site.xml | 578 ++++++++++--------- .../services/OOZIE/configuration/global.xml | 46 +- .../services/OOZIE/configuration/oozie-site.xml | 319 +++++----- .../WEBHCAT/configuration/webhcat-site.xml | 71 ++- .../services/ZOOKEEPER/configuration/global.xml | 24 +- .../HBASE/configuration/hbase-policy.xml | 9 +- .../services/HBASE/configuration/hbase-site.xml | 133 +++-- .../services/HCFS/configuration/core-site.xml | 94 +-- .../HCFS/configuration/hadoop-policy.xml | 47 +- .../services/HCFS/configuration/hdfs-site.xml | 409 +++++++------ .../services/HDFS/configuration/core-site.xml | 94 +-- .../HDFS/configuration/hadoop-policy.xml | 47 +- .../services/HDFS/configuration/hdfs-site.xml | 409 +++++++------ .../services/HIVE/configuration/hive-site.xml | 69 ++- .../configuration/capacity-scheduler.xml | 61 +- .../configuration/mapred-queue-acls.xml | 14 +- .../MAPREDUCE/configuration/mapred-site.xml | 567 ++++++++++-------- .../services/OOZIE/configuration/oozie-site.xml | 319 +++++----- .../WEBHCAT/configuration/webhcat-site.xml | 71 ++- .../services/HDFS/configuration/hdfs-log4j.xml | 11 +- .../HBASE/configuration/hbase-policy.xml | 9 +- .../services/HBASE/configuration/hbase-site.xml | 141 +++-- .../services/HDFS/configuration/core-site.xml | 90 +-- .../services/HDFS/configuration/global.xml | 90 ++- .../HDFS/configuration/hadoop-policy.xml | 41 +- .../services/HDFS/configuration/hdfs-site.xml | 365 ++++++------ .../services/HIVE/configuration/hive-site.xml | 69 ++- .../MAPREDUCE2/configuration/global.xml | 11 +- .../configuration/mapred-queue-acls.xml | 14 +- .../MAPREDUCE2/configuration/mapred-site.xml | 278 +++++---- .../services/OOZIE/configuration/oozie-site.xml | 319 +++++----- .../WEBHCAT/configuration/webhcat-site.xml | 71 ++- .../YARN/configuration/capacity-scheduler.xml | 36 +- .../services/YARN/configuration/global.xml | 15 +- .../services/YARN/configuration/yarn-site.xml | 96 +-- .../services/HBASE/configuration/global.xml | 102 +++- .../HBASE/configuration/hbase-policy.xml | 9 +- .../services/HBASE/configuration/hbase-site.xml | 143 +++-- .../services/HDFS/configuration/core-site.xml | 84 +-- .../services/HDFS/configuration/global.xml | 86 ++- .../HDFS/configuration/hadoop-policy.xml | 41 +- .../services/HDFS/configuration/hdfs-site.xml | 350 ++++++----- .../services/HIVE/configuration/hive-site.xml | 123 ++-- .../MAPREDUCE2/configuration/global.xml | 11 +- .../configuration/mapred-queue-acls.xml | 14 +- .../MAPREDUCE2/configuration/mapred-site.xml | 146 +++-- .../services/OOZIE/configuration/oozie-site.xml | 319 +++++----- .../YARN/configuration/capacity-scheduler.xml | 36 +- .../services/YARN/configuration/global.xml | 21 +- .../services/YARN/configuration/yarn-site.xml | 122 ++-- .../services/ZOOKEEPER/configuration/global.xml | 24 +- .../ZOOKEEPER/configuration/zoo.cfg.xml | 17 +- .../services/FLUME/configuration/flume-conf.xml | 3 +- .../services/FLUME/configuration/flume-env.xml | 7 +- .../FLUME/configuration/flume-log4j.xml | 3 +- .../services/FLUME/configuration/flume-conf.xml | 3 +- .../services/FLUME/configuration/flume-env.xml | 7 +- .../FLUME/configuration/flume-log4j.xml | 3 +- .../services/YARN/configuration/yarn-site.xml | 37 +- .../services/HBASE/configuration/global.xml | 98 +++- .../HBASE/configuration/hbase-policy.xml | 9 +- .../services/HBASE/configuration/hbase-site.xml | 138 +++-- .../services/HDFS/configuration/core-site.xml | 71 ++- .../services/HDFS/configuration/global.xml | 88 ++- .../HDFS/configuration/hadoop-policy.xml | 41 +- .../services/HDFS/configuration/hdfs-site.xml | 209 ++++--- .../services/HIVE/configuration/hive-site.xml | 121 ++-- .../services/YARN/configuration/yarn-site.xml | 23 +- .../services/HBASE/configuration/hbase-site.xml | 138 +++-- .../services/HDFS/configuration/hdfs-site.xml | 16 +- .../PIG/configuration/pig-properties.xml | 11 +- .../services/HDFS/configuration/hdfs-site.xml | 16 +- .../0.2/services/HDFS/configuration/global.xml | 56 +- .../services/HDFS/configuration/hadoop-env.xml | 41 +- .../services/HDFS/configuration/hbase-site.xml | 30 + .../services/HDFS/configuration/hdfs-log4j.xml | 11 +- .../services/HDFS/configuration/hdfs-site.xml | 345 ++++++----- .../services/HDFS/configuration/hdfs-site.xml | 16 +- 601 files changed, 23242 insertions(+), 13402 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/ed7c64ad/ambari-funtest/src/test/resources/stacks/HDP/2.0.8/services/HDFS/configuration/hdfs-site.xml ---------------------------------------------------------------------- diff --git a/ambari-funtest/src/test/resources/stacks/HDP/2.0.8/services/HDFS/configuration/hdfs-site.xml b/ambari-funtest/src/test/resources/stacks/HDP/2.0.8/services/HDFS/configuration/hdfs-site.xml index c40fbd0..0844ec5 100644 --- a/ambari-funtest/src/test/resources/stacks/HDP/2.0.8/services/HDFS/configuration/hdfs-site.xml +++ b/ambari-funtest/src/test/resources/stacks/HDP/2.0.8/services/HDFS/configuration/hdfs-site.xml @@ -33,7 +33,7 @@ <value>true</value> <description>to enable dfs append</description> <final>true</final> - <deletable>false</deletable> + <deleted>false</deleted> </property> <property> http://git-wip-us.apache.org/repos/asf/ambari/blob/ed7c64ad/ambari-funtest/src/test/resources/stacks/OTHER/1.0/services/HDFS/configuration/hdfs-site.xml ---------------------------------------------------------------------- diff --git a/ambari-funtest/src/test/resources/stacks/OTHER/1.0/services/HDFS/configuration/hdfs-site.xml b/ambari-funtest/src/test/resources/stacks/OTHER/1.0/services/HDFS/configuration/hdfs-site.xml index c40fbd0..0844ec5 100644 --- a/ambari-funtest/src/test/resources/stacks/OTHER/1.0/services/HDFS/configuration/hdfs-site.xml +++ b/ambari-funtest/src/test/resources/stacks/OTHER/1.0/services/HDFS/configuration/hdfs-site.xml @@ -33,7 +33,7 @@ <value>true</value> <description>to enable dfs append</description> <final>true</final> - <deletable>false</deletable> + <deleted>false</deleted> </property> <property> http://git-wip-us.apache.org/repos/asf/ambari/blob/ed7c64ad/ambari-server/src/main/java/org/apache/ambari/server/api/services/AmbariMetaInfo.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/java/org/apache/ambari/server/api/services/AmbariMetaInfo.java b/ambari-server/src/main/java/org/apache/ambari/server/api/services/AmbariMetaInfo.java index c54fe3f..f0928cf 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/api/services/AmbariMetaInfo.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/api/services/AmbariMetaInfo.java @@ -256,7 +256,7 @@ public class AmbariMetaInfo { readServerVersion(); stackManager = stackManagerFactory.create(stackRoot, commonServicesRoot, - osFamily); + osFamily, false); getCustomActionDefinitions(customActionRoot); } http://git-wip-us.apache.org/repos/asf/ambari/blob/ed7c64ad/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/UpgradeResourceProvider.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/UpgradeResourceProvider.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/UpgradeResourceProvider.java index fb3ae69..b2c21b9 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/UpgradeResourceProvider.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/UpgradeResourceProvider.java @@ -82,9 +82,10 @@ import org.apache.ambari.server.serveraction.upgrades.UpdateDesiredStackAction; import org.apache.ambari.server.stack.MasterHostResolver; import org.apache.ambari.server.state.Cluster; import org.apache.ambari.server.state.Clusters; -import org.apache.ambari.server.state.Config; import org.apache.ambari.server.state.ConfigHelper; import org.apache.ambari.server.state.DesiredConfig; +import org.apache.ambari.server.state.PropertyInfo; +import org.apache.ambari.server.state.PropertyUpgradeBehavior; import org.apache.ambari.server.state.Service; import org.apache.ambari.server.state.ServiceComponent; import org.apache.ambari.server.state.ServiceInfo; @@ -990,7 +991,7 @@ public class UpgradeResourceProvider extends AbstractControllerResourceProvider * @throws AmbariException */ public void applyStackAndProcessConfigurations(String stackName, Cluster cluster, String version, Direction direction, UpgradePack upgradePack, String userName) - throws AmbariException { + throws AmbariException { RepositoryVersionEntity targetRve = s_repoVersionDAO.findByStackNameAndVersion(stackName, version); if (null == targetRve) { LOG.info("Could not find version entity for {}; not setting new configs", version); @@ -1022,18 +1023,12 @@ public class UpgradeResourceProvider extends AbstractControllerResourceProvider break; } - Map<String, Map<String, String>> newConfigurationsByType = null; + Map<String, Map<String, String>> updatedConfigurationsByType = null; ConfigHelper configHelper = getManagementController().getConfigHelper(); if (direction == Direction.UPGRADE) { - // populate a map of default configurations for the old stack (this is - // used when determining if a property has been customized and should be - // overriden with the new stack value) - Map<String, Map<String, String>> oldStackDefaultConfigurationsByType = configHelper.getDefaultProperties( - currentStackId, cluster); - // populate a map with default configurations from the new stack - newConfigurationsByType = configHelper.getDefaultProperties(targetStackId, cluster); + Map<String, Set<PropertyInfo>> newConfigurationsByType = configHelper.getDefaultProperties(targetStackId, cluster); // We want to skip updating config-types of services that are not in the upgrade pack. // Care should be taken as some config-types could be in services that are in and out @@ -1083,83 +1078,52 @@ public class UpgradeResourceProvider extends AbstractControllerResourceProvider } } - // now that the map has been populated with the default configurations - // from the stack/service, overlay the existing configurations on top + // overlay new configuration on top of existing configurations + + // create map of existing configurations + Map<String, Map<String, String>> existingPropertiesByType = new HashMap<>(); Map<String, DesiredConfig> existingDesiredConfigurationsByType = cluster.getDesiredConfigs(); - for (Map.Entry<String, DesiredConfig> existingEntry : existingDesiredConfigurationsByType.entrySet()) { - String configurationType = existingEntry.getKey(); - if(skipConfigTypes.contains(configurationType)) { - LOG.info("RU: Skipping config-type {} as upgrade-pack contains no updates to its service", configurationType); + for (String configurationType : existingDesiredConfigurationsByType.keySet()) { + if (skipConfigTypes.contains(configurationType)) { + LOG.info("RU: Skipping config-configurationType {} as upgrade-pack contains no updates to its service", configurationType); continue; } + Map<String, String> existingProperties = cluster.getDesiredConfigByType(configurationType).getProperties(); + existingPropertiesByType.put(configurationType, existingProperties); + } - // NPE sanity, although shouldn't even happen since we are iterating - // over the desired configs to start with - Config currentClusterConfig = cluster.getDesiredConfigByType(configurationType); - if (null == currentClusterConfig) { - continue; + // for every existing configuration, see if an entry exists: + // - if it does not exist and marked as ADD_ON_UPGRADE, then add it + // - if it does exist and marked as DELETE_ON_UPGRADE, then remove it + // - if it does exist and marked as CHANGE_ON_UPGRADE, then update it + for (Map.Entry<String, Set<PropertyInfo>> newPropertyEntry : newConfigurationsByType.entrySet()) { + + String configurationType = newPropertyEntry.getKey(); + Map<String, String> existingProperties = existingPropertiesByType.get(configurationType); + if (existingProperties == null) { + existingProperties = new HashMap<>(); + existingPropertiesByType.put(configurationType, existingProperties); } - // get the existing configurations - Map<String, String> existingConfigurations = currentClusterConfig.getProperties(); + for (PropertyInfo propertyInfo : newPropertyEntry.getValue()) { - // if the new stack configurations don't have the type, then simple add - // all of the existing in - Map<String, String> newDefaultConfigurations = newConfigurationsByType.get( - configurationType); - if (null == newDefaultConfigurations) { - newConfigurationsByType.put(configurationType, existingConfigurations); - continue; - } else { - // TODO, should we remove existing configs whose value is NULL even though they don't have a value in the new stack? - - // Remove any configs in the new stack whose value is NULL, unless they currently exist and the value is not NULL. - Iterator<Map.Entry<String, String>> iter = newDefaultConfigurations.entrySet().iterator(); - while (iter.hasNext()) { - Map.Entry<String, String> entry = iter.next(); - if (entry.getValue() == null) { - iter.remove(); - } - } - } + String propertyName = propertyInfo.getName(); + String propertyValue = propertyInfo.getValue(); + PropertyUpgradeBehavior propertyStackUpgradeBehavior = propertyInfo.getPropertyStackUpgradeBehavior(); - // for every existing configuration, see if an entry exists; if it does - // not exist, then put it in the map, otherwise we'll have to compare - // the existing value to the original stack value to see if its been - // customized - for (Map.Entry<String, String> existingConfigurationEntry : existingConfigurations.entrySet()) { - String existingConfigurationKey = existingConfigurationEntry.getKey(); - String existingConfigurationValue = existingConfigurationEntry.getValue(); - - // if there is already an entry, we now have to try to determine if - // the value was customized after stack installation - if (newDefaultConfigurations.containsKey(existingConfigurationKey)) { - String newDefaultConfigurationValue = newDefaultConfigurations.get( - existingConfigurationKey); - if (!StringUtils.equals(existingConfigurationValue, newDefaultConfigurationValue)) { - // the new default is different from the existing cluster value; - // only override the default value if the existing value differs - // from the original stack - Map<String, String> configurationTypeDefaultConfigurations = oldStackDefaultConfigurationsByType.get( - configurationType); - if (null != configurationTypeDefaultConfigurations) { - String oldDefaultValue = configurationTypeDefaultConfigurations.get( - existingConfigurationKey); - if (!StringUtils.equals(existingConfigurationValue, oldDefaultValue)) { - // at this point, we've determined that there is a difference - // between default values between stacks, but the value was - // also customized, so keep the customized value - newDefaultConfigurations.put(existingConfigurationKey, - existingConfigurationValue); - } - } + if (!existingProperties.containsKey(propertyName) && propertyStackUpgradeBehavior.isAdd()) { + existingProperties.put(propertyName, propertyValue); + } else if (existingProperties.containsKey(propertyName)) { + if (propertyStackUpgradeBehavior.isDelete()) { + existingProperties.remove(propertyName); + } else if (propertyStackUpgradeBehavior.isChange()) { + existingProperties.put(propertyName, propertyValue); } - } else { - // there is no entry in the map, so add the existing key/value pair - newDefaultConfigurations.put(existingConfigurationKey, existingConfigurationValue); } } } + + updatedConfigurationsByType = existingPropertiesByType; } else { // downgrade cluster.applyLatestConfigurations(cluster.getCurrentStackVersion()); @@ -1170,8 +1134,8 @@ public class UpgradeResourceProvider extends AbstractControllerResourceProvider new StackId(targetStack.getStackName(), targetStack.getStackVersion()), true); // !!! configs must be created after setting the stack version - if (null != newConfigurationsByType) { - configHelper.createConfigTypes(cluster, getManagementController(), newConfigurationsByType, + if (null != updatedConfigurationsByType) { + configHelper.createConfigTypes(cluster, getManagementController(), updatedConfigurationsByType, userName, "Configuration created for Upgrade"); } } http://git-wip-us.apache.org/repos/asf/ambari/blob/ed7c64ad/ambari-server/src/main/java/org/apache/ambari/server/stack/StackManager.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/java/org/apache/ambari/server/stack/StackManager.java b/ambari-server/src/main/java/org/apache/ambari/server/stack/StackManager.java index 8a352bd..c224b56 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/stack/StackManager.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/stack/StackManager.java @@ -25,6 +25,11 @@ import java.util.HashSet; import java.util.Map; import javax.annotation.Nullable; +import javax.xml.XMLConstants; +import javax.xml.transform.stream.StreamSource; +import javax.xml.validation.Schema; +import javax.xml.validation.SchemaFactory; +import javax.xml.validation.Validator; import org.apache.ambari.server.AmbariException; import org.apache.ambari.server.api.services.AmbariMetaInfo; @@ -37,11 +42,13 @@ import org.apache.ambari.server.state.ServiceInfo; import org.apache.ambari.server.state.StackInfo; import org.apache.ambari.server.state.stack.OsFamily; import org.apache.ambari.server.state.stack.ServiceMetainfoXml; +import org.apache.commons.io.FileUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.google.inject.Inject; import com.google.inject.assistedinject.Assisted; +import org.xml.sax.SAXException; /** @@ -50,6 +57,7 @@ import com.google.inject.assistedinject.Assisted; */ public class StackManager { + public static final String PROPERTY_SCHEMA_PATH = "configuration-schema.xsd"; /** * Delimiter used for parent path string * Example: @@ -100,14 +108,17 @@ public class StackManager { @Inject public StackManager(@Assisted("stackRoot") File stackRoot, @Assisted("commonServicesRoot") @Nullable File commonServicesRoot, - @Assisted OsFamily osFamily, MetainfoDAO metaInfoDAO, + @Assisted OsFamily osFamily, @Assisted boolean validate, + MetainfoDAO metaInfoDAO, ActionMetadata actionMetadata, StackDAO stackDao) throws AmbariException { LOG.info("Initializing the stack manager..."); - validateStackDirectory(stackRoot); - validateCommonServicesDirectory(commonServicesRoot); + if (validate) { + validateStackDirectory(stackRoot); + validateCommonServicesDirectory(commonServicesRoot); + } stackMap = new HashMap<String, StackInfo>(); stackContext = new StackContext(metaInfoDAO, actionMetadata, osFamily); @@ -277,6 +288,37 @@ public class StackManager { + " should be a directory with stack" + ", stackRoot = " + stackRootAbsPath); } + Validator validator = getPropertySchemaValidator(); + + validateAllPropertyXmlsInFolderRecursively(stackRoot, validator); + } + + public static Validator getPropertySchemaValidator() throws AmbariException { + SchemaFactory factory = + SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI); + Schema schema; + ClassLoader classLoader = StackManager.class.getClassLoader(); + try { + schema = factory.newSchema(classLoader.getResource(PROPERTY_SCHEMA_PATH)); + } catch (SAXException e) { + throw new AmbariException(String.format("Failed to parse property schema file %s", PROPERTY_SCHEMA_PATH), e); + } + return schema.newValidator(); + } + + public static void validateAllPropertyXmlsInFolderRecursively(File stackRoot, Validator validator) throws AmbariException { + Collection<File> files = FileUtils.listFiles(stackRoot, new String[]{"xml"}, true); + for (File file : files) { + try { + if (file.getParentFile().getName().contains("configuration")) { + validator.validate(new StreamSource(file)); + } + } catch (Exception e) { + String msg = String.format("File %s didn't pass the validation. Error message is : %s", file.getAbsolutePath(), e.getMessage()); + LOG.error(msg); + throw new AmbariException(msg); + } + } } /** http://git-wip-us.apache.org/repos/asf/ambari/blob/ed7c64ad/ambari-server/src/main/java/org/apache/ambari/server/stack/StackManagerFactory.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/java/org/apache/ambari/server/stack/StackManagerFactory.java b/ambari-server/src/main/java/org/apache/ambari/server/stack/StackManagerFactory.java index 5aa2b5f..105b715 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/stack/StackManagerFactory.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/stack/StackManagerFactory.java @@ -44,5 +44,5 @@ public interface StackManagerFactory { */ StackManager create(@Assisted("stackRoot") File stackRoot, @Nullable @Assisted("commonServicesRoot") File commonServicesRoot, - OsFamily osFamily); + OsFamily osFamily, boolean validate); } http://git-wip-us.apache.org/repos/asf/ambari/blob/ed7c64ad/ambari-server/src/main/java/org/apache/ambari/server/state/ConfigHelper.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/java/org/apache/ambari/server/state/ConfigHelper.java b/ambari-server/src/main/java/org/apache/ambari/server/state/ConfigHelper.java index a36df7b..59b2db2 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/state/ConfigHelper.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/state/ConfigHelper.java @@ -1019,9 +1019,9 @@ public class ConfigHelper { * default configurations. * @throws AmbariException */ - public Map<String, Map<String, String>> getDefaultProperties(StackId stack, Cluster cluster) + public Map<String, Set<PropertyInfo>> getDefaultProperties(StackId stack, Cluster cluster) throws AmbariException { - Map<String, Map<String, String>> defaultPropertiesByType = new HashMap<String, Map<String, String>>(); + Map<String, Set<PropertyInfo>> defaultPropertiesByType = new HashMap<String, Set<PropertyInfo>>(); // populate the stack (non-service related) properties first Set<org.apache.ambari.server.state.PropertyInfo> stackConfigurationProperties = ambariMetaInfo.getStackProperties( @@ -1031,11 +1031,10 @@ public class ConfigHelper { String type = ConfigHelper.fileNameToConfigType(stackDefaultProperty.getFilename()); if (!defaultPropertiesByType.containsKey(type)) { - defaultPropertiesByType.put(type, new HashMap<String, String>()); + defaultPropertiesByType.put(type, new HashSet<PropertyInfo>()); } - defaultPropertiesByType.get(type).put(stackDefaultProperty.getName(), - stackDefaultProperty.getValue()); + defaultPropertiesByType.get(type).add(stackDefaultProperty); } // for every installed service, populate the default service properties @@ -1048,11 +1047,10 @@ public class ConfigHelper { String type = ConfigHelper.fileNameToConfigType(serviceDefaultProperty.getFilename()); if (!defaultPropertiesByType.containsKey(type)) { - defaultPropertiesByType.put(type, new HashMap<String, String>()); + defaultPropertiesByType.put(type, new HashSet<PropertyInfo>()); } - defaultPropertiesByType.get(type).put(serviceDefaultProperty.getName(), - serviceDefaultProperty.getValue()); + defaultPropertiesByType.get(type).add(serviceDefaultProperty); } } http://git-wip-us.apache.org/repos/asf/ambari/blob/ed7c64ad/ambari-server/src/main/java/org/apache/ambari/server/state/PropertyInfo.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/java/org/apache/ambari/server/state/PropertyInfo.java b/ambari-server/src/main/java/org/apache/ambari/server/state/PropertyInfo.java index 34b3ba1..6ea7983 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/state/PropertyInfo.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/state/PropertyInfo.java @@ -19,8 +19,6 @@ package org.apache.ambari.server.state; -import com.google.common.base.Predicate; -import com.google.common.collect.Iterables; import org.apache.ambari.server.controller.StackConfigurationResponse; import org.w3c.dom.Element; @@ -30,6 +28,7 @@ import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlAnyElement; import javax.xml.bind.annotation.XmlAttribute; import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlElementRef; import javax.xml.bind.annotation.XmlElementWrapper; import javax.xml.bind.annotation.XmlList; @@ -52,6 +51,12 @@ public class PropertyInfo { private String filename; private boolean deleted; + @XmlElement(name="on-stack-upgrade", required = true) + private PropertyUpgradeBehavior propertyStackUpgradeBehavior; + + @XmlElement(name="on-ambari-upgrade", required = true) + private PropertyUpgradeBehavior propertyAmbariUpgradeBehavior; + @XmlAttribute(name = "require-input") private boolean requireInput; @@ -134,7 +139,23 @@ public class PropertyInfo { public void setPropertyTypes(Set<PropertyType> propertyTypes) { this.propertyTypes = propertyTypes; } - + + public PropertyUpgradeBehavior getPropertyStackUpgradeBehavior() { + return propertyStackUpgradeBehavior; + } + + public void setPropertyStackUpgradeBehavior(PropertyUpgradeBehavior propertyStackUpgradeBehavior) { + this.propertyStackUpgradeBehavior = propertyStackUpgradeBehavior; + } + + public PropertyUpgradeBehavior getPropertyAmbariUpgradeBehavior() { + return propertyAmbariUpgradeBehavior; + } + + public void setPropertyAmbariUpgradeBehavior(PropertyUpgradeBehavior propertyAmbariUpgradeBehavior) { + this.propertyAmbariUpgradeBehavior = propertyAmbariUpgradeBehavior; + } + public StackConfigurationResponse convertToResponse() { return new StackConfigurationResponse(getName(), getValue(), getDescription(), getDisplayName() , getFilename(), isRequireInput(), http://git-wip-us.apache.org/repos/asf/ambari/blob/ed7c64ad/ambari-server/src/main/java/org/apache/ambari/server/state/PropertyUpgradeBehavior.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/java/org/apache/ambari/server/state/PropertyUpgradeBehavior.java b/ambari-server/src/main/java/org/apache/ambari/server/state/PropertyUpgradeBehavior.java new file mode 100644 index 0000000..de2e342 --- /dev/null +++ b/ambari-server/src/main/java/org/apache/ambari/server/state/PropertyUpgradeBehavior.java @@ -0,0 +1,73 @@ +/** + * 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. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.ambari.server.state; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlAttribute; + +/** + * Represents a behavior used during upgrade for property + */ +@XmlAccessorType(XmlAccessType.FIELD) +public class PropertyUpgradeBehavior { + + @XmlAttribute(name="add", required = true) + private boolean add; + + @XmlAttribute(name="delete", required = true) + private boolean delete; + + @XmlAttribute(name="change", required = true) + private boolean change; + + public PropertyUpgradeBehavior() {} + + public PropertyUpgradeBehavior(boolean add, boolean delete, boolean change) { + this.add = add; + this.delete = delete; + this.change = change; + } + + public void setAdd( boolean add ) + { + this.add = add; + } + + public void setDelete( boolean delete ) + { + this.delete = delete; + } + + public void setChange( boolean change ) + { + this.change = change; + } + + public boolean isAdd() { + return add; + } + + public boolean isDelete() { + return delete; + } + + public boolean isChange() { + return change; + } +} http://git-wip-us.apache.org/repos/asf/ambari/blob/ed7c64ad/ambari-server/src/main/java/org/apache/ambari/server/upgrade/AbstractUpgradeCatalog.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/java/org/apache/ambari/server/upgrade/AbstractUpgradeCatalog.java b/ambari-server/src/main/java/org/apache/ambari/server/upgrade/AbstractUpgradeCatalog.java index 3ee8bba..f30bf40 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/upgrade/AbstractUpgradeCatalog.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/upgrade/AbstractUpgradeCatalog.java @@ -24,7 +24,6 @@ import java.sql.Statement; import java.util.Collections; import java.util.Comparator; import java.util.HashMap; -import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Map.Entry; @@ -310,6 +309,7 @@ public abstract class AbstractUpgradeCatalog implements UpgradeCatalog { if (clusterMap != null && !clusterMap.isEmpty()) { for (Cluster cluster : clusterMap.values()) { Map<String, Set<String>> newProperties = new HashMap<String, Set<String>>(); + Map<String, Set<String>> overriddenProperties = new HashMap<String, Set<String>>(); Set<PropertyInfo> stackProperties = configHelper.getStackProperties(cluster); for(String serviceName: cluster.getServices().keySet()) { @@ -321,21 +321,33 @@ public abstract class AbstractUpgradeCatalog implements UpgradeCatalog { properties.addAll(stackProperties); for(PropertyInfo property:properties) { + if (property.getValue() == null) { + continue; + } + String configType = ConfigHelper.fileNameToConfigType(property.getFilename()); Config clusterConfigs = cluster.getDesiredConfigByType(configType); - if(clusterConfigs == null || !clusterConfigs.getProperties().containsKey(property.getName())) { - if (property.getValue() == null || property.getPropertyTypes().contains(PropertyInfo.PropertyType.DONT_ADD_ON_UPGRADE)) { - continue; - } - - LOG.info("Config " + property.getName() + " from " + configType + " from xml configurations" + - " is not found on the cluster. Adding it..."); - - if(!newProperties.containsKey(configType)) { - newProperties.put(configType, new HashSet<String>()); - } - newProperties.get(configType).add(property.getName()); - } +// if (clusterConfigs == null || (!clusterConfigs.getProperties().containsKey(property.getName()) && property.getPropertyAmbariUpgradeBehavior().isAdd())) { +// LOG.info("Config " + property.getName() + " from " + configType + " from xml configurations" + +// " will be added..."); +// if (!newProperties.containsKey(configType)) { +// newProperties.put(configType, new HashSet<String>()); +// } +// newProperties.get(configType).add(property.getName()); +// } else if (clusterConfigs.getProperties().containsKey(property.getName())) { +// if (property.getPropertyAmbariUpgradeBehavior().isDelete()) { +// LOG.info("Config " + property.getName() + " from " + configType + " from xml configurations" + +// " will be removed..."); +// continue; +// } else if (property.getPropertyAmbariUpgradeBehavior().isChange()) { +// LOG.info("Config " + property.getName() + " from " + configType + " from xml configurations" + +// " will be overridden..."); +// if (!overriddenProperties.containsKey(configType)) { +// overriddenProperties.put(configType, new HashSet<String>()); +// } +// overriddenProperties.get(configType).add(property.getName()); +// } +// } } } @@ -344,6 +356,9 @@ public abstract class AbstractUpgradeCatalog implements UpgradeCatalog { for (Entry<String, Set<String>> newProperty : newProperties.entrySet()) { updateConfigurationPropertiesWithValuesFromXml(newProperty.getKey(), newProperty.getValue(), false, true); } + for (Entry<String, Set<String>> overriddenProperty : overriddenProperties.entrySet()) { + updateConfigurationPropertiesWithValuesFromXml(overriddenProperty.getKey(), overriddenProperty.getValue(), true, true); + } } } } http://git-wip-us.apache.org/repos/asf/ambari/blob/ed7c64ad/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/accumulo-env.xml ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/accumulo-env.xml b/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/accumulo-env.xml index 8d1cd71..500e331 100644 --- a/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/accumulo-env.xml +++ b/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/accumulo-env.xml @@ -19,11 +19,10 @@ * limitations under the License. */ --> - <configuration supports_adding_forbidden="true"> <property require-input="true"> <name>accumulo_root_password</name> - <value></value> + <value/> <property-type>PASSWORD</property-type> <display-name>Accumulo root password</display-name> <description>Password for the Accumulo root user. This password will be @@ -33,10 +32,12 @@ <type>password</type> <overridable>false</overridable> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> <property require-input="true"> <name>instance_secret</name> - <value></value> + <value/> <display-name>Instance Secret</display-name> <property-type>PASSWORD</property-type> <description>A secret unique to a given instance that all Accumulo server @@ -47,6 +48,8 @@ <editable-only-at-install>true</editable-only-at-install> <overridable>false</overridable> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> <property require-input="false"> <name>trace_password</name> @@ -60,6 +63,8 @@ <type>password</type> <overridable>false</overridable> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> <property> <name>accumulo_log_dir</name> @@ -70,6 +75,8 @@ <type>directory</type> <overridable>false</overridable> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> <property> <name>accumulo_pid_dir</name> @@ -81,6 +88,8 @@ <editable-only-at-install>true</editable-only-at-install> <overridable>false</overridable> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> <property> <name>accumulo_instance_name</name> @@ -91,6 +100,8 @@ <editable-only-at-install>true</editable-only-at-install> <overridable>false</overridable> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> <property> <name>accumulo_user</name> @@ -102,6 +113,8 @@ <type>user</type> <overridable>false</overridable> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> <property> <name>accumulo_master_heapsize</name> @@ -113,6 +126,8 @@ <unit>MB</unit> <overridable>false</overridable> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> <property> <name>accumulo_tserver_heapsize</name> @@ -123,6 +138,8 @@ <type>int</type> <unit>MB</unit> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> <property> <name>accumulo_monitor_heapsize</name> @@ -134,6 +151,8 @@ <unit>MB</unit> <overridable>false</overridable> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> <property> <name>accumulo_gc_heapsize</name> @@ -145,6 +164,8 @@ <unit>MB</unit> <overridable>false</overridable> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> <property> <name>accumulo_other_heapsize</name> @@ -155,6 +176,8 @@ <type>int</type> <unit>MB</unit> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> <property> <name>accumulo_monitor_bind_all</name> @@ -164,18 +187,21 @@ <value-attributes> <type>boolean</type> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> - <property> <name>accumulo_user_keytab</name> <description>Accumulo keytab path</description> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> - <property> <name>accumulo_principal_name</name> <description>Accumulo principal name</description> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> - <property> <name>content</name> <display-name>accumulo-env template</display-name> @@ -200,6 +226,8 @@ export ACCUMULO_KILL_CMD='kill -9 %p' <value-attributes> <type>content</type> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> <property> <name>server_content</name> @@ -227,5 +255,7 @@ export ACCUMULO_KILL_CMD='kill -9 %p' <value-attributes> <type>content</type> </value-attributes> + <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/ed7c64ad/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/accumulo-log4j.xml ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/accumulo-log4j.xml b/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/accumulo-log4j.xml index b72dddf..cac3bd3 100644 --- a/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/accumulo-log4j.xml +++ b/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/accumulo-log4j.xml @@ -19,46 +19,50 @@ * limitations under the License. */ --> - <configuration supports_adding_forbidden="true"> - <property> <name>audit_log_level</name> <value>OFF</value> <description>Log level for audit logging</description> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> - <property> <name>monitor_forwarding_log_level</name> <value>WARN</value> <description>Log level for logging forwarded to the Accumulo Monitor</description> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> - <property> <name>debug_log_size</name> <value>512M</value> <description>Size of each debug rolling log file</description> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> - <property> <name>debug_num_logs</name> <value>10</value> <description>Number of rolling debug log files to keep</description> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> - <property> <name>info_log_size</name> <value>512M</value> <description>Size of each info rolling log file</description> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> - <property> <name>info_num_logs</name> <value>10</value> <description>Number of rolling info log files to keep</description> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> - <property> <name>content</name> <display-name>accumulo-log4j template</display-name> @@ -112,6 +116,7 @@ log4j.appender.A1.layout=org.apache.log4j.PatternLayout <type>content</type> <show-property-name>false</show-property-name> </value-attributes> + <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/ed7c64ad/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/accumulo-site.xml ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/accumulo-site.xml b/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/accumulo-site.xml index f7dfdb0..1342415 100644 --- a/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/accumulo-site.xml +++ b/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/accumulo-site.xml @@ -16,11 +16,9 @@ See the License for the specific language governing permissions and limitations under the License. --> - <configuration> <!-- Put your site-specific accumulo configurations here. The available configuration values along with their defaults are documented in docs/config.html Unless you are simply testing at your workstation, you will most definitely need to change the three entries below. --> - <property> <name>instance.volumes</name> <value>hdfs://localhost:8020/apps/accumulo/data</value> @@ -29,8 +27,9 @@ <value-attributes> <overridable>false</overridable> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> - <property> <name>instance.zookeeper.host</name> <value>localhost:2181</value> @@ -40,8 +39,9 @@ <value-attributes> <overridable>false</overridable> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> - <property> <name>instance.zookeeper.timeout</name> <value>30s</value> @@ -49,8 +49,9 @@ <value-attributes> <overridable>false</overridable> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> - <property> <name>tserver.memory.maps.max</name> <value>1G</value> @@ -58,9 +59,10 @@ map, where incoming writes are sorted. If native maps are enabled (tserver.memory.maps.native.enabled) this memory is off-heap. Ensure that table.compaction.minor.logs.threshold * - tserver.walog.max.size >= tserver.memory.maps.max.</description> + tserver.walog.max.size >= tserver.memory.maps.max.</description> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> - <property> <name>tserver.memory.maps.native.enabled</name> <value>true</value> @@ -70,33 +72,38 @@ <value-attributes> <type>boolean</type> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> - <property> <name>tserver.cache.data.size</name> <value>128M</value> <description>Size of on-heap block cache for data blocks.</description> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> - <property> <name>tserver.cache.index.size</name> <value>256M</value> <description>Size of on-heap block cache for index blocks.</description> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> - <property> <name>tserver.sort.buffer.size</name> <value>200M</value> <description>Amount of memory to use for sorting walogs when recovering from tserver failure.</description> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> - <property> <name>tserver.walog.max.size</name> <value>1G</value> <description>Maximum size of each write-ahead log.</description> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> - <property> <name>master.port.client</name> <value>9999</value> @@ -104,8 +111,9 @@ <value-attributes> <type>int</type> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> - <property> <name>trace.port.client</name> <value>12234</value> @@ -114,8 +122,9 @@ <value-attributes> <type>int</type> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> - <property> <name>tserver.port.client</name> <value>9997</value> @@ -123,8 +132,9 @@ <value-attributes> <type>int</type> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> - <property> <name>gc.port.client</name> <value>50092</value> @@ -133,8 +143,9 @@ <value-attributes> <type>int</type> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> - <property> <name>monitor.port.client</name> <value>50095</value> @@ -142,8 +153,9 @@ <value-attributes> <type>int</type> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> - <property> <name>monitor.port.log4j</name> <value>4560</value> @@ -152,8 +164,9 @@ <value-attributes> <type>int</type> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> - <property> <name>trace.user</name> <value>trace</value> @@ -163,8 +176,9 @@ <value-attributes> <overridable>false</overridable> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> - <property> <name>general.classpaths</name> <value> @@ -189,5 +203,7 @@ $HADOOP_PREFIX/share/hadoop/yarn/lib/jersey.*.jar <value-attributes> <type>content</type> </value-attributes> + <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/ed7c64ad/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/client.xml ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/client.xml b/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/client.xml index f1fa4de..3ecd24c 100644 --- a/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/client.xml +++ b/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/client.xml @@ -19,6 +19,5 @@ * limitations under the License. */ --> - <configuration> </configuration> http://git-wip-us.apache.org/repos/asf/ambari/blob/ed7c64ad/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/configuration/ams-env.xml ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/configuration/ams-env.xml b/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/configuration/ams-env.xml index 65b3208..086be60 100644 --- a/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/configuration/ams-env.xml +++ b/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/configuration/ams-env.xml @@ -17,7 +17,6 @@ ~ See the License for the specific language governing permissions and ~ limitations under the License. --> - <configuration supports_adding_forbidden="true"> <property> <name>ambari_metrics_user</name> @@ -29,6 +28,8 @@ <type>user</type> <overridable>false</overridable> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> <property> <name>metrics_collector_log_dir</name> @@ -38,6 +39,8 @@ <value-attributes> <type>directory</type> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> <property> <name>metrics_collector_pid_dir</name> @@ -47,6 +50,8 @@ <value-attributes> <type>directory</type> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> <property> <name>metrics_monitor_pid_dir</name> @@ -56,6 +61,8 @@ <value-attributes> <type>directory</type> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> <property> <name>metrics_monitor_log_dir</name> @@ -65,6 +72,8 @@ <value-attributes> <type>directory</type> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> <property> <name>metrics_collector_heapsize</name> @@ -74,6 +83,8 @@ <type>int</type> <unit>MB</unit> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> <property> <name>content</name> @@ -128,6 +139,7 @@ export AMS_COLLECTOR_OPTS="$AMS_COLLECTOR_OPTS $AMS_COLLECTOR_GC_OPTS" <value-attributes> <type>content</type> </value-attributes> + <on-ambari-upgrade add="false" change="true" delete="true"/> + <on-stack-upgrade add="true" change="true" delete="false"/> </property> - </configuration>
