Closed Bug 1180746 Opened 9 years ago Closed 9 years ago

"Harness status: OK" + failing test when running "sync-xhr-doesnt-deadlock.https.html" test

Categories

(Testing :: web-platform-tests, defect)

defect
Not set
normal

Tracking

(firefox42 affected)

RESOLVED DUPLICATE of bug 931243
Tracking Status
firefox42 --- affected

People

(Reporter: noemi, Unassigned)

References

Details

Checked with 7/6 master build

Test run such as |./mach web-platform-tests _mozilla/service-workers/service-worker/sync-xhr-doesnt-deadlock.https.html|

Result:
* Harness status: OK
* Found 1 test
* 1 Fail:
**Verify SyncXHR does not deadlock	
***assert_unreached: unexpected rejection: FAIL Reached unreachable code
unreached_rejection/<@https://web-platform.test:8443/_mozilla/service-workers/service-worker/resources/test-helpers.sub.js:42:7 Test.prototype.step@https://web-platform.test:8443/resources/testharness.js:1363:20 Test.prototype.step_func/<@https://web-platform.test:8443/resources/testharness.js:1387:1 Promise*@https://web-platform.test:8443/_mozilla/service-workers/service-worker/sync-xhr-doesnt-deadlock.https.html:12:5 Test.prototype.step@https://web-platform.test:8443/resources/testharness.js:1363:20 async_test@https://web-platform.test:8443/resources/testharness.js:513:13 @https://web-platform.test:8443/_mozilla/service-workers/service-worker/sync-xhr-doesnt-deadlock.https.html:8:1 
* Traces: https://pastebin.mozilla.org/8838618
Summary: "Harness status: OK" + failing test when running wpt "sync-xhr-doesnt-deadlock.https.html" test → "Harness status: OK" + failing test when running "sync-xhr-doesnt-deadlock.https.html" test
Component: DOM: Service Workers → web-platform-tests
Product: Core → Testing
It seems like Blink had some issue where sync XHR and fetch interception could deadlock. Is this something we need to worry about? From my reading of our sync xhr implementation, we continue to spin an event loop (albeit a nested event loop), so runnables coming back from the service worker will run, and rendering should also continue to happen. Am I right? In that case this test is irrelevant and probably should be removed from wpt tests.

Olli, you were the last person to touch the sync loop creation in XHR. Any thoughts?

[1] https://codereview.chromium.org/553333005/
Flags: needinfo?(bugs)
Our main thread sync XHR just spins the event loop (not really nested, I'd say, just the same one on which the XHR is running. But depends on how one defines "nested").
Rendering does happen and runnables are processed normally. But note, our behavior on the main thread is not right - we shouldn't really do anything while waiting for the result for sync XHR.

Can one use sync XHR on the service worker? If so, can it cause problems?
Flags: needinfo?(bugs)
This may be a non-issue since in bug 931243 we're going to disable sync XHR in Service Workers.
My patch for bug 931243 removes this test.
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.