Closed Bug 1493968 Opened 11 months ago Closed 9 months ago

Intermittent devtools/client/aboutdebugging-new/test/browser/browser_aboutdebugging_navigate.js | A promise chain failed to handle a rejection: Connection closed, pending error from root, type listTabs failed - stack: _queueResponse/responsePromise

Categories

(DevTools :: about:debugging, defect, P1)

defect

Tracking

(firefox64 wontfix, firefox65 fixed)

RESOLVED FIXED
Firefox 65
Tracking Status
firefox64 --- wontfix
firefox65 --- fixed

People

(Reporter: intermittent-bug-filer, Assigned: jdescottes)

References

(Blocks 1 open bug)

Details

(Keywords: intermittent-failure)

Attachments

(2 files)

Filed by: nbeleuzu [at] mozilla.com

https://treeherder.mozilla.org/logviewer.html#?job_id=201416906&repo=mozilla-inbound

https://queue.taskcluster.net/v1/task/Nq_-um9ARPm_KiO1PY32zw/runs/0/artifacts/public/logs/live_backing.log

12:39:58     INFO - TEST-START | devtools/client/aboutdebugging-new/test/browser/browser_aboutdebugging_navigate.js
12:39:58     INFO - GECKO(8100) | console.error: "ADB extension is not installed"
12:39:58     INFO - GECKO(8100) | JavaScript error: resource://devtools/shared/base-loader.js -> resource://devtools/server/main.js, line 1590: Error: Connection closed, pending error from root, type listTabs failed
12:39:58     INFO - TEST-INFO | started process screenshot
12:39:58     INFO - TEST-INFO | screenshot: exit 0
12:39:58     INFO - Buffered messages logged at 12:39:58
12:39:58     INFO - Entering test bound 
12:39:58     INFO - Force all debug target panes to be expanded
12:39:58     INFO - opening about:debugging
12:39:58     INFO - Adding a new tab with URL: about:debugging
12:39:58     INFO - Tab added and finished loading
12:39:58     INFO - Wait until the main about debugging container is available
12:39:58     INFO - Wait until the client connection was established
12:39:58     INFO - TEST-PASS | devtools/client/aboutdebugging-new/test/browser/browser_aboutdebugging_navigate.js | Found the Connect sidebar item - 
12:39:58     INFO - TEST-PASS | devtools/client/aboutdebugging-new/test/browser/browser_aboutdebugging_navigate.js | Found the ThisFirefox sidebar item - 
12:39:58     INFO - TEST-PASS | devtools/client/aboutdebugging-new/test/browser/browser_aboutdebugging_navigate.js | ThisFirefox sidebar item is selected by default - 
12:39:58     INFO - Open a new background tab TAB1
12:39:58     INFO - Adding a new tab with URL: data:text/html,<title>TAB1</title>
12:39:58     INFO - Tab added and finished loading
12:39:58     INFO - Wait for the tab to appear in the debug targets with the correct name
12:39:58     INFO - Console message: [JavaScript Error: "The character encoding of the HTML document was not declared. The document will render with garbled text in some browser configurations if the document contains characters from outside the US-ASCII range. The character encoding of the page must be declared in the document or in the transfer protocol." {file: "data:text/html,<title>TAB1</title>" line: 0}]
12:39:58     INFO - Click on the Connect item in the sidebar
12:39:58     INFO - Wait until Connect page is displayed
12:39:58     INFO - TEST-PASS | devtools/client/aboutdebugging-new/test/browser/browser_aboutdebugging_navigate.js | Connect sidebar item is selected - 
12:39:58     INFO - TEST-PASS | devtools/client/aboutdebugging-new/test/browser/browser_aboutdebugging_navigate.js | Runtime page no longer rendered - 
12:39:58     INFO - Open a new tab which should be listed when we go back to This Firefox
12:39:58     INFO - Adding a new tab with URL: data:text/html,<title>TAB2</title>
12:39:58     INFO - Console message: [JavaScript Error: "Error: Connection closed, pending error from root, type listTabs failed" {file: "resource://devtools/shared/base-loader.js -> resource://devtools/server/main.js" line: 1590}]
12:39:58     INFO - Tab added and finished loading
12:39:58     INFO - Click on the ThisFirefox item in the sidebar
12:39:58     INFO - Wait until ThisFirefox page is displayed
12:39:58     INFO - Console message: [JavaScript Error: "The character encoding of the HTML document was not declared. The document will render with garbled text in some browser configurations if the document contains characters from outside the US-ASCII range. The character encoding of the page must be declared in the document or in the transfer protocol." {file: "data:text/html,<title>TAB2</title>" line: 0}]
12:39:58     INFO - TEST-PASS | devtools/client/aboutdebugging-new/test/browser/browser_aboutdebugging_navigate.js | ThisFirefox sidebar item is selected again - 
12:39:58     INFO - TEST-PASS | devtools/client/aboutdebugging-new/test/browser/browser_aboutdebugging_navigate.js | Connect page no longer rendered - 
12:39:58     INFO - TAB2 should already be displayed in the debug targets
12:39:58     INFO - Remove first background tab
12:39:58     INFO - Removing tab.
12:39:58     INFO - Waiting for event: 'TabClose' on [object XULElement].
12:39:58     INFO - Got event: 'TabClose' on [object XULElement].
12:39:58     INFO - Tab removed and finished closing
12:39:58     INFO - Check TAB1 disappears, meaning ThisFirefox client is correctly connected
12:39:58     INFO - Remove second background tab
12:39:58     INFO - Removing tab.
12:39:58     INFO - Waiting for event: 'TabClose' on [object XULElement].
12:39:58     INFO - Got event: 'TabClose' on [object XULElement].
12:39:58     INFO - Tab removed and finished closing
12:39:58     INFO - Check TAB2 disappears, meaning ThisFirefox client is correctly connected
12:39:58     INFO - Removing tab.
12:39:58     INFO - Waiting for event: 'TabClose' on [object XULElement].
12:39:58     INFO - Got event: 'TabClose' on [object XULElement].
12:39:58     INFO - Tab removed and finished closing
12:39:58     INFO - Buffered messages finished
12:39:58     INFO - TEST-UNEXPECTED-FAIL | devtools/client/aboutdebugging-new/test/browser/browser_aboutdebugging_navigate.js | A promise chain failed to handle a rejection: Connection closed, pending error from root, type listTabs failed - stack: _queueResponse/responsePromise<@resource://devtools/shared/base-loader.js -> resource://devtools/server/main.js:1590:15
12:39:58     INFO - promise callback*_queueResponse@resource://devtools/shared/base-loader.js -> resource://devtools/server/main.js:1588:8
12:39:58     INFO - onPacket@resource://devtools/shared/base-loader.js -> resource://devtools/server/main.js:1727:7
12:39:58     INFO - send/<@resource://devtools/shared/base-loader.js -> resource://devtools/shared/transport/local-transport.js:64:11
12:39:58     INFO - exports.makeInfallible/<@resource://devtools/shared/base-loader.js -> resource://devtools/shared/ThreadSafeDevToolsUtils.js:109:14
12:39:58     INFO - DevToolsUtils.executeSoon*exports.executeSoon@resource://devtools/shared/base-loader.js -> resource://devtools/shared/DevToolsUtils.js:57:21
12:39:58     INFO - send@resource://devtools/shared/base-loader.js -> resource://devtools/shared/transport/local-transport.js:58:7
12:39:58     INFO - _sendRequest@resource://devtools/shared/base-loader.js -> resource://devtools/shared/client/debugger-client.js:708:7
12:39:58     INFO - _attemptNextRequest@resource://devtools/shared/base-loader.js -> resource://devtools/shared/client/debugger-client.js:743:5
12:39:58     INFO - onPacket@resource://devtools/shared/base-loader.js -> resource://devtools/shared/client/debugger-client.js:831:5
12:39:58     INFO - send/<@resource://devtools/shared/base-loader.js -> resource://devtools/shared/transport/local-transport.js:64:11
12:39:58     INFO - exports.makeInfallible/<@resource://devtools/shared/base-loader.js -> resource://devtools/shared/ThreadSafeDevToolsUtils.js:109:14
12:39:58     INFO - DevToolsUtils.executeSoon*exports.executeSoon@resource://devtools/shared/base-loader.js -> resource://devtools/shared/DevToolsUtils.js:57:21
12:39:58     INFO - send@resource://devtools/shared/base-loader.js -> resource://devtools/shared/transport/local-transport.js:58:7
12:39:58     INFO - _queueResponse/responsePromise<@resource://devtools/shared/base-loader.js -> resource://devtools/server/main.js:1587:7
12:39:58     INFO - promise callback*_queueResponse@resource://devtools/shared/base-loader.js -> resource://devtools/server/main.js:1579:8
12:39:58     INFO - onPacket@resource://devtools/shared/base-loader.js -> resource://devtools/server/main.js:1727:7
12:39:58     INFO - send/<@resource://devtools/shared/base-loader.js -> resource://devtools/shared/transport/local-transport.js:64:11
12:39:58     INFO - exports.makeInfallible/<@resource://devtools/shared/base-loader.js -> resource://devtools/shared/ThreadSafeDevToolsUtils.js:109:14
12:39:58     INFO - DevToolsUtils.executeSoon*exports.executeSoon@resource://devtools/shared/base-loader.js -> resource://devtools/shared/DevToolsUtils.js:57:21
12:39:58     INFO - send@resource://devtools/shared/base-loader.js -> resource://devtools/shared/transport/local-transport.js:58:7
12:39:58     INFO - _sendRequest@resource://devtools/shared/base-loader.js -> resource://devtools/shared/client/debugger-client.js:708:7
12:39:58     INFO - _attemptNextRequest@resource://devtools/shared/base-loader.js -> resource://devtools/shared/client/debugger-client.js:743:5
12:39:58     INFO - onPacket@resource://devtools/shared/base-loader.js -> resource://devtools/shared/client/debugger-client.js:831:5
12:39:58     INFO - send/<@resource://devtools/shared/base-loader.js -> resource://devtools/shared/transport/local-transport.js:64:11
12:39:58     INFO - exports.makeInfallible/<@resource://devtools/shared/base-loader.js -> resource://devtools/shared/ThreadSafeDevToolsUtils.js:109:14
12:39:58     INFO - DevToolsUtils.executeSoon*exports.executeSoon@resource://devtools/shared/base-loader.js -> resource://devtools/shared/DevToolsUtils.js:57:21
12:39:58     INFO - send@resource://devtools/shared/base-loader.js -> resource://devtools/shared/transport/local-transport.js:58:7
12:39:58     INFO - _queueResponse/responsePromise<@resource://devtools/shared/base-loader.js -> resource://devtools/server/main.js:1587:7
12:39:58     INFO - promise callback*_queueResponse@resource://devtools/shared/base-loader.js -> resource://devtools/server/main.js:1579:8
12:39:58     INFO - onPacket@resource://devtools/shared/base-loader.js -> resource://devtools/server/main.js:1727:7
12:39:58     INFO - send/<@resource://devtools/shared/base-loader.js -> resource://devtools/shared/transport/local-transport.js:64:11
12:39:58     INFO - exports.makeInfallible/<@resource://devtools/shared/base-loader.js -> resource://devtools/shared/ThreadSafeDevToolsUtils.js:109:14
12:39:58     INFO - DevToolsUtils.executeSoon*exports.executeSoon@resource://devtools/shared/base-loader.js -> resource://devtools/shared/DevToolsUtils.js:57:21
12:39:58     INFO - send@resource://devtools/shared/base-loader.js -> resource://devtools/shared/transport/local-transport.js:58:7
12:39:58     INFO - Rejection date: Tue Sep 25 2018 12:39:58 GMT+0000 (Greenwich Mean Time) - false == true - JS frame :: resource://testing-common/PromiseTestUtils.jsm :: assertNoUncaughtRejections :: line 257
12:39:58     INFO - Stack trace:
12:39:58     INFO - resource://testing-common/PromiseTestUtils.jsm:assertNoUncaughtRejections:257
12:39:58     INFO - chrome://mochikit/content/browser-test.js:Tester_execTest/<:1127
12:39:58     INFO - chrome://mochikit/content/browser-test.js:Tester_execTest:1093
12:39:58     INFO - chrome://mochikit/content/browser-test.js:nextTest/<:990
12:39:58     INFO - chrome://mochikit/content/tests/SimpleTest/SimpleTest.js:SimpleTest.waitForFocus/waitForFocusInner/focusedOrLoaded/<:795
12:39:58     INFO - Leaving test bound 
12:39:58     INFO - GECKO(8100) | MEMORY STAT | vsize 1791MB | vsizeMaxContiguous 132464598MB | residentFast 338MB | heapAllocated 173MB
Julian, this fail is caused by https://bugzilla.mozilla.org/show_bug.cgi?id=1489224.
Can you please take a look?
Flags: needinfo?(jdescottes)
(In reply to Narcis Beleuzu [:NarcisB] from comment #1)
> Julian, this fail is caused by
> https://bugzilla.mozilla.org/show_bug.cgi?id=1489224.
> Can you please take a look?

I think this is rather Bug 1489222 (I landed both bugs with the same push, but the failing test here was added in Bug 1489222). 
I will take a look.
Flags: needinfo?(jdescottes)
Summary: Intermittent [TV] devtools/client/aboutdebugging-new/test/browser/browser_aboutdebugging_navigate.js | A promise chain failed to handle a rejection: Connection closed, pending error from root, type listTabs failed - stack: _queueResponse/responsePromise → Intermittent devtools/client/aboutdebugging-new/test/browser/browser_aboutdebugging_navigate.js | A promise chain failed to handle a rejection: Connection closed, pending error from root, type listTabs failed - stack: _queueResponse/responsePromise
Assignee: nobody → jdescottes
Blocks: 1489222
Status: NEW → ASSIGNED
Priority: P5 → P2
Priority: P2 → P1
This issue is a race condition between two concurrent "listTabs" requests. The second request finishes after we navigated to the Connect page and already destroyed our runtime client. Therefore the transport is destroyed and we throw at 

https://searchfox.org/mozilla-central/rev/ce57be88b8aa2ad03ace1b9684cd6c361be5109f/devtools/server/main.js#1589-1592

There is a valid question to be asked here: I am not sure throwing here makes any sense. I think it is acceptable that pending requests cannot terminate correctly if the DevTools client was destroyed before getting the response. Otherwise the client should make sure to "cancel" such requests when it is destroyed. I don't think anyone can do anything with this error, so a console .log might be more appropriate.

Now for the immediate issue here, about:debugging can ask for the list of tabs in two scenarios:
- when connecting to a new runtime and retrieving the initial list of tabs
- when notified that the tabs list changed for the runtime we monitor, and we retrieve the list again

The test does the following steps:
- load about:aboutdebugging
- wait for the runtime page to appear
- load a new tab TAB1
- wait for TAB1 to appear in the list of targets
- navigate to the connect page
(... + other steps but irrelevant here)

Normally we expect TAB1 to be discovered by the second type of listTab calls, ie when the tabs list changes. However, our watchRuntime action is not waiting until it discovered tabs to terminate: https://searchfox.org/mozilla-central/rev/ce57be88b8aa2ad03ace1b9684cd6c361be5109f/devtools/client/aboutdebugging-new/src/actions/runtimes.js#103-124 . As you can see, we dispatch "WATCH_RUNTIME_SUCCESS" in the middle of the action (which will lead to displaying the runtime page) and then we request for tabs in the background. 

So under some conditions, the first listTabs call coming from the watchRuntime action might already discover TAB1. That means that "wait for TAB1 to appear in the list of targets" resolves immediately and we might close the connection before we processed the second listTabs call. 

In a good run we have

- load about:aboutdebugging
  ==> call watchRuntime for this firefox and retrieve list of tabs
- wait for the runtime page to appear
  <== connection to this firefos runtime established
  <== tabs retrieved
- load a new tab TAB1
  <== receiving TABS_UPDATED event
- wait for TAB1 in targets
  ==> retrieve list of tabs
  <== tabs retrieved
- navigate to the connect page
  ==> destroy the client, no pending connection

In a bad run however

- load about:aboutdebugging
  ==> call watchRuntime for this firefox and retrieve list of tabs
- wait for the runtime page to appear
  <== connection to this firefos runtime established
  (... tabs not retrieved yet)
- load a new tab TAB1
  <== tabs retrieved (including TAB1)
  <== receiving TABS_UPDATED event
  ==> retrieve list of tabs
- wait for TAB1 in targets
  (... TAB1 already displayed, moving directly to next step)
- navigate to the connect page
  ==> destroy the client
  <== response for listTabs comes back but client was destroyed

Several measures we can take to address this:
- stop throwing on transport issues
- only navigate to runtime page when initial debug targets are retrieved
- dispatch another action when the watchRuntime is fully finished and update the ui
- wait for initial tab targets to be displayed in the page before adding tab1

The simplest here is the last one because it only impacts the test, but we should discuss the other options in follow up bugs.
See Also: → 1494424
See Also: → 1494428
Comment on attachment 9012322 [details]
Bug 1493968 - Wait for initial targets in aboutdebugging navigate test to avoid race condition;r=daisuke

Daisuke Akatsuka (:daisuke) has approved the revision.
Attachment #9012322 - Flags: review+
Pushed by jdescottes@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/0b8b09f59546
Wait for initial targets in aboutdebugging navigate test to avoid race condition;r=daisuke
https://hg.mozilla.org/mozilla-central/rev/0b8b09f59546
Status: ASSIGNED → RESOLVED
Closed: 11 months ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 64
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Reopening since this issue started again:
https://treeherder.mozilla.org/logviewer.html#?job_id=202282364&repo=mozilla-inbound&lineNumber=1920

[task 2018-09-28T19:28:47.785Z] 19:28:47     INFO - TEST-UNEXPECTED-FAIL | devtools/client/aboutdebugging-new/test/browser/browser_aboutdebugging_navigate.js | A promise chain failed to handle a rejection: Connection closed, pending error from root, type listTabs failed - stack: _queueResponse/responsePromise<@resource://devtools/shared/base-loader.js -> resource://devtools/server/main.js:1192:15
[task 2018-09-28T19:28:47.786Z] 19:28:47     INFO - promise callback*_queueResponse@resource://devtools/shared/base-loader.js -> resource://devtools/server/main.js:1190:8
[task 2018-09-28T19:28:47.787Z] 19:28:47     INFO - onPacket@resource://devtools/shared/base-loader.js -> resource://devtools/server/main.js:1329:7
[task 2018-09-28T19:28:47.788Z] 19:28:47     INFO - send/<@resource://devtools/shared/base-loader.js -> resource://devtools/shared/transport/local-transport.js:64:11
[task 2018-09-28T19:28:47.790Z] 19:28:47     INFO - exports.makeInfallible/<@resource://devtools/shared/base-loader.js -> resource://devtools/shared/ThreadSafeDevToolsUtils.js:109:14
[task 2018-09-28T19:28:47.791Z] 19:28:47     INFO - DevToolsUtils.executeSoon*exports.executeSoon@resource://devtools/shared/base-loader.js -> resource://devtools/shared/DevToolsUtils.js:57:21
[task 2018-09-28T19:28:47.792Z] 19:28:47     INFO - send@resource://devtools/shared/base-loader.js -> resource://devtools/shared/transport/local-transport.js:58:7
[task 2018-09-28T19:28:47.793Z] 19:28:47     INFO - _sendRequest@resource://devtools/shared/base-loader.js -> resource://devtools/shared/client/debugger-client.js:747:7
[task 2018-09-28T19:28:47.794Z] 19:28:47     INFO - _attemptNextRequest@resource://devtools/shared/base-loader.js -> resource://devtools/shared/client/debugger-client.js:782:5
[task 2018-09-28T19:28:47.795Z] 19:28:47     INFO - onPacket@resource://devtools/shared/base-loader.js -> resource://devtools/shared/client/debugger-client.js:870:5
[task 2018-09-28T19:28:47.796Z] 19:28:47     INFO - send/<@resource://devtools/shared/base-loader.js -> resource://devtools/shared/transport/local-transport.js:64:11
[task 2018-09-28T19:28:47.797Z] 19:28:47     INFO - exports.makeInfallible/<@resource://devtools/shared/base-loader.js -> resource://devtools/shared/ThreadSafeDevToolsUtils.js:109:14
[task 2018-09-28T19:28:47.798Z] 19:28:47     INFO - DevToolsUtils.executeSoon*exports.executeSoon@resource://devtools/shared/base-loader.js -> resource://devtools/shared/DevToolsUtils.js:57:21
[task 2018-09-28T19:28:47.799Z] 19:28:47     INFO - send@resource://devtools/shared/base-loader.js -> resource://devtools/shared/transport/local-transport.js:58:7
[task 2018-09-28T19:28:47.800Z] 19:28:47     INFO - _queueResponse/responsePromise<@resource://devtools/shared/base-loader.js -> resource://devtools/server/main.js:1189:7
[task 2018-09-28T19:28:47.801Z] 19:28:47     INFO - promise callback*_queueResponse@resource://devtools/shared/base-loader.js -> resource://devtools/server/main.js:1181:8
[task 2018-09-28T19:28:47.802Z] 19:28:47     INFO - onPacket@resource://devtools/shared/base-loader.js -> resource://devtools/server/main.js:1329:7
[task 2018-09-28T19:28:47.803Z] 19:28:47     INFO - send/<@resource://devtools/shared/base-loader.js -> resource://devtools/shared/transport/local-transport.js:64:11
[task 2018-09-28T19:28:47.805Z] 19:28:47     INFO - exports.makeInfallible/<@resource://devtools/shared/base-loader.js -> resource://devtools/shared/ThreadSafeDevToolsUtils.js:109:14
[task 2018-09-28T19:28:47.806Z] 19:28:47     INFO - DevToolsUtils.executeSoon*exports.executeSoon@resource://devtools/shared/base-loader.js -> resource://devtools/shared/DevToolsUtils.js:57:21
[task 2018-09-28T19:28:47.807Z] 19:28:47     INFO - send@resource://devtools/shared/base-loader.js -> resource://devtools/shared/transport/local-transport.js:58:7
[task 2018-09-28T19:28:47.809Z] 19:28:47     INFO - _sendRequest@resource://devtools/shared/base-loader.js -> resource://devtools/shared/client/debugger-client.js:747:7
[task 2018-09-28T19:28:47.811Z] 19:28:47     INFO - _attemptNextRequest@resource://devtools/shared/base-loader.js -> resource://devtools/shared/client/debugger-client.js:782:5
[task 2018-09-28T19:28:47.812Z] 19:28:47     INFO - onPacket@resource://devtools/shared/base-loader.js -> resource://devtools/shared/client/debugger-client.js:870:5
[task 2018-09-28T19:28:47.813Z] 19:28:47     INFO - send/<@resource://devtools/shared/base-loader.js -> resource://devtools/shared/transport/local-transport.js:64:11
[task 2018-09-28T19:28:47.815Z] 19:28:47     INFO - exports.makeInfallible/<@resource://devtools/shared/base-loader.js -> resource://devtools/shared/ThreadSafeDevToolsUtils.js:109:14
[task 2018-09-28T19:28:47.817Z] 19:28:47     INFO - DevToolsUtils.executeSoon*exports.executeSoon@resource://devtools/shared/base-loader.js -> resource://devtools/shared/DevToolsUtils.js:57:21
[task 2018-09-28T19:28:47.818Z] 19:28:47     INFO - send@resource://devtools/shared/base-loader.js -> resource://devtools/shared/transport/local-transport.js:58:7
[task 2018-09-28T19:28:47.819Z] 19:28:47     INFO - _queueResponse/responsePromise<@resource://devtools/shared/base-loader.js -> resource://devtools/server/main.js:1189:7
[task 2018-09-28T19:28:47.820Z] 19:28:47     INFO - promise callback*_queueResponse@resource://devtools/shared/base-loader.js -> resource://devtools/server/main.js:1181:8
[task 2018-09-28T19:28:47.821Z] 19:28:47     INFO - onPacket@resource://devtools/shared/base-loader.js -> resource://devtools/server
Status: REOPENED → ASSIGNED
The failure rate still decreased significantly, we will look at this when we have more time.
Status: ASSIGNED → NEW
Priority: P1 → P3
Assignee: jdescottes → nobody
No longer blocks: remote-debugging-ng
Still not sure what is the root issue here, but none of the regular connect tests are failing so I think the issue occurs when we remove tabs in the second step.
Assignee: nobody → jdescottes
Status: NEW → ASSIGNED
Priority: P3 → P1
After I said that my try run had a few failures on OSX debug jobs apparently. 

So after investigating a bit more, it really seems we can't fully control how many tabs/workers/extensions updates we will receive.

During the first part of the test, where we load about:debugging and add a background tab, we receive:
- 3 REQUEST_TABS_SUCCESS
- 2 REQUEST_WORKERS_SUCCESS
- 1 REQUEST_EXTENSION_SUCCESS

I still think the "settle" approach would work better for us here. 

New approach: https://treeherder.mozilla.org/#/jobs?repo=try&revision=0c6cdac65cdd63b3d42e625c2e24d72d6942dcf1
Pushed by jdescottes@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/e71f2bd051cf
Wait for requests to finish in aboutdebugging navigate test;r=ladybenko
https://hg.mozilla.org/mozilla-central/rev/e71f2bd051cf
Status: ASSIGNED → RESOLVED
Closed: 11 months ago9 months ago
Resolution: --- → FIXED
Target Milestone: Firefox 64 → Firefox 65
See Also: → 1518597
See Also: → 1518623
You need to log in before you can comment on or make changes to this bug.