Skip to content

Commit e746315

Browse files
authored
Merge pull request #196 from perftool-incubator/fix-cdm-critical-bugs
fix: 7 critical bugs in cdm.js and server.js
2 parents 495e1eb + 2fa3f7e commit e746315

2 files changed

Lines changed: 9 additions & 12 deletions

File tree

‎queries/cdmq/cdm.js‎

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1029,7 +1029,7 @@ mSearch = async function (instance, index, yearDotMonth, termKeys, values, sourc
10291029
console.log(
10301030
'WARNING: the requested source for this query [' + source + '] does not exist in the returned data:\n'
10311031
);
1032-
console.log(JSON.stringify(obj.null, 2));
1032+
console.log(JSON.stringify(obj, null, 2));
10331033
return;
10341034
}
10351035
obj = obj[thisObj];
@@ -2314,7 +2314,7 @@ getIters = async function (
23142314
});
23152315

23162316
if (jsonArr.length > 0) {
2317-
var responses = esJsonArrRequest(instance, 'tag', '/_msearch', jsonArr);
2317+
var responses = await esJsonArrRequest(instance, 'tag', '/_msearch', jsonArr);
23182318
var runIds = [];
23192319
responses.forEach((response) => {
23202320
var theseRunIds = [];
@@ -2326,7 +2326,7 @@ getIters = async function (
23262326
var intersectedRunIds = intersectAllArrays(runIds);
23272327

23282328
if (jsonArr2.length > 0) {
2329-
var responses2 = esJsonArrRequest(instance, 'tag', '/_msearch', jsonArr2);
2329+
var responses2 = await esJsonArrRequest(instance, 'tag', '/_msearch', jsonArr2);
23302330
responses2.forEach((response) => {
23312331
response.hits.hits.forEach((run) => {
23322332
if (intersectedRunIds.includes(run._source.run['run-uuid'])) {
@@ -2378,8 +2378,7 @@ getIters = async function (
23782378

23792379
var iterIdsFromParam = [];
23802380
if (jsonArr.length > 0) {
2381-
var resp = esJsonArrRequest(instance, 'param', '/_msearch', jsonArr);
2382-
var responses = JSON.parse(resp.getBody());
2381+
var responses = await esJsonArrRequest(instance, 'param', '/_msearch', jsonArr);
23832382
var iterationIds = [];
23842383
responses.forEach((response) => {
23852384
var theseIterationIds = [];
@@ -2391,8 +2390,7 @@ getIters = async function (
23912390
iterIdsFromParam = intersectAllArrays(iterationIds);
23922391

23932392
if (jsonArr2 != '') {
2394-
var resp2 = esJsonArrRequest(instance, 'tag', '/_msearch', jsonArr2);
2395-
var responses2 = JSON.parse(resp2.getBody());
2393+
var responses2 = await esJsonArrRequest(instance, 'tag', '/_msearch', jsonArr2);
23962394
responses2.forEach((response) => {
23972395
response.hits.hits.forEach((hit) => {
23982396
if (iterIdsFromParam.includes(hit._source.iteration['iteration-uuid'])) {
@@ -2437,7 +2435,7 @@ getIters = async function (
24372435
}
24382436
});
24392437
}
2440-
if (isDefined(addIterations) && addRuns != []) {
2438+
if (isDefined(addIterations) && addIterations != []) {
24412439
addIterations.forEach((id) => {
24422440
if (!allIterIds.includes(id)) {
24432441
allIterIds.push(id);
@@ -2898,7 +2896,6 @@ mgetMetricIdsFromTerms = async function (instance, termsSets, yearDotMonth) {
28982896
') did not match number of requests (' +
28992897
totalReqs +
29002898
')';
2901-
retMsg = 'ERROR: mgetMetricIdsFromTerms(), terms[' + i + '] must have either a period-id or run-id';
29022899
retCode = 2;
29032900
return { 'metric-id-sets': metricIdsSets, 'ret-code': retCode, 'ret-msg': retMsg };
29042901
}
@@ -3542,7 +3539,7 @@ getMetricDataSets = async function (instance, sets, yearDotMonth) {
35423539
}
35433540
sets[i].end = periodRange.end;
35443541
} else {
3545-
retMag = 'ERROR: end is not defined or a period was not defined';
3542+
retMsg = 'ERROR: end is not defined or a period was not defined';
35463543
retCode = 2;
35473544
return { 'data-sets': [], 'ret-code': retCode, 'ret-msg': retMsg };
35483545
}
@@ -3608,7 +3605,7 @@ getMetricDataSets = async function (instance, sets, yearDotMonth) {
36083605

36093606
// Ensure that any breakouts are available for each set
36103607
for (var i = 0; i < sets.length; i++) {
3611-
if (sets[i].breakout != 'undefined') {
3608+
if (isDefined(sets[i].breakout)) {
36123609
for (var j = 0; j < sets[i].breakout.length; j++) {
36133610
var breakout = parseBreakoutEntry(sets[i].breakout[j]).name;
36143611
if (!setBreakouts[i].includes(breakout)) {

‎queries/cdmq/server.js‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1637,7 +1637,7 @@ app.post('/api/v1/metric-data', async (req, res) => {
16371637
error: resp['ret-msg']
16381638
});
16391639
}
1640-
metric_data = resp['data-sets'][0];
1640+
var metric_data = resp['data-sets'][0];
16411641

16421642
var labelCount = metric_data && metric_data.values ? Object.keys(metric_data.values).length : 0;
16431643
var elapsed = Date.now() - reqStart;

0 commit comments

Comments
 (0)