You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tez.apache.org by zh...@apache.org on 2017/03/28 19:48:11 UTC
[30/50] [abbrv] tez git commit: TEZ-3642. Tez UI: Auto-refresh is not
stopping when DAG is the main entity (sree)
TEZ-3642. Tez UI: Auto-refresh is not stopping when DAG is the main entity (sree)
Project: http://git-wip-us.apache.org/repos/asf/tez/repo
Commit: http://git-wip-us.apache.org/repos/asf/tez/commit/af0d4d7c
Tree: http://git-wip-us.apache.org/repos/asf/tez/tree/af0d4d7c
Diff: http://git-wip-us.apache.org/repos/asf/tez/diff/af0d4d7c
Branch: refs/heads/TEZ-1190
Commit: af0d4d7c81f407898057056b786b38d6679e90c7
Parents: e84231e
Author: Sreenath Somarajapuram <sr...@apache.org>
Authored: Tue Mar 7 16:38:54 2017 +0530
Committer: Sreenath Somarajapuram <sr...@apache.org>
Committed: Tue Mar 7 16:38:54 2017 +0530
----------------------------------------------------------------------
CHANGES.txt | 1 +
tez-ui/src/main/webapp/app/entities/entity.js | 33 +++++++++----
.../webapp/tests/unit/entities/entity-test.js | 49 ++++++++++++++++++++
3 files changed, 75 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tez/blob/af0d4d7c/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index a3a74bc..1d2af07 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -214,6 +214,7 @@ ALL CHANGES:
TEZ-3630. Tez UI: Use DAG status for controlling auto-refresh polling
TEZ-3639. Tez UI: Footer pagination is improper in landing page
TEZ-3640. Tez UI: Add associated llap application id to queries page
+ TEZ-3642. Tez UI: Auto-refresh is not stopping when DAG is the main entity
Release 0.8.5: Unreleased
http://git-wip-us.apache.org/repos/asf/tez/blob/af0d4d7c/tez-ui/src/main/webapp/app/entities/entity.js
----------------------------------------------------------------------
diff --git a/tez-ui/src/main/webapp/app/entities/entity.js b/tez-ui/src/main/webapp/app/entities/entity.js
index 80a836e..d982811 100644
--- a/tez-ui/src/main/webapp/app/entities/entity.js
+++ b/tez-ui/src/main/webapp/app/entities/entity.js
@@ -32,6 +32,7 @@ var Entity = Ember.Object.extend(NameMixin, {
params: query,
urlParams: urlParams
}).then(function (record) {
+ that.resetAllNeeds(loader, record, options);
return that._loadAllNeeds(loader, record, options, urlParams);
});
},
@@ -44,6 +45,7 @@ var Entity = Ember.Object.extend(NameMixin, {
urlParams: urlParams
}).then(function (records) {
return Ember.RSVP.all(records.map(function (record) {
+ that.resetAllNeeds(loader, record, options);
return that._loadAllNeeds(loader, record, options, urlParams);
})).then(function () {
return records;
@@ -96,6 +98,14 @@ var Entity = Ember.Object.extend(NameMixin, {
return Ember.Object.create(need, overrides);
},
+ setNeed: function (parentModel, name, model) {
+ if(!parentModel.get("isDeleted")) {
+ parentModel.set(name, model);
+ parentModel.refreshLoadTime();
+ }
+ return parentModel;
+ },
+
_loadNeed: function (loader, parentModel, needOptions, options, index) {
var needLoader,
that = this,
@@ -128,10 +138,7 @@ var Entity = Ember.Object.extend(NameMixin, {
}
needLoader = needLoader.then(function (model) {
- if(!parentModel.get("isDeleted")) {
- parentModel.set(needOptions.name, model);
- parentModel.refreshLoadTime();
- }
+ that.setNeed(parentModel, needOptions.name, model);
return model;
});
@@ -141,10 +148,7 @@ var Entity = Ember.Object.extend(NameMixin, {
}
if(needOptions.silent) {
- if(!parentModel.get("isDeleted")) {
- parentModel.set(needOptions.name, null);
- parentModel.refreshLoadTime();
- }
+ that.setNeed(parentModel, needOptions.name, null);
}
else {
throw(err);
@@ -198,6 +202,19 @@ var Entity = Ember.Object.extend(NameMixin, {
}
},
+ resetAllNeeds: function (loader, parentModel/*, options*/) {
+ var needs = parentModel.get("needs"),
+ that = this;
+
+ if(needs) {
+ MoreObject.forEach(needs, function (name, needOptions) {
+ needOptions = that.normalizeNeed(name, needOptions, parentModel);
+ that.setNeed(parentModel, needOptions.name, null);
+ });
+ }
+
+ return parentModel;
+ },
});
export default Entity;
http://git-wip-us.apache.org/repos/asf/tez/blob/af0d4d7c/tez-ui/src/main/webapp/tests/unit/entities/entity-test.js
----------------------------------------------------------------------
diff --git a/tez-ui/src/main/webapp/tests/unit/entities/entity-test.js b/tez-ui/src/main/webapp/tests/unit/entities/entity-test.js
index a7677a7..1e353f0 100644
--- a/tez-ui/src/main/webapp/tests/unit/entities/entity-test.js
+++ b/tez-ui/src/main/webapp/tests/unit/entities/entity-test.js
@@ -34,11 +34,14 @@ test('Basic creation test', function(assert) {
assert.ok(entity.query);
assert.ok(entity.normalizeNeed);
+ assert.ok(entity.setNeed);
assert.ok(entity._loadNeed);
assert.ok(entity.loadNeed);
assert.ok(entity._loadAllNeeds);
assert.ok(entity.loadAllNeeds);
+
+ assert.ok(entity.resetAllNeeds);
});
test('normalizeNeed test', function(assert) {
@@ -206,6 +209,27 @@ test('loadAllNeeds silent=true test', function(assert) {
});
});
+test('setNeed test', function(assert) {
+ let entity = this.subject(),
+ parentModel = Ember.Object.create({
+ refreshLoadTime: function () {
+ assert.ok(true);
+ }
+ }),
+ testModel = {},
+ testName = "name";
+
+ assert.expect(1 + 2);
+
+ entity.setNeed(parentModel, testName, testModel);
+ assert.equal(parentModel.get(testName), testModel);
+
+ parentModel.set("isDeleted", true);
+ parentModel.set(testName, undefined);
+ entity.setNeed(parentModel, testName, testModel);
+ assert.equal(parentModel.get(testName), undefined);
+});
+
test('_loadNeed single string type test', function(assert) {
let entity = this.subject(),
loader,
@@ -300,3 +324,28 @@ test('_loadNeed test with silent false', function(assert) {
assert.equal(err, testErr);
});
});
+
+test('resetAllNeeds test', function(assert) {
+ let entity = this.subject(),
+ parentModel = Ember.Object.create({
+ needs : {
+ foo: {},
+ bar: {}
+ },
+ foo: 1,
+ bar: 2,
+ refreshLoadTime: function () {
+ assert.ok(true);
+ }
+ });
+
+ assert.expect(2 + 2 + 2);
+
+ assert.equal(parentModel.get("foo"), 1);
+ assert.equal(parentModel.get("bar"), 2);
+
+ entity.resetAllNeeds({}, parentModel);
+
+ assert.equal(parentModel.get("foo"), null);
+ assert.equal(parentModel.get("bar"), null);
+});
\ No newline at end of file