You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by al...@apache.org on 2015/12/28 20:31:25 UTC
ambari git commit: AMBARI-14509. Handle the case when UI call to
'Install Packages' action times out (alexantonenko)
Repository: ambari
Updated Branches:
refs/heads/branch-2.2 d37f8c7e5 -> c187a8299
AMBARI-14509. Handle the case when UI call to 'Install Packages' action times out (alexantonenko)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/c187a829
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/c187a829
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/c187a829
Branch: refs/heads/branch-2.2
Commit: c187a8299f35786b84489fbf3281674ba934186a
Parents: d37f8c7
Author: Alex Antonenko <hi...@gmail.com>
Authored: Mon Dec 28 21:30:41 2015 +0200
Committer: Alex Antonenko <hi...@gmail.com>
Committed: Mon Dec 28 21:30:41 2015 +0200
----------------------------------------------------------------------
.../main/admin/stack_and_upgrade_controller.js | 16 +++++++++++++++-
ambari-web/app/messages.js | 2 ++
.../admin/stack_upgrade/upgrade_version_box.hbs | 3 +++
.../admin/stack_upgrade/upgrade_version_box_view.js | 8 +++++++-
4 files changed, 27 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/c187a829/ambari-web/app/controllers/main/admin/stack_and_upgrade_controller.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/controllers/main/admin/stack_and_upgrade_controller.js b/ambari-web/app/controllers/main/admin/stack_and_upgrade_controller.js
index f77397b..483d90e 100644
--- a/ambari-web/app/controllers/main/admin/stack_and_upgrade_controller.js
+++ b/ambari-web/app/controllers/main/admin/stack_and_upgrade_controller.js
@@ -140,6 +140,10 @@ App.MainAdminStackAndUpgradeController = Em.Controller.extend(App.LocalStorage,
*/
requestInProgress: false,
/**
+ * @type {number} repo id, request for which is currently in progress
+ */
+ requestInProgressRepoId: null,
+ /**
* @type {boolean} true while no updated upgrade info is loaded after retry
*/
isRetryPending: false,
@@ -603,7 +607,7 @@ App.MainAdminStackAndUpgradeController = Em.Controller.extend(App.LocalStorage,
* @param {object} data
*/
upgradeErrorCallback: function (data) {
- var header = Em.I18n.t('admin.stackVersions.upgrade.start.fail.title');
+ var header = Em.I18n.t('admin.stackVersions.upgrade.installPackage.fail.title');
var body = "";
if(data && data.responseText){
try {
@@ -611,6 +615,9 @@ App.MainAdminStackAndUpgradeController = Em.Controller.extend(App.LocalStorage,
body = json.message;
} catch (err) {}
}
+ if(data && data.statusText == "timeout") {
+ body = Em.I18n.t('admin.stackVersions.upgrade.installPackage.fail.timeout');
+ }
App.showAlertPopup(header, body);
},
@@ -1147,6 +1154,8 @@ App.MainAdminStackAndUpgradeController = Em.Controller.extend(App.LocalStorage,
*/
installRepoVersion: function (repo) {
this.set('requestInProgress', true);
+ this.set('requestInProgressRepoId', repo.get('id'));
+
var data = {
ClusterStackVersions: {
stack: repo.get('stackVersionType'),
@@ -1162,6 +1171,7 @@ App.MainAdminStackAndUpgradeController = Em.Controller.extend(App.LocalStorage,
success: 'installRepoVersionSuccess',
callback: function() {
this.sender.set('requestInProgress', false);
+ this.sender.set('requestInProgressRepoId', null);
}
});
},
@@ -1300,6 +1310,10 @@ App.MainAdminStackAndUpgradeController = Em.Controller.extend(App.LocalStorage,
* @method installStackVersionSuccess
*/
installRepoVersionSuccess: function (data, opt, params) {
+ if(data && data.statusText == "timeout") {
+ App.showAlertPopup(Em.I18n.t('admin.stackVersions.upgrade.installPackage.fail.title'), Em.I18n.t('admin.stackVersions.upgrade.installPackage.fail.timeout'));
+ return false;
+ }
var version = App.RepositoryVersion.find(params.id);
App.db.set('repoVersionInstall', 'id', [data.Requests.id]);
App.clusterStatus.setClusterStatus({
http://git-wip-us.apache.org/repos/asf/ambari/blob/c187a829/ambari-web/app/messages.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/messages.js b/ambari-web/app/messages.js
index 1ad0f6a..7b409c6 100644
--- a/ambari-web/app/messages.js
+++ b/ambari-web/app/messages.js
@@ -1461,6 +1461,8 @@ Em.I18n.translations = {
'admin.stackVersions.filter.upgrading': "Upgrade/Downgrade In Process ({0})",
'admin.stackVersions.filter.upgraded': "Ready to Finalize ({0})",
'admin.stackVersions.upgrade.start.fail.title':'Upgrade could not be started',
+ 'admin.stackVersions.upgrade.installPackage.fail.title':'Packages could not be installed',
+ 'admin.stackVersions.upgrade.installPackage.fail.timeout':'Request timed out.',
'admin.stackVersions.editRepositories.info': 'Provide Base URLs for the Operating Systems you are configuring. Uncheck all other Operating Systems.',
'admin.stackVersions.editRepositories.validation.warning': 'Some of the repositories failed validation. Make changes to the base url or skip validation if you are sure that urls are correct',
http://git-wip-us.apache.org/repos/asf/ambari/blob/c187a829/ambari-web/app/templates/main/admin/stack_upgrade/upgrade_version_box.hbs
----------------------------------------------------------------------
diff --git a/ambari-web/app/templates/main/admin/stack_upgrade/upgrade_version_box.hbs b/ambari-web/app/templates/main/admin/stack_upgrade/upgrade_version_box.hbs
index 96d4544..1bc81c5 100644
--- a/ambari-web/app/templates/main/admin/stack_upgrade/upgrade_version_box.hbs
+++ b/ambari-web/app/templates/main/admin/stack_upgrade/upgrade_version_box.hbs
@@ -71,6 +71,9 @@
}}
{{/if}}
{{/if}}
+ {{#if view.stateElement.isSpinner}}
+ <div {{bindAttr class="view.stateElement.class"}}></div>
+ {{/if}}
</div>
<div class="hosts-section">
http://git-wip-us.apache.org/repos/asf/ambari/blob/c187a829/ambari-web/app/views/main/admin/stack_upgrade/upgrade_version_box_view.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/views/main/admin/stack_upgrade/upgrade_version_box_view.js b/ambari-web/app/views/main/admin/stack_upgrade/upgrade_version_box_view.js
index 22a578a..2a0b170 100644
--- a/ambari-web/app/views/main/admin/stack_upgrade/upgrade_version_box_view.js
+++ b/ambari-web/app/views/main/admin/stack_upgrade/upgrade_version_box_view.js
@@ -116,6 +116,10 @@ App.UpgradeVersionBoxView = Em.View.extend({
text: Em.I18n.t('admin.stackVersions.version.installNow'),
action: 'installRepoVersionConfirmation'
},
+ 'LOADING': {
+ isSpinner: true,
+ class: 'spinner'
+ },
'INSTALLING': {
iconClass: 'icon-cog',
isLink: true,
@@ -143,6 +147,7 @@ App.UpgradeVersionBoxView = Em.View.extend({
stateElement: function () {
var currentVersion = this.get('controller.currentVersion');
var statePropertiesMap = this.get('statePropertiesMap');
+ var requestInProgressRepoId = this.get('controller.requestInProgressRepoId');
var status = this.get('content.status');
var element = Em.Object.create({
status: status,
@@ -159,7 +164,7 @@ App.UpgradeVersionBoxView = Em.View.extend({
element.setProperties(statePropertiesMap[status]);
}
else if (status === 'INIT') {
- element.setProperties(statePropertiesMap[status]);
+ requestInProgressRepoId && requestInProgressRepoId == this.get('content.id') ? element.setProperties(statePropertiesMap['LOADING']) : element.setProperties(statePropertiesMap[status]);
element.set('isDisabled', !App.isAccessible('ADMIN') || this.get('controller.requestInProgress') || isInstalling);
}
else if ((status === 'INSTALLED' && !this.get('isUpgrading')) ||
@@ -223,6 +228,7 @@ App.UpgradeVersionBoxView = Em.View.extend({
'controller.isDowngrade',
'isUpgrading',
'controller.requestInProgress',
+ 'controller.requestInProgressRepoId',
'parentView.repoVersions.@each.status'
),