Flakiness dashboard shows nothing because of invalid result files |
|||||||||||
Issue descriptionFlakiness dashboard shows nothing because it fails to decode JSON results. Some JSON results are invalid, starting from middle of a valid JSON, for example, http://test-results.appspot.com/testfile?builder=WebKit%20Linux%20(dbg)&master=chromium.webkit&testtype=webkit_tests&name=results-small.json returns JSON starting with the following: 37409"],"results":[[100,"X"]],"times":[[100,0]]},"010.xml":{"expected":"SKIP","bugs":[" crbug.com/537409 "],"results":[[100,"X"]],"...
,
Jul 28 2016
+nishanths who just made changes to this
,
Jul 28 2016
Issue 632485 has been merged into this issue.
,
Jul 28 2016
,
Jul 28 2016
,
Jul 28 2016
Looking into this. Is this happening only for the URL listed above? (http://test-results.appspot.com/testfile?builder=WebKit%20Linux%20(dbg)&master=chromium.webkit&testtype=webkit_tests&name=results-small.json)
,
Jul 28 2016
Assigning to nishanths@ since he's looking into it. Feel free to bounce back to me (or the current trooper) if it turns out unrelated to your change.
,
Jul 28 2016
This happens on multiple URLs. You can open flakiness_dashboard.html with the patch in #1 applied to see the URLs containing bad results.
,
Jul 28 2016
The following revision refers to this bug: https://chromium.googlesource.com/infra/infra.git/+/0290e4c044aa08a8729c1a84960d115f57be04e8 commit 0290e4c044aa08a8729c1a84960d115f57be04e8 Author: nishanths <nishanths@google.com> Date: Thu Jul 28 23:09:22 2016 test-results: stop routing to new Go module BUG= 632484 Review-Url: https://codereview.chromium.org/2192003002 [delete] https://crrev.com/8089c423fec7d2fcf3cc472de776c42cd307eefc/go/src/infra/appengine/test-results/dispatch.yaml
,
Jul 28 2016
Rolled back to the old Python module. http://test-results.appspot.com/testfile?builder=WebKit%20Linux%20(dbg)&master=chromium.webkit&testtype=webkit_tests&name=results-small.json now returns valid JSON.
,
Jul 28 2016
Flakiness dashboard is back up too: http://test-results.appspot.com/dashboards/flakiness_dashboard.html.
,
Aug 18 2016
This occurs again. Console log: VM213:1 Uncaught SyntaxError: Unexpected token s in JSON at position 3000239_processResultsJSONData @ loader.js:179_handleResultsFileLoaded @ loader.js:161(anonymous function) @ loader.js:150(anonymous function) @ base.js:45xhr.onreadystatechange @ loader.js:54 VM214:1 Uncaught SyntaxError: Unexpected token , in JSON at position 1_processResultsJSONData @ loader.js:179_handleResultsFileLoaded @ loader.js:161(anonymous function) @ loader.js:150(anonymous function) @ base.js:45xhr.onreadystatechange @ loader.js:54 VM215:1 Uncaught SyntaxError: Unexpected token , in JSON at position 0_processResultsJSONData @ loader.js:179_handleResultsFileLoaded @ loader.js:161(anonymous function) @ loader.js:150(anonymous function) @ base.js:45xhr.onreadystatechange @ loader.js:54 VM216:1 Uncaught SyntaxError: Unexpected token t in JSON at position 3000000_processResultsJSONData @ loader.js:179_handleResultsFileLoaded @ loader.js:161(anonymous function) @ loader.js:150(anonymous function) @ base.js:45xhr.onreadystatechange @ loader.js:54 VM217:1 Uncaught SyntaxError: Unexpected token [ in JSON at position 3000000_processResultsJSONData @ loader.js:179_handleResultsFileLoaded @ loader.js:161(anonymous function) @ loader.js:150(anonymous function) @ base.js:45xhr.onreadystatechange @ loader.js:54 loader.js:59 GET http://test-results.appspot.com/testfile?builder=WebKit%20Win%20-%20WPTServe&master=chromium.fyi&testtype=webkit_tests&name=results-small.json 404 (Not Found)loader.request @ loader.js:59_loadResultsFileForBuilder @ loader.js:148_loadResultsFiles @ loader.js:130_loadNext @ loader.js:120_loadBuilders @ loader.js:125_loadNext @ loader.js:120load @ loader.js:100(anonymous function) @ flakiness_dashboard.js:1602 VM218:1 Uncaught SyntaxError: Unexpected token , in JSON at position 0_processResultsJSONData @ loader.js:179_handleResultsFileLoaded @ loader.js:161(anonymous function) @ loader.js:150(anonymous function) @ base.js:45xhr.onreadystatechange @ loader.js:54 VM219:1 Uncaught SyntaxError: Unexpected token ] in JSON at position 3000001
,
Aug 18 2016
Nishanth, I think you rolled out a change yesterday? Please take a look ASAP. (And, once resolved, can you also get a bug on file to add monitoring)
,
Aug 18 2016
Looking into this.
,
Aug 18 2016
Issue 638967 has been merged into this issue.
,
Aug 18 2016
We should consider rolling back at this point. :)
,
Aug 18 2016
Applied the patch from Comment 1 for a temporary fix. The dashboard is back up: http://test-results.appspot.com/dashboards/flakiness_dashboard.html. However the failing JSON will not be included in the dashboard statistics. Looking at a permanent fix now.
,
Aug 18 2016
,
Aug 18 2016
,
Aug 21 2016
|
|||||||||||
►
Sign in to add a comment |
|||||||||||
Comment 1 by wangxianzhu@chromium.org
, Jul 28 2016With the following patch I can show partial results by ignoring the invalid results: diff --git a/appengine/test_results/static-dashboards/loader.js b/appengine/test_results/static-dashboards/loader.js index fa7f9d0..df97913 100644 --- a/appengine/test_results/static-dashboards/loader.js +++ b/appengine/test_results/static-dashboards/loader.js @@ -147,6 +147,7 @@ loader.Loader.prototype = { var resultsFileLocation = pathToBuilderResultsFile(builder) + resultsFilename; loader.request(resultsFileLocation, partial(function(loader, builder, xhr) { + console.log(resultsFileLocation); loader._handleResultsFileLoaded(builder, xhr.responseText); }, this, builder), partial(function(loader, builder, xhr) { @@ -176,7 +177,14 @@ loader.Loader.prototype = { }, _processResultsJSONData: function(builder, fileData) { - var builds = JSON.parse(fileData); + try { + var builds = JSON.parse(fileData); + } catch (e) { + console.log(builder); + console.log(fileData.substring(0, 100)); + console.log(e); + return; + } if (builder.builderName == 'version' || builder.builderName == 'failure_map') return;