You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by ak...@apache.org on 2015/11/11 11:57:53 UTC

[1/2] ignite git commit: IGNITE-1870 WIP on agg functions.

Repository: ignite
Updated Branches:
  refs/heads/ignite-843-rc1 cf9eddc78 -> 91ce6b57a


IGNITE-1870 WIP on agg functions.


Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/67c6d4ac
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/67c6d4ac
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/67c6d4ac

Branch: refs/heads/ignite-843-rc1
Commit: 67c6d4acebeafa7273b601de7e2cd02e5f0c3b54
Parents: 5200031
Author: Alexey Kuznetsov <ak...@apache.org>
Authored: Wed Nov 11 17:57:21 2015 +0700
Committer: Alexey Kuznetsov <ak...@apache.org>
Committed: Wed Nov 11 17:57:21 2015 +0700

----------------------------------------------------------------------
 .../src/main/js/controllers/sql-controller.js   | 78 ++++++++++++++++++--
 .../src/main/js/views/sql/chart-settings.jade   |  2 +-
 .../src/main/js/views/sql/sql.jade              |  2 +-
 3 files changed, 75 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ignite/blob/67c6d4ac/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 2eb38d5..48b0976 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
@@ -34,7 +34,7 @@ consoleModule.controller('sqlController',
 
     $scope.timeLineSpans = ['1', '5', '10', '15', '30'];
 
-    $scope.aggregateFxs = ['FIRST', 'LAST', 'MIN', 'MAX', 'AVG', 'SUM', 'COUNT'];
+    $scope.aggregateFxs = ['FIRST', 'LAST', 'MIN', 'MAX', 'SUM', 'AVG', 'COUNT'];
 
     $scope.modes = $common.mkOptions(['PARTITIONED', 'REPLICATED', 'LOCAL']);
 
@@ -913,6 +913,71 @@ consoleModule.controller('sqlController',
         return dflt;
     }
 
+    function _min(rows, idx, dflt) {
+        var min = _chartNumber(rows[0], idx, dflt);
+
+        _.forEach(rows, function (row) {
+            var v = _chartNumber(row, idx, dflt);
+
+            if (v < min)
+                min = v;
+        });
+
+        return min;
+    }
+
+    function _max(rows, idx, dflt) {
+        var max = _chartNumber(rows[0], idx, dflt);
+
+        _.forEach(rows, function (row) {
+            var v = _chartNumber(row, idx, dflt);
+
+            if (v > max)
+                max = v;
+        });
+
+        return max;
+    }
+
+    function _sum(rows, idx) {
+        var sum = 0;
+
+        _.forEach(rows, function (row) {
+            sum += _chartNumber(row, idx, 0);
+        });
+
+        return sum;
+    }
+
+    function _aggregate(rows, aggFx, idx, dflt) {
+        var len = rows.length;
+
+        switch (aggFx) {
+            case  'FIRST':
+                return _chartNumber(rows[0], idx, dflt);
+
+            case 'LAST':
+                return _chartNumber(rows[len - 1], idx, dflt);
+
+            case 'MIN':
+                return _min(rows, idx, dflt);
+
+            case 'MAX':
+                return _max(rows, idx, dflt);
+
+            case 'SUM':
+                return _sum(rows, idx);
+
+            case 'AVG':
+                return len > 0 ? _sum(idx) / len : 0;
+
+            case 'COUNT':
+                return len;
+        }
+
+        return 0;
+    }
+
     function _chartDatum(paragraph) {
         var datum = [];
 
@@ -920,8 +985,11 @@ consoleModule.controller('sqlController',
             paragraph.chartValCols.forEach(function (valCol) {
                 var index = 0;
                 var values = [];
+                var colIdx = valCol.value;
 
                 if (paragraph.chartTimeLineEnabled()) {
+                    var aggFx = valCol.aggFx;
+
                     if (paragraph.charts && paragraph.charts.length == 1)
                         datum = paragraph.charts[0].data;
 
@@ -937,7 +1005,7 @@ consoleModule.controller('sqlController',
 
                         values.push({
                             x: lastItem.tm,
-                            y: _chartNumber(lastItem.rows[0], valCol.value, index++)
+                            y: _aggregate(lastItem.rows[0], aggFx, colIdx, index++)
                         });
 
                         while (values.length > 0 && values[0].x < leftBound)
@@ -948,7 +1016,7 @@ consoleModule.controller('sqlController',
                             if (history.tm >= leftBound)
                                 values.push({
                                     x: history.tm,
-                                    y: _chartNumber(history.rows[0], valCol.value, index++)
+                                    y: _aggregate(history.rows, aggFx, colIdx, index++)
                                 });
                         });
 
@@ -964,7 +1032,7 @@ consoleModule.controller('sqlController',
                         var v = {
                             x: _chartNumber(row, xCol, index),
                             xLbl: _chartLabel(row, xCol, undefined),
-                            y: _chartNumber(row, valCol.value, index)
+                            y: _chartNumber(row, colIdx, index)
                         };
 
                         index++;
@@ -1043,7 +1111,7 @@ consoleModule.controller('sqlController',
         }
     }
 
-    $scope.applyChartTimeFrame = function (paragraph) {
+    $scope.applyChartSettings = function (paragraph) {
         _chartApplySettings(paragraph, true);
     };
 

http://git-wip-us.apache.org/repos/asf/ignite/blob/67c6d4ac/modules/control-center-web/src/main/js/views/sql/chart-settings.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/views/sql/chart-settings.jade b/modules/control-center-web/src/main/js/views/sql/chart-settings.jade
index f0943e3..5a1ceed 100644
--- a/modules/control-center-web/src/main/js/views/sql/chart-settings.jade
+++ b/modules/control-center-web/src/main/js/views/sql/chart-settings.jade
@@ -36,5 +36,5 @@
                 ul.chart-settings-columns-list(dnd-list='paragraph.chartValCols' dnd-drop='chartAcceptValColumn(paragraph, item)')
                     li(ng-repeat='col in paragraph.chartValCols track by $index')
                         .btn.btn-default.btn-chart-column(ng-style='chartColor($index)') {{col.label}}
-                            button.btn-chart-column-agg-fx.select-toggle(ng-show='paragraphTimeSpanVisible(paragraph)' ng-style='chartColor($index)' ng-model='col.aggFx' placeholder='...' bs-select bs-options='item for item in aggregateFxs' data-container='false' tabindex='-1')
+                            button.btn-chart-column-agg-fx.select-toggle(ng-change='applyChartSettings(paragraph)' ng-show='paragraphTimeSpanVisible(paragraph)' ng-style='chartColor($index)' ng-model='col.aggFx' placeholder='...' bs-select bs-options='item for item in aggregateFxs' data-container='false' tabindex='-1')
                             i.fa.fa-close(ng-click='chartRemoveValColumn(paragraph, $index)')

http://git-wip-us.apache.org/repos/asf/ignite/blob/67c6d4ac/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 c6d47a3..25be312 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
@@ -49,7 +49,7 @@ mixin chart-settings(mdl)
                 a(ng-click='$event.stopPropagation()' bs-popover data-template-url='chart-settings' data-placement='bottom' data-auto-close='1' data-trigger='click') Chart settings
                 div(ng-show='paragraphTimeSpanVisible(paragraph)')
                     label Show
-                    button.select-manual-caret.btn.btn-default(ng-model='paragraph.timeLineSpan' ng-change='applyChartTimeFrame(paragraph)' bs-options='item for item in timeLineSpans' bs-select data-caret-html='<span class="caret"></span>')
+                    button.select-manual-caret.btn.btn-default(ng-model='paragraph.timeLineSpan' ng-change='applyChartSettings(paragraph)' bs-options='item for item in timeLineSpans' bs-select data-caret-html='<span class="caret"></span>')
                     label min
         .col-xs-4
             +result-toolbar


[2/2] ignite git commit: Merge remote-tracking branch 'origin/ignite-843-rc1' into ignite-843-rc1

Posted by ak...@apache.org.
Merge remote-tracking branch 'origin/ignite-843-rc1' into ignite-843-rc1


Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/91ce6b57
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/91ce6b57
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/91ce6b57

Branch: refs/heads/ignite-843-rc1
Commit: 91ce6b57a842310fa2849e9ec2efb938890d99d9
Parents: 67c6d4a cf9eddc
Author: Alexey Kuznetsov <ak...@apache.org>
Authored: Wed Nov 11 17:58:11 2015 +0700
Committer: Alexey Kuznetsov <ak...@apache.org>
Committed: Wed Nov 11 17:58:11 2015 +0700

----------------------------------------------------------------------
 .../src/main/js/controllers/common-module.js    |  2 +-
 .../main/js/controllers/metadata-controller.js  |  4 +--
 .../main/js/controllers/summary-controller.js   | 28 +++++++++++---------
 modules/control-center-web/src/main/js/db.js    |  2 +-
 .../js/helpers/generator/generator-common.js    |  2 +-
 .../main/js/helpers/generator/generator-java.js |  4 +--
 .../main/js/helpers/generator/generator-xml.js  |  2 +-
 .../src/main/js/views/includes/controls.jade    | 10 +++----
 8 files changed, 28 insertions(+), 26 deletions(-)
----------------------------------------------------------------------