Merge branch 'trunk' into branch-alerts-dev
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/c13730a0 Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/c13730a0 Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/c13730a0 Branch: refs/heads/trunk Commit: c13730a065646ba404c91f0f06819c71d669ebe7 Parents: 2f5c78e 866f5b2 Author: Jonathan Hurley <jhur...@hortonworks.com> Authored: Mon Sep 1 07:39:49 2014 -0400 Committer: Jonathan Hurley <jhur...@hortonworks.com> Committed: Mon Sep 1 07:39:49 2014 -0400 ---------------------------------------------------------------------- .../ambariViews/CreateViewInstanceCtrl.js | 5 +- .../controllers/ambariViews/ViewsListCtrl.js | 6 +- .../controllers/groups/GroupsCreateCtrl.js | 1 + .../controllers/users/UsersCreateCtrl.js | 1 + .../scripts/controllers/users/UsersShowCtrl.js | 21 +- .../admin-web/app/scripts/services/uiAlert.js | 21 +- .../app/views/ambariViews/listTable.html | 3 + .../ui/admin-web/app/views/leftNavbar.html | 2 +- ambari-client/groovy-client/pom.xml | 4 + .../ambari/groovy/client/AmbariClient.groovy | 506 +++++++++++++++++-- .../client/InvalidBlueprintException.groovy | 28 + .../InvalidHostGroupHostAssociation.groovy | 39 ++ .../resources/blueprints/hdp-multinode-default | 182 +++++++ .../resources/blueprints/hdp-singlenode-default | 133 +++++ .../resources/blueprints/lambda-architecture | 8 +- .../resources/blueprints/multi-node-hdfs-yarn | 4 +- .../resources/blueprints/single-node-hdfs-yarn | 2 +- .../groovy/client/AmbariBlueprintsTest.groovy | 95 ++++ .../ambari/groovy/client/AmbariHostsTest.groovy | 34 +- .../groovy/client/AmbariRecommendTest.groovy | 150 ++++++ .../groovy/client/AmbariServicesTest.groovy | 63 +++ .../ambari/groovy/client/TestResources.groovy | 2 + .../src/test/resources/blueprint-config.json | 61 +++ .../test/resources/hdp-multinode-default.json | 200 ++++++++ .../test/resources/hdp-multinode-default2.json | 164 ++++++ .../resources/multi-node-hdfs-yarn-config.json | 89 ++++ .../test/resources/multi-node-hdfs-yarn.json | 83 +++ .../server/api/handlers/DeleteHandler.java | 9 +- .../controller/AmbariActionExecutionHelper.java | 4 +- .../AmbariManagementControllerImpl.java | 12 +- .../controller/MaintenanceStateHelper.java | 49 +- .../internal/ComponentResourceProvider.java | 2 - .../internal/ConfigGroupResourceProvider.java | 2 +- .../internal/HostResourceProvider.java | 12 +- .../internal/ServiceResourceProvider.java | 12 +- .../controller/jmx/JMXPropertyProvider.java | 81 ++- .../orm/dao/ConfigGroupHostMappingDAO.java | 2 + .../apache/ambari/server/state/ConfigImpl.java | 17 +- .../server/state/cluster/ClusterImpl.java | 52 +- .../state/configgroup/ConfigGroupImpl.java | 41 +- .../HIVE/package/scripts/hive_client.py | 3 +- .../HIVE/package/scripts/hive_metastore.py | 3 +- .../HIVE/package/scripts/hive_server.py | 3 +- .../HIVE/package/scripts/mysql_server.py | 4 +- .../services/HIVE/package/scripts/params.py | 10 + .../resources/stacks/HDP/2.1/repos/repoinfo.xml | 14 +- .../server/api/handlers/DeleteHandlerTest.java | 36 +- .../controller/MaintenanceStateHelperTest.java | 34 +- .../controller/jmx/JMXPropertyProviderTest.java | 49 +- .../server/state/cluster/ClusterTest.java | 122 ++++- .../ambari/server/state/host/HostTest.java | 8 - .../HDP/0.1/services/MAPREDUCE/metainfo.xml | 6 + .../ambari/shell/commands/BasicCommands.java | 74 --- .../ambari/shell/commands/ClusterCommands.java | 3 +- .../ambari/shell/commands/ServiceCommands.java | 155 ++++++ .../apache/ambari/shell/completion/Service.java | 31 ++ .../configuration/ConverterConfiguration.java | 6 + .../shell/converter/ServiceConverter.java | 55 ++ .../ambari/shell/flash/InstallProgress.java | 2 +- .../shell/commands/ClusterCommandsTest.java | 5 +- .../shell/commands/ServiceCommandsTest.java | 70 +++ ambari-web/app/assets/licenses/NOTICE.txt | 4 +- ambari-web/app/config.js | 2 +- .../nameNode/step5_controller.js | 26 +- .../nameNode/step9_controller.js | 8 +- .../highAvailability/progress_controller.js | 23 + .../resourceManager/step4_controller.js | 11 +- .../security/security_progress_controller.js | 45 +- ambari-web/app/controllers/main/host/details.js | 22 +- ambari-web/app/controllers/main/service.js | 134 +++-- .../controllers/main/service/info/configs.js | 77 +-- .../main/service/reassign/step4_controller.js | 73 ++- .../app/controllers/wizard/step4_controller.js | 4 +- .../app/controllers/wizard/step6_controller.js | 22 +- .../app/controllers/wizard/step8_controller.js | 69 +-- ambari-web/app/messages.js | 16 +- ambari-web/app/mixins/common/serverValidator.js | 20 +- ambari-web/app/models/service_config.js | 5 + ambari-web/app/models/service_config_version.js | 12 +- ambari-web/app/models/stack_service.js | 10 +- ambari-web/app/styles/application.less | 14 +- .../common/configs/compare_property.hbs | 2 +- .../common/configs/config_history_flow.hbs | 32 +- .../configs/config_recommendation_popup.hbs | 28 + .../common/configs/overriddenProperty.hbs | 2 +- .../common/configs/service_config_category.hbs | 4 +- .../templates/main/dashboard/config_history.hbs | 8 +- .../main/dashboard/plus_button_filter.hbs | 2 +- ambari-web/app/templates/main/menu_item.hbs | 6 +- ambari-web/app/templates/wizard/step6.hbs | 27 +- .../wizard/step6/step6_issues_popup.hbs | 41 ++ ambari-web/app/templates/wizard/step7.hbs | 2 +- ambari-web/app/utils/ajax/ajax.js | 67 ++- .../views/common/configs/config_history_flow.js | 134 +++-- ambari-web/app/views/main/dashboard/widgets.js | 12 +- ambari-web/app/views/main/menu.js | 2 +- ambari-web/app/views/main/service.js | 1 + ambari-web/app/views/main/views/details.js | 28 + .../test/controllers/main/service_test.js | 254 ++++++++++ .../jquery.iframe-auto-height.plugin.1.9.5.js | 224 ++++++++ .../app/assets/data/resource/cluster_name.json | 12 + .../assets/data/resource/components_hosts.json | 16 + .../app/controllers/slider_apps_controller.js | 50 ++ .../ui/app/controllers/tooltip_controller.js | 19 + .../src/main/resources/ui/app/helpers/ajax.js | 2 + .../ui/app/mappers/slider_apps_mapper.js | 3 +- .../main/resources/ui/app/models/slider_app.js | 5 + .../src/main/resources/ui/app/routes/main.js | 12 + .../resources/ui/app/styles/application.less | 13 + .../resources/ui/app/templates/application.hbs | 1 + .../ui/app/templates/common/app_tooltip.hbs | 28 + .../ui/app/templates/slider_app/summary.hbs | 50 +- .../resources/ui/app/templates/slider_apps.hbs | 2 +- .../src/main/resources/ui/app/translations.js | 8 +- .../ui/app/views/slider_app/summary_view.js | 21 +- .../resources/ui/app/views/slider_apps_view.js | 18 +- .../slider/src/main/resources/ui/config.js | 2 + .../ui/vendor/scripts/common/bs-popover.min.js | 1 + 118 files changed, 3958 insertions(+), 673 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/c13730a0/ambari-server/src/main/java/org/apache/ambari/server/state/cluster/ClusterImpl.java ---------------------------------------------------------------------- diff --cc ambari-server/src/main/java/org/apache/ambari/server/state/cluster/ClusterImpl.java index b181399,06f46fe..0d4f6aa --- a/ambari-server/src/main/java/org/apache/ambari/server/state/cluster/ClusterImpl.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/state/cluster/ClusterImpl.java @@@ -1687,18 -1646,29 +1680,29 @@@ public class ClusterImpl implements Clu serviceConfigVersionResponse.setClusterName(getClusterName()); serviceConfigVersionResponse.setServiceName(serviceConfigEntity.getServiceName()); serviceConfigVersionResponse.setVersion(serviceConfigEntity.getVersion()); - serviceConfigVersionResponse.setCreateTime(serviceConfigEntity.getCreateTimestamp()); + serviceConfigVersionResponse.setCreateTime(serviceConfigEntity.getCreateTimestamp()); serviceConfigVersionResponse.setUserName(serviceConfigEntity.getUser()); serviceConfigVersionResponse.setNote(serviceConfigEntity.getNote()); - if (clusterConfigGroups != null) { - ConfigGroup configGroup = clusterConfigGroups.get(serviceConfigEntity.getGroupId()); + + Long groupId = serviceConfigEntity.getGroupId(); + + if (groupId != null) { + serviceConfigVersionResponse.setGroupId(groupId); + ConfigGroup configGroup = null; + if (clusterConfigGroups != null) { + configGroup = clusterConfigGroups.get(groupId); + } + if (configGroup != null) { - serviceConfigVersionResponse.setGroupId(configGroup.getId()); serviceConfigVersionResponse.setGroupName(configGroup.getName()); + } else { + serviceConfigVersionResponse.setGroupName("deleted"); } + } else { + serviceConfigVersionResponse.setGroupId(-1L); // -1 if no group + serviceConfigVersionResponse.setGroupName("default"); } - return serviceConfigVersionResponse; }