Closed
Bug 1273795
Opened 9 years ago
Closed 9 years ago
Intermittent browser_net_service-worker-status.js | FATAL ERROR: AsyncShutdown timeout in ShutdownLeaks: Wait for cleanup to be finished before checking for leaks Conditions: [{"name":"DevTools: Wait until toolbox is destroyed","state":"(none)","filename"
Categories
(DevTools :: Netmonitor, defect, P1)
DevTools
Netmonitor
Tracking
(firefox50 fixed, firefox51 fixed)
RESOLVED
FIXED
Firefox 51
People
(Reporter: aryx, Assigned: jsnajdr)
References
Details
(Keywords: intermittent-failure)
Attachments
(1 file)
Comment hidden (Intermittent Failures Robot) |
Comment hidden (Intermittent Failures Robot) |
Comment hidden (Intermittent Failures Robot) |
Updated•9 years ago
|
Priority: -- → P1
Comment hidden (Intermittent Failures Robot) |
Assignee | ||
Comment 5•9 years ago
|
||
I suspect this is caused by the assertions and errors described in bug 1293980.
Depends on: 1293980
Assignee | ||
Comment 6•9 years ago
|
||
Comment hidden (mozreview-request) |
Assignee | ||
Comment 8•9 years ago
|
||
Another possible why this test can fail, in addition to the securityInfo issue in bug 1293980, is that it resolves promises with a CPOW when registering and unregistering the service worker. See bug 1233497. I'm converting all CPOW calls with a ContentTask.
The test will start permafailing when you remove the "skipPermitUnload" parameter to removeTab at [1]. I'm going to do exactly this in another cleanup, where I start including a shared-head.js in netmonitor tests, and unify several duplicate implementations of removeTab into one.
[1] http://searchfox.org/mozilla-central/source/devtools/client/netmonitor/test/head.js#117
Assignee: nobody → jsnajdr
Comment 9•9 years ago
|
||
mozreview-review |
Comment on attachment 8780482 [details]
Bug 1273795 - browser_net_service-worker-status.js: use ContentTask instead of CPOW
https://reviewboard.mozilla.org/r/71182/#review69122
Thanks for this cleanup.
::: devtools/client/netmonitor/test/browser_net_service-worker-status.js:47
(Diff revision 1)
> info("Performing requests...");
> - debuggee.performRequests();
> + yield ContentTask.spawn(tab.linkedBrowser, {}, function* () {
> + content.wrappedJSObject.performRequests();
> + });
> +
> yield waitForNetworkEvents(monitor, REQUEST_DATA.length);
Couldn't that race?
It is a typical pattern where events may be fired while we wait for yield ContentTask.spawn.
To be less prone to race, you would do:
let onEvents = waitForNetworkEvents();
yield ContentTask.spawn(...performRequest...); // This yield looks optional
yield onEvents;
Attachment #8780482 -
Flags: review?(poirot.alex) → review+
Comment hidden (mozreview-request) |
Assignee | ||
Comment 11•9 years ago
|
||
mozreview-review-reply |
Comment on attachment 8780482 [details]
Bug 1273795 - browser_net_service-worker-status.js: use ContentTask instead of CPOW
https://reviewboard.mozilla.org/r/71182/#review69122
> Couldn't that race?
> It is a typical pattern where events may be fired while we wait for yield ContentTask.spawn.
>
> To be less prone to race, you would do:
> let onEvents = waitForNetworkEvents();
> yield ContentTask.spawn(...performRequest...); // This yield looks optional
> yield onEvents;
Yes, it could race, thanks for pointing it out. Posted an updated patch with:
- use add_task and remove call to finish()
- waitForNetworkEvents() without a race
- yield in ContentTask.spawn(...performRequest...) can be useful for catching errors in the task
Assignee | ||
Updated•9 years ago
|
Keywords: checkin-needed
Comment 12•9 years ago
|
||
Pushed by ryanvm@gmail.com:
https://hg.mozilla.org/integration/autoland/rev/a94448be42e2
browser_net_service-worker-status.js: use ContentTask instead of CPOW r=ochameau
Keywords: checkin-needed
Comment 13•9 years ago
|
||
bugherder |
Status: NEW → RESOLVED
Closed: 9 years ago
status-firefox51:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → Firefox 51
Comment 14•9 years ago
|
||
bugherder uplift |
status-firefox50:
--- → fixed
Updated•7 years ago
|
Product: Firefox → DevTools
You need to log in
before you can comment on or make changes to this bug.
Description
•