[WPT import] Import failed because response-consume-stream.html baseline didn't match CQ |
|||
Issue descriptionhttps://build.chromium.org/p/chromium.infra.cron/builders/wpt-importer/builds/1024 https://chromium-review.googlesource.com/c/chromium/src/+/646027 Before the changes, there were 5 response-consume-stream-expected.txt files: LayoutTests/external/wpt/fetch/api/response/response-consume-stream-expected.txt LayoutTests/platform/mac/virtual/mojo-blobs/external/wpt/fetch/api/response/response-consume-stream-expected.txt LayoutTests/platform/mac/virtual/outofblink-cors/external/wpt/fetch/api/response/response-consume-stream-expected.txt LayoutTests/platform/linux/virtual/mojo-blobs/external/wpt/fetch/api/response/response-consume-stream-expected.txt LayoutTests/platform/linux/virtual/outofblink-cors/external/wpt/fetch/api/response/response-consume-stream-expected.txt In the review, all except LayoutTests/platform/linux/external/wpt/fetch/api/response/response-consume-stream-expected.txt was deleted, which remained like this: This is a testharness.js-based test. PASS Read empty text response's body as readableStream PASS Read empty blob response's body as readableStream PASS Read blob response's body as readableStream PASS Read text response's body as readableStream PASS Read URLSearchParams response's body as readableStream PASS Read array buffer response's body as readableStream FAIL Read form data response's body as readableStream assert_array_equals: Retrieve and verify stream lengths differ, expected 10 got 140 PASS Getting an error Response stream FAIL Getting a redirect Response stream assert_not_equals: got disallowed value undefined Harness: the test ran to completion. However, this test passed fully in CQ, so the import failed. If the tests fail on the waterfall bots, expectations specific to them would be needed.
,
Sep 1 2017
https://chromium-review.googlesource.com/c/chromium/src/+/646454 was successful.
,
Sep 6 2017
This is rather strange. I went down the rabbit hole and it seems to me the non-virtual version of response-consume-stream.html was not run on linux_trusty_blink_rel for some reason during the initial tryjob, and `webkit_patch rebaseline-cl` filled in the missing baseline with the old generic baseline, which contained the FAIL entries. Timeline: 0. response-consume-stream.html had two failures in testharness reports on all platforms (not considering Android, same below). 1. response-consume-stream.html was changed upstream, and all test cases in the new version should now pass on all platforms. 2. Importer imported the change and triggered initial try jobs. Theoretically, all platforms should fail this test unexpectedly because of result mismatch (all passes vs two failures). However, it was not run on linux_trusty_blink_rel [a]. 3. Importer tried to rebaseline. All other platforms received new all-pass results. Yet the result for linux_trusty_blink_rel was missing, and the old generic result with two failures was used to fill in. After optimization, the baseline became all-pass on generic but had two failures on linux_trusty_blink_rel. [b] 4. CQ was triggered. This time the test was run on linux_trusty_blink_rel. Naturally it failed due to mismatch. [c] [a] https://luci-logdog.appspot.com/v/?s=chromium%2Fbb%2Ftryserver.blink%2Flinux_trusty_blink_rel%2F14875%2F%2B%2Frecipes%2Fsteps%2Fwebkit_layout_tests__with_patch_%2F0%2Fstdout (note only virtual/*/external/wpt/fetch/api/response/response-consume-stream.html were run) [b] I tweaked the tool to get it running locally and produced some debug outputs: webkitpy.tool.commands.rebaseline: [INFO] Rebaselining external/wpt/fetch/api/response/response-consume-stream.html webkitpy.tool.commands.rebaseline: [DEBUG] No test result for test external/wpt/fetch/api/response/response-consume-stream.html in build Build(builder_name=u'android_blink_rel', build_number=3551) webkitpy.tool.commands.rebaseline: [DEBUG] No test result for test external/wpt/fetch/api/response/response-consume-stream.html in build Build(builder_name=u'linux_trusty_blink_rel', build_number=14875) ... webkitpy.tool.commands.copy_existing_baselines: [DEBUG] Copying baseline from /usr/local/google/home/robertma/chromium/src/third_party/WebKit/LayoutTests/external/wpt/fetch/api/response/response-consume-stream-expected.txt to /usr/local/google/home/robertma/chromium/src/third_party/WebKit/LayoutTests/platform/linux/external/wpt/fetch/api/response/response-consume-stream-expected.txt. (Missing android_blink_rel is expected.) [c] https://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_rel_ng/builds/537767
,
Sep 6 2017
> 4. CQ was triggered. This time the test was run on linux_trusty_blink_rel. Naturally it failed due to mismatch. [c] Sorry, I meant linux_chromium_rel_ng. And on the following successful import, the test ran on linux_trusty_blink_rel and produced correct results during the initial tryjob: https://storage.googleapis.com/chromium-layout-test-archives/linux_trusty_blink_rel/14880/layout-test-results/results.html
,
Sep 14 2017
Marking this as unconfirmed/unreproducible (not sure if it's accurate), as I've done some triage but got stuck (see above). Let's see if we can find other examples of this.
,
Sep 18 2017
Thanks for the deep dive in #3! I can't make sense of what might have happened here, flakiness seems like it wouldn't explain it if the test didn't run at all on linux_trusty_blink_rel that one time. Hunting this down doesn't seem worth the time it'd take, closing as WontFix and if something happens again maybe it sounds familiar and we dupe into this one. |
|||
►
Sign in to add a comment |
|||
Comment 1 by foolip@chromium.org
, Sep 1 2017