You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by an...@apache.org on 2015/09/09 12:47:37 UTC
[1/2] ignite git commit: # GG-843 Added refresh query.
Repository: ignite
Updated Branches:
refs/heads/ignite-843 8cd3dc970 -> e99417308
# GG-843 Added refresh query.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/7821e217
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/7821e217
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/7821e217
Branch: refs/heads/ignite-843
Commit: 7821e217c74857e31030b3ed31d70dcb8f5c1801
Parents: 955fe0c
Author: Andrey <an...@gridgain.com>
Authored: Wed Sep 9 17:48:12 2015 +0700
Committer: Andrey <an...@gridgain.com>
Committed: Wed Sep 9 17:48:12 2015 +0700
----------------------------------------------------------------------
.../src/main/js/controllers/sql-controller.js | 92 ++++++++++++++++----
modules/control-center-web/src/main/js/db.js | 2 +-
.../src/main/js/views/sql/paragraph-rate.jade | 2 +-
.../src/main/js/views/sql/sql.jade | 2 +-
4 files changed, 80 insertions(+), 18 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/7821e217/modules/control-center-web/src/main/js/controllers/sql-controller.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/controllers/sql-controller.js b/modules/control-center-web/src/main/js/controllers/sql-controller.js
index 17fc90a..d883d26 100644
--- a/modules/control-center-web/src/main/js/controllers/sql-controller.js
+++ b/modules/control-center-web/src/main/js/controllers/sql-controller.js
@@ -16,8 +16,8 @@
*/
// Controller for SQL notebook screen.
-controlCenterModule.controller('sqlController', ['$scope', '$window','$controller', '$http', '$timeout', '$common', '$confirm',
- function ($scope, $window, $controller, $http, $timeout, $common, $confirm) {
+controlCenterModule.controller('sqlController', ['$scope', '$window','$controller', '$http', '$timeout', '$common', '$confirm', '$interval',
+ function ($scope, $window, $controller, $http, $timeout, $common, $confirm, $interval) {
// Initialize the super class and extend it.
angular.extend(this, $controller('agent-download', {$scope: $scope}));
$scope.agentGoal = 'execute sql statements';
@@ -36,9 +36,9 @@ controlCenterModule.controller('sqlController', ['$scope', '$window','$controlle
];
$scope.timeUnit = [
- {value: 's', label: 'seconds'},
- {value: 'm', label: 'minutes'},
- {value: 'h', label: 'hours'}
+ {value: 1000, label: 'seconds', short: 's'},
+ {value: 60000, label: 'minutes', short: 'm'},
+ {value: 3600000, label: 'hours', short: 'h'}
];
$scope.exportDropdown = [{ 'text': 'Export all', 'click': 'exportAll(paragraph)'}];
@@ -201,8 +201,8 @@ controlCenterModule.controller('sqlController', ['$scope', '$window','$controlle
disabledSystemColumns: false,
rate: {
value: 1,
- unit: 'm',
- executed: false
+ unit: 60000,
+ installed: false
}
};
@@ -335,19 +335,37 @@ controlCenterModule.controller('sqlController', ['$scope', '$window','$controlle
}
};
+ var _executeRefresh = function (paragraph) {
+ $http.post('/agent/query', paragraph.queryArgs)
+ .success(_processQueryResult(paragraph))
+ .error(function (errMsg) {
+ paragraph.errMsg = errMsg;
+ });
+ };
+
$scope.execute = function (paragraph) {
_saveNotebook();
- $http.post('/agent/query', {query: paragraph.query, pageSize: paragraph.pageSize, cacheName: paragraph.cache.name})
- .success(_processQueryResult(paragraph))
+ paragraph.queryArgs = { query: paragraph.query, pageSize: paragraph.pageSize, cacheName: paragraph.cache.name };
+
+ $http.post('/agent/query', paragraph.queryArgs)
+ .success(function (res) {
+ _processQueryResult(paragraph)(res);
+
+ _tryStartRefresh(paragraph);
+ })
.error(function (errMsg) {
paragraph.errMsg = errMsg;
+
+ $scope.stopRefresh(paragraph);
});
};
$scope.explain = function (paragraph) {
_saveNotebook();
+ _cancelRefresh();
+
$http.post('/agent/query', {query: 'EXPLAIN ' + paragraph.query, pageSize: paragraph.pageSize, cacheName: paragraph.cache.name})
.success(_processQueryResult(paragraph))
.error(function (errMsg) {
@@ -358,6 +376,8 @@ controlCenterModule.controller('sqlController', ['$scope', '$window','$controlle
$scope.scan = function (paragraph) {
_saveNotebook();
+ _cancelRefresh();
+
$http.post('/agent/scan', {pageSize: paragraph.pageSize, cacheName: paragraph.cache.name})
.success(_processQueryResult(paragraph))
.error(function (errMsg) {
@@ -450,22 +470,64 @@ controlCenterModule.controller('sqlController', ['$scope', '$window','$controlle
};
$scope.rateAsString = function (paragraph) {
- if (paragraph.rate && paragraph.rate.executed)
- return " " + paragraph.rate.value + paragraph.rate.unit;
+ if (paragraph.rate && paragraph.rate.installed) {
+ var idx = _.findIndex($scope.timeUnit, function (unit) {
+ return unit.value == paragraph.rate.unit;
+ });
+
+ if (idx >= 0)
+ return " " + paragraph.rate.value + $scope.timeUnit[idx].short;
+
+ paragraph.rate.installed = false;
+ }
return "";
};
+ var _cancelRefresh = function (paragraph) {
+ if (paragraph.rate && paragraph.rate.stopTime) {
+ delete paragraph.queryArgs;
+
+ paragraph.rate.installed = false;
+
+ $interval.cancel(paragraph.rate.stopTime);
+
+ delete paragraph.rate.stopTime;
+ }
+ };
+
+ var _tryStopRefresh = function (paragraph) {
+ if (paragraph.rate && paragraph.rate.stopTime) {
+ $interval.cancel(paragraph.rate.stopTime);
+
+ delete paragraph.rate.stopTime;
+ }
+ };
+
+ var _tryStartRefresh = function (paragraph) {
+ _tryStopRefresh(paragraph);
+
+ if (paragraph.rate && paragraph.rate.installed && paragraph.queryArgs) {
+ _executeRefresh(paragraph);
+
+ var delay = paragraph.rate.value * paragraph.rate.unit;
+
+ paragraph.rate.stopTime = $interval(_executeRefresh, delay, 0, false, paragraph);
+ }
+ };
+
$scope.startRefresh = function (paragraph, value, unit) {
- paragraph.rate = { value: value, unit: unit, executed: true };
+ paragraph.rate.value = value;
+ paragraph.rate.unit = unit;
+ paragraph.rate.installed = true;
- //TODO IGNITE-843 Start timer.
+ _tryStartRefresh(paragraph);
};
$scope.stopRefresh = function (paragraph) {
- paragraph.rate.executed = false;
+ paragraph.rate.installed = false;
- //TODO IGNITE-843 Stop timer.
+ _tryStopRefresh(paragraph);
};
$scope.getter = function (value) {
http://git-wip-us.apache.org/repos/asf/ignite/blob/7821e217/modules/control-center-web/src/main/js/db.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/db.js b/modules/control-center-web/src/main/js/db.js
index 9ec588e..46725cf 100644
--- a/modules/control-center-web/src/main/js/db.js
+++ b/modules/control-center-web/src/main/js/db.js
@@ -358,7 +358,7 @@ var NotebookSchema = new Schema({
},
rate: {
value: Number,
- unit: {type: String, enum: ['s', 'm', 'h']}
+ unit: Number
}
}]
});
http://git-wip-us.apache.org/repos/asf/ignite/blob/7821e217/modules/control-center-web/src/main/js/views/sql/paragraph-rate.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/views/sql/paragraph-rate.jade b/modules/control-center-web/src/main/js/views/sql/paragraph-rate.jade
index df54ad3..f79f12b 100644
--- a/modules/control-center-web/src/main/js/views/sql/paragraph-rate.jade
+++ b/modules/control-center-web/src/main/js/views/sql/paragraph-rate.jade
@@ -22,7 +22,7 @@
form(name='popoverForm')
.form-group(style='margin: 0; padding: 5px')
.col-sm-4(style='padding: 0')
- input.form-control(id='paragraph-rate' ng-init='value = paragraph.rate.value' ng-model='value' type='number' required auto-focus)
+ input.form-control(id='paragraph-rate' ng-init='value = paragraph.rate.value' ng-model='value' type='number' min='1' required auto-focus)
.col-sm-8(style='padding-left: 5px; padding-right: 0')
button.form-control(id='paragraph-unit' ng-init='unit = paragraph.rate.unit' ng-model='unit' required placeholder='Time unit' bs-select bs-options='item.value as item.label for item in timeUnit' data-container='false' tabindex='0')
.form-actions(style='margin-top: 30px; padding: 5px')
http://git-wip-us.apache.org/repos/asf/ignite/blob/7821e217/modules/control-center-web/src/main/js/views/sql/sql.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/views/sql/sql.jade b/modules/control-center-web/src/main/js/views/sql/sql.jade
index 39ef592..9fb12af 100644
--- a/modules/control-center-web/src/main/js/views/sql/sql.jade
+++ b/modules/control-center-web/src/main/js/views/sql/sql.jade
@@ -101,7 +101,7 @@ block container
a.btn.btn-primary(ng-disabled='!actionAvailable(paragraph, false)' ng-click='actionAvailable(paragraph, false) ? scan(paragraph): ""' data-placement='bottom' bs-tooltip data-title='{{actionTooltip(paragraph, "execute scan", false)}}') Scan
.pull-right
label Refresh rate:
- button.btn.btn-default.fa.fa-clock-o.tipLabel(ng-class='{"btn-info": paragraph.rate && paragraph.rate.executed}' bs-popover data-template-url='rate' data-placement='left' data-auto-close='1' data-trigger='click') {{rateAsString(paragraph)}}
+ button.btn.btn-default.fa.fa-clock-o.tipLabel(ng-class='{"btn-info": paragraph.rate && paragraph.rate.installed}' bs-popover data-template-url='rate' data-placement='left' data-auto-close='1' data-trigger='click') {{rateAsString(paragraph)}}
label.tipLabel Page size:
button.btn.btn-default.base-control.tipLabel(ng-model='paragraph.pageSize' bs-options='item for item in pageSizes' bs-select style='margin-right: 0')
label(style='margin-left: 10px')
[2/2] ignite git commit: Merge remote-tracking branch
'origin/ignite-843' into ignite-843
Posted by an...@apache.org.
Merge remote-tracking branch 'origin/ignite-843' into ignite-843
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/e9941730
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/e9941730
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/e9941730
Branch: refs/heads/ignite-843
Commit: e994173080df6252c3b376a47723d674c1751ba7
Parents: 7821e21 8cd3dc9
Author: Andrey <an...@gridgain.com>
Authored: Wed Sep 9 17:48:31 2015 +0700
Committer: Andrey <an...@gridgain.com>
Committed: Wed Sep 9 17:48:31 2015 +0700
----------------------------------------------------------------------
.../main/js/controllers/caches-controller.js | 2 +-
.../src/main/js/controllers/common-module.js | 27 +++++++++++++-------
.../main/js/controllers/metadata-controller.js | 14 ++++++----
.../main/js/controllers/profile-controller.js | 2 +-
.../src/main/js/controllers/sql-controller.js | 4 +--
.../src/main/js/public/stylesheets/style.scss | 4 +++
.../src/main/js/views/configuration/caches.jade | 2 +-
.../main/js/views/configuration/clusters.jade | 2 +-
.../js/views/configuration/metadata-load.jade | 6 ++---
.../main/js/views/configuration/metadata.jade | 2 +-
.../src/main/js/views/includes/controls.jade | 2 +-
.../main/js/views/templates/agent-download.jade | 1 +
.../src/main/js/views/templates/layout.jade | 2 ++
13 files changed, 45 insertions(+), 25 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/e9941730/modules/control-center-web/src/main/js/controllers/sql-controller.js
----------------------------------------------------------------------