You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by on...@apache.org on 2014/11/05 19:03:05 UTC
git commit: AMBARI-8159. RM info not showing after shutting down
active RM (onechiporenko)
Repository: ambari
Updated Branches:
refs/heads/trunk 776743beb -> c68cf2fdc
AMBARI-8159. RM info not showing after shutting down active RM (onechiporenko)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/c68cf2fd
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/c68cf2fd
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/c68cf2fd
Branch: refs/heads/trunk
Commit: c68cf2fdc5c96521fc39e5b609278bdb40a18c25
Parents: 776743b
Author: Oleg Nechiporenko <on...@apache.org>
Authored: Wed Nov 5 19:06:07 2014 +0200
Committer: Oleg Nechiporenko <on...@apache.org>
Committed: Wed Nov 5 20:02:47 2014 +0200
----------------------------------------------------------------------
ambari-web/app/assets/test/tests.js | 1 +
.../app/mappers/service_metrics_mapper.js | 3 +-
.../test/mappers/service_metrics_mapper_test.js | 64 ++++++++++++++++++++
3 files changed, 67 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/c68cf2fd/ambari-web/app/assets/test/tests.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/assets/test/tests.js b/ambari-web/app/assets/test/tests.js
index fd565f1..b6cc4c0 100644
--- a/ambari-web/app/assets/test/tests.js
+++ b/ambari-web/app/assets/test/tests.js
@@ -106,6 +106,7 @@ var files = ['test/init_model_test',
'test/mappers/server_data_mapper_test',
'test/mappers/hosts_mapper_test',
'test/mappers/service_mapper_test',
+ 'test/mappers/service_metrics_mapper_test',
'test/mappers/status_mapper_test',
'test/mappers/users_mapper_test',
'test/mappers/stack_mapper_test',
http://git-wip-us.apache.org/repos/asf/ambari/blob/c68cf2fd/ambari-web/app/mappers/service_metrics_mapper.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/mappers/service_metrics_mapper.js b/ambari-web/app/mappers/service_metrics_mapper.js
index 0ff2177..bdab96b 100644
--- a/ambari-web/app/mappers/service_metrics_mapper.js
+++ b/ambari-web/app/mappers/service_metrics_mapper.js
@@ -490,7 +490,8 @@ App.serviceMetricsMapper = App.QuickDataMapper.create({
// if YARN has two host components, ACTIVE one should be first in component.host_components array for proper metrics mapping
if (component.host_components.length === 2) {
var activeRM = component.host_components.findProperty('HostRoles.ha_state', 'ACTIVE');
- var standbyRM = component.host_components.findProperty('HostRoles.ha_state', 'STANDBY');
+ // if "second" RM isn't STARTED his ha_status is null (not STANDBY)
+ var standbyRM = component.host_components.filter(function(host_component) {return host_component.HostRoles.ha_state !== 'ACTIVE';})[0];
if (activeRM && standbyRM) {
component.host_components = [activeRM, standbyRM];
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/c68cf2fd/ambari-web/test/mappers/service_metrics_mapper_test.js
----------------------------------------------------------------------
diff --git a/ambari-web/test/mappers/service_metrics_mapper_test.js b/ambari-web/test/mappers/service_metrics_mapper_test.js
new file mode 100644
index 0000000..e888325
--- /dev/null
+++ b/ambari-web/test/mappers/service_metrics_mapper_test.js
@@ -0,0 +1,64 @@
+/**
+ * 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.
+ */
+
+
+var App = require('app');
+
+describe('App.serviceMetricsMapper', function () {
+
+ describe('#yarnMapper', function () {
+
+ it('should set ACTIVE RM first in any cases (if RM HA enabled)', function() {
+ var item = {
+ components: [
+ {
+ ServiceComponentInfo: {
+ component_name: 'RESOURCEMANAGER'
+ },
+ host_components: [
+ {
+ HostRoles: {
+ ha_state: null,
+ host_name : 'h1'
+ }
+ },
+ {
+ HostRoles: {
+ ha_state: 'ACTIVE',
+ host_name : 'h2'
+ },
+ metrics: {
+ yarn: {
+ Queue: {
+ root: {
+ default: {}
+ }
+ }
+ }
+ }
+ }
+ ]
+ }
+ ]
+ },
+ result = App.serviceMetricsMapper.yarnMapper(item);
+ expect(result.queue).to.equal("{\"root\":{\"default\":{}}}");
+ });
+
+ });
+
+});