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
----------------------------------------------------------------------