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 2016/03/28 10:48:28 UTC

[48/50] [abbrv] ignite git commit: IGNITE-2875 WIP

IGNITE-2875 WIP


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

Branch: refs/heads/ignite-2875
Commit: 84f7557c5249f19ffa950512ec39c04a860c6604
Parents: 4f6e72e
Author: Andrey <an...@gridgain.com>
Authored: Mon Mar 28 08:41:42 2016 +0700
Committer: Andrey <an...@gridgain.com>
Committed: Mon Mar 28 08:41:42 2016 +0700

----------------------------------------------------------------------
 .../js/app/services/AgentMonitor.service.js     |  4 +-
 .../src/main/js/controllers/sql-controller.js   | 41 ++++++++-------
 .../src/main/js/serve/agent.js                  | 38 +++++++++-----
 .../src/main/js/serve/browser.js                | 52 +++++++++++---------
 4 files changed, 78 insertions(+), 57 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ignite/blob/84f7557c/modules/control-center-web/src/main/js/app/services/AgentMonitor.service.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/services/AgentMonitor.service.js b/modules/control-center-web/src/main/js/app/services/AgentMonitor.service.js
index 364e1db..590d72f 100644
--- a/modules/control-center-web/src/main/js/app/services/AgentMonitor.service.js
+++ b/modules/control-center-web/src/main/js/app/services/AgentMonitor.service.js
@@ -225,10 +225,10 @@ class IgniteAgentMonitor {
 
                 return res;
             })
-            .catch((errMsg) => {
+            .catch((err) => {
                 this._downloadAgentModal.show();
 
-                return this._$q.reject(errMsg);
+                return this._$q.reject(err);
             });
     }
 

http://git-wip-us.apache.org/repos/asf/ignite/blob/84f7557c/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 abae869..63dd31d 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
@@ -257,7 +257,7 @@ consoleModule.controller('sqlController', [
         var _refreshFn = function() {
             IgniteAgentMonitor.topology($scope.demo)
                 .then(function(clusters) {
-                    var caches = _.flattenDeep(clusters.map(function (cluster) { return cluster._caches; }));
+                    var caches = _.flattenDeep(clusters.map(function (cluster) { return cluster.caches; }));
 
                     $scope.caches = _.sortBy(_.uniq(_.reject(caches, { mode: 'LOCAL' }), function (cache) {
                         return _mask(cache.name);
@@ -831,7 +831,7 @@ consoleModule.controller('sqlController', [
 
                     _showLoading(paragraph, false);
 
-                    if (res.last)
+                    if (res.queryId === null)
                         delete paragraph.queryId;
                 })
                 .catch(function (errMsg) {
@@ -1502,28 +1502,31 @@ consoleModule.controller('sqlController', [
 
             $scope.metadata = [];
 
-        IgniteAgentMonitor.metadata($scope.demo)
-            .then(function (metadata) {
-                $scope.metadata = _.sortBy(_.filter(metadata, function (meta) {
-                    var cache = _.find($scope.caches, { name: meta.cacheName });
+            IgniteAgentMonitor.metadata($scope.demo)
+                .then(function (metadata) {
+                    $scope.metadata = _.sortBy(_.filter(metadata, function (meta) {
+                        var cache = _.find($scope.caches, { name: meta.cacheName });
 
-                        if (cache) {
-                            meta.name = (cache.sqlSchema ? cache.sqlSchema : '"' + meta.cacheName + '"') + '.' + meta.typeName;
+                            if (cache) {
+                                meta.name = (cache.sqlSchema ? cache.sqlSchema : '"' + meta.cacheName + '"') + '.' + meta.typeName;
 
-                            meta.displayMame = _mask(meta.cacheName) + '.' + meta.typeName;
+                                meta.displayMame = _mask(meta.cacheName) + '.' + meta.typeName;
 
-                            if (cache.sqlSchema)
-                                meta.children.unshift({type: 'plain', name: 'sqlSchema: ' + cache.sqlSchema});
+                                if (cache.sqlSchema)
+                                    meta.children.unshift({type: 'plain', name: 'sqlSchema: ' + cache.sqlSchema});
 
-                            meta.children.unshift({type: 'plain', name: 'mode: ' + cache.mode});
-                        }
+                                meta.children.unshift({type: 'plain', name: 'mode: ' + cache.mode});
+                            }
 
-                    return cache;
-                }), 'name');
-            })
-            .finally(function () {
-                $loading.finish('loadingCacheMetadata');
-            });
+                        return cache;
+                    }), 'name');
+                })
+                .catch(function (err) {
+                    console.log(err);
+                })
+                .finally(function () {
+                    $loading.finish('loadingCacheMetadata');
+                });
         };
 
         $scope.showResultQuery = function (paragraph) {

http://git-wip-us.apache.org/repos/asf/ignite/blob/84f7557c/modules/control-center-web/src/main/js/serve/agent.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/serve/agent.js b/modules/control-center-web/src/main/js/serve/agent.js
index 2966d5c..ce04482 100644
--- a/modules/control-center-web/src/main/js/serve/agent.js
+++ b/modules/control-center-web/src/main/js/serve/agent.js
@@ -140,7 +140,7 @@ module.exports.factory = function(_, ws, fs, path, JSZip, socketio, apacheIgnite
         executeRest(cmd) {
             const params = {cmd: cmd._name};
 
-            for (const param of this._params)
+            for (const param of cmd._params)
                 params[param.key] = param.value;
 
             return new Promise((resolve, reject) => {
@@ -216,7 +216,7 @@ module.exports.factory = function(_, ws, fs, path, JSZip, socketio, apacheIgnite
                 .addParam('attr', attr !== false)
                 .addParam('mtr', !!mtr);
 
-            this.executeRest(cmd);
+            return this.executeRest(cmd);
         }
 
         /**
@@ -226,12 +226,10 @@ module.exports.factory = function(_, ws, fs, path, JSZip, socketio, apacheIgnite
          * @private
          */
         static _onQueryResult(res) {
-            const queryId = res === null && res["last"] ? null : queryId;
-
             return {
-                meta: res['fieldsMetadata'],
-                rows: res['items'],
-                queryId
+                meta: res.fieldsMetadata,
+                rows: res.items,
+                queryId: res.last ? null : res.queryId
             }
         }
 
@@ -246,11 +244,11 @@ module.exports.factory = function(_, ws, fs, path, JSZip, socketio, apacheIgnite
         fieldsQuery(demo, cacheName, query, pageSize) {
             var cmd = new Command(demo, 'qryfldexe')
                 .addParam('cacheName', cacheName)
-                .addParam('query', query)
+                .addParam('qry', query)
                 .addParam('pageSize', pageSize);
 
-            this.executeRest(cmd)
-                .then(this._onQueryResult);
+            return this.executeRest(cmd)
+                .then(Agent._onQueryResult);
         }
 
         /**
@@ -265,8 +263,24 @@ module.exports.factory = function(_, ws, fs, path, JSZip, socketio, apacheIgnite
                 .addParam('cacheName', cacheName)
                 .addParam('pageSize', pageSize);
 
-            this.executeRest(cmd)
-                .then(this._onQueryResult);
+            return this.executeRest(cmd)
+                .then(Agent._onQueryResult);
+        }
+
+
+        /**
+         * @param {Boolean} demo Is need run command on demo node.
+         * @param {int} queryId Query Id.
+         * @param {int} pageSize Page size.
+         * @returns {Promise}
+         */
+        queryFetch(demo, queryId, pageSize) {
+            var cmd = new Command(demo, 'qryfetch')
+                .addParam('qryId', queryId)
+                .addParam('pageSize', pageSize);
+
+            return this.executeRest(cmd)
+                .then(Agent._onQueryResult);
         }
 
         /**

http://git-wip-us.apache.org/repos/asf/ignite/blob/84f7557c/modules/control-center-web/src/main/js/serve/browser.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/serve/browser.js b/modules/control-center-web/src/main/js/serve/browser.js
index 465f75f..c269d7d 100644
--- a/modules/control-center-web/src/main/js/serve/browser.js
+++ b/modules/control-center-web/src/main/js/serve/browser.js
@@ -78,7 +78,7 @@ module.exports.factory = (_, socketio, apacheIgnite, agentMgr, configure) => {
                     agentMgr.findAgent(user._id)
                         .then((agent) => agent.topology(demo, attr, mtr))
                         .then((clusters) => cb(null, clusters))
-                        .catch((errMsg) => cb(errMsg));
+                        .catch((err) => cb(err));
                 });
 
                 // Close query on node.
@@ -90,7 +90,7 @@ module.exports.factory = (_, socketio, apacheIgnite, agentMgr, configure) => {
                             return cache.__createPromise(cache._createCommand('qrycls').addParam('qryId', args.queryId));
                         })
                         .then(() => cb())
-                        .catch((errMsg) => cb(errMsg));
+                        .catch((err) => cb(err));
                 });
 
                 // Execute query on node and return first page to browser.
@@ -103,43 +103,47 @@ module.exports.factory = (_, socketio, apacheIgnite, agentMgr, configure) => {
                             return agent.fieldsQuery(args.demo, args.cacheName, args.query, args.pageSize);
                         })
                         .then((res) => cb(null, res))
-                        .catch((errMsg) => cb(errMsg));
+                        .catch((err) => cb(err));
                 });
 
                 // Fetch next page for query and return result to browser.
                 socket.on('node:query:fetch', (args, cb) => {
                     agentMgr.findAgent(user._id)
-                        .then((agent) => {
-                            const cache = agent.ignite(args.demo).cache(args.cacheName);
-
-                            const cmd = cache._createCommand('qryfetch')
-                                .addParam('qryId', args.queryId)
-                                .addParam('pageSize', args.pageSize);
-
-                            return cache.__createPromise(cmd);
-                        })
-                        .then((page) => cb(null, {
-                            rows: page.items,
-                            last: page === null || page.last
-                        }))
-                        .catch((errMsg) => cb(errMsg));
+                        .then((agent) => agent.queryFetch(args.demo, args.queryId, args.pageSize))
+                        .then((res) => cb(null, res))
+                        .catch((err) => cb(err));
                 });
 
                 // Execute query on node and return full result to browser.
                 socket.on('node:query:getAll', (args, cb) => {
+                    // Set page size for query.
+                    const pageSize = 1024;
+
                     agentMgr.findAgent(user._id)
                         .then((agent) => {
-                            // Create sql query.
-                            const qry = args.type === 'SCAN' ? new ScanQuery() : new SqlFieldsQuery(args.query);
+                            if (args.type === 'SCAN')
+                                return agent.scan(args.demo, args.cacheName, pageSize);
+
+                            return agent.fieldsQuery(args.demo, args.cacheName, args.query, pageSize);
+                        })
+                        .then((res) => {
+                            const fetchResult = (fullRes) => {
+                                if (fullRes.last)
+                                    return fullRes;
+
+                                return agent.queryFetch(args.demo, args.queryId, pageSize)
+                                    .then((res) => {
+                                        fullRes.rows = fullRes.rows.concat(res.rows);
 
-                            // Set page size for query.
-                            qry.setPageSize(1024);
+                                        fullRes.last = res.last;
 
-                            const cursor = agent.ignite(args.demo).cache(args.cacheName).query(qry);
+                                        return fetchResult(fullRes);
+                                    })
+                            };
 
-                            return cursor.getAll()
-                                .then((rows) => cb(null, {meta: cursor.fieldsMetadata(), rows}));
+                            return fetchResult(res);
                         })
+                        .then((res) => cb(null, res))
                         .catch((errMsg) => cb(errMsg));
                 });