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));
});