Closed Bug 1638219 Opened 5 years ago Closed 4 years ago

Intermittent devtools/shared/resources/tests/*.js | A promise chain failed to handle a rejection: Connection closed, pending request to root, type listWorkers failed

Categories

(DevTools :: General, defect, P5)

defect

Tracking

(firefox87 fixed)

RESOLVED FIXED
87 Branch
Tracking Status
firefox87 --- fixed

People

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

References

Details

(Keywords: intermittent-failure)

Attachments

(1 file)

Filed by: ccoroiu [at] mozilla.com
Parsed log: https://treeherder.mozilla.org/logviewer.html#?job_id=302369045&repo=autoland
Full log: https://firefox-ci-tc.services.mozilla.com/api/queue/v1/task/E-Ll3b5fR6mD1st2VOIkCg/runs/0/artifacts/public/logs/live_backing.log


[task 2020-05-15T00:48:11.395Z] 00:48:11 INFO - TEST-PASS | devtools/shared/resources/tests/browser_target_list_processes.js | The main process DevToolsServer has no pending connection when the test ends -
[task 2020-05-15T00:48:11.416Z] 00:48:11 INFO - Console message: [JavaScript Error: "Error: Connection closed, pending request to root, type listWorkers failed
[task 2020-05-15T00:48:11.416Z] 00:48:11 INFO -
[task 2020-05-15T00:48:11.416Z] 00:48:11 INFO - Request stack:
[task 2020-05-15T00:48:11.416Z] 00:48:11 INFO - request@resource://devtools/shared/protocol/Front.js:256:14
[task 2020-05-15T00:48:11.416Z] 00:48:11 INFO - generateRequestMethods/</frontProto[name]@resource://devtools/shared/protocol/Front/FrontClassWithSpec.js:47:19
[task 2020-05-15T00:48:11.416Z] 00:48:11 INFO - _workerListChanged@resource://devtools/shared/resources/legacy-target-watchers/legacy-workers-watcher.js:81:37
[task 2020-05-15T00:48:11.416Z] 00:48:11 INFO - _emit@resource://devtools/shared/event-emitter.js:226:34
[task 2020-05-15T00:48:11.416Z] 00:48:11 INFO - emit@resource://devtools/shared/event-emitter.js:172:18
[task 2020-05-15T00:48:11.416Z] 00:48:11 INFO - emit@resource://devtools/shared/event-emitter.js:324:18
[task 2020-05-15T00:48:11.416Z] 00:48:11 INFO - onPacket@resource://devtools/shared/protocol/Front.js:294:13
[task 2020-05-15T00:48:11.416Z] 00:48:11 INFO - onPacket@resource://devtools/client/devtools-client.js:493:13
[task 2020-05-15T00:48:11.416Z] 00:48:11 INFO - send/<@resource://devtools/shared/transport/local-transport.js:68:25
[task 2020-05-15T00:48:11.416Z] 00:48:11 INFO - exports.makeInfallible/<@resource://devtools/shared/ThreadSafeDevToolsUtils.js:103:22
[task 2020-05-15T00:48:11.416Z] 00:48:11 INFO - DevToolsUtils.executeSoonexports.executeSoon@resource://devtools/shared/DevToolsUtils.js:47:21
[task 2020-05-15T00:48:11.416Z] 00:48:11 INFO - send@resource://devtools/shared/transport/local-transport.js:56:21
[task 2020-05-15T00:48:11.416Z] 00:48:11 INFO - send@resource://devtools/server/devtools-server-connection.js:91:20
[task 2020-05-15T00:48:11.416Z] 00:48:11 INFO - onWorkerListChanged@resource://devtools/server/actors/root.js:444:15
[task 2020-05-15T00:48:11.416Z] 00:48:11 INFO - _notifyListChanged@resource://devtools/server/actors/worker/worker-target-actor-list.js:184:10
[task 2020-05-15T00:48:11.416Z] 00:48:11 INFO - onUnregister@resource://devtools/server/actors/worker/worker-target-actor-list.js:200:12
[task 2020-05-15T00:48:11.416Z] 00:48:11 INFO - " {file: "resource://devtools/shared/protocol/Front.js" line: 77}]
[task 2020-05-15T00:48:11.416Z] 00:48:11 INFO - Console message: [JavaScript Error: "Error: Connection closed, pending request to root, type listWorkers failed
[task 2020-05-15T00:48:11.416Z] 00:48:11 INFO -
[task 2020-05-15T00:48:11.417Z] 00:48:11 INFO - Request stack:
[task 2020-05-15T00:48:11.417Z] 00:48:11 INFO - request@resource://devtools/shared/protocol/Front.js:256:14
[task 2020-05-15T00:48:11.417Z] 00:48:11 INFO - generateRequestMethods/</frontProto[name]@resource://devtools/shared/protocol/Front/FrontClassWithSpec.js:47:19
[task 2020-05-15T00:48:11.417Z] 00:48:11 INFO - _workerListChanged@resource://devtools/shared/resources/legacy-target-watchers/legacy-workers-watcher.js:81:37
[task 2020-05-15T00:48:11.417Z] 00:48:11 INFO - _emit@resource://devtools/shared/event-emitter.js:226:34
[task 2020-05-15T00:48:11.417Z] 00:48:11 INFO - emit@resource://devtools/shared/event-emitter.js:172:18
[task 2020-05-15T00:48:11.417Z] 00:48:11 INFO - emit@resource://devtools/shared/event-emitter.js:324:18
[task 2020-05-15T00:48:11.418Z] 00:48:11 INFO - onPacket@resource://devtools/shared/protocol/Front.js:294:13
[task 2020-05-15T00:48:11.418Z] 00:48:11 INFO - onPacket@resource://devtools/client/devtools-client.js:493:13
[task 2020-05-15T00:48:11.418Z] 00:48:11 INFO - send/<@resource://devtools/shared/transport/local-transport.js:68:25
[task 2020-05-15T00:48:11.418Z] 00:48:11 INFO - exports.makeInfallible/<@resource://devtools/shared/ThreadSafeDevToolsUtils.js:103:22
[task 2020-05-15T00:48:11.418Z] 00:48:11 INFO - DevToolsUtils.executeSoon
exports.executeSoon@resource://devtools/shared/DevToolsUtils.js:47:21
[task 2020-05-15T00:48:11.418Z] 00:48:11 INFO - send@resource://devtools/shared/transport/local-transport.js:56:21
[task 2020-05-15T00:48:11.419Z] 00:48:11 INFO - send@resource://devtools/server/devtools-server-connection.js:91:20
[task 2020-05-15T00:48:11.419Z] 00:48:11 INFO - onWorkerListChanged@resource://devtools/server/actors/root.js:444:15
[task 2020-05-15T00:48:11.419Z] 00:48:11 INFO - _notifyListChanged@resource://devtools/server/actors/worker/worker-target-actor-list.js:184:10
[task 2020-05-15T00:48:11.419Z] 00:48:11 INFO - onUnregister@resource://devtools/server/actors/worker/worker-target-actor-list.js:200:12
[task 2020-05-15T00:48:11.419Z] 00:48:11 INFO - " {file: "resource://devtools/shared/protocol/Front.js" line: 77}]
[task 2020-05-15T00:48:11.419Z] 00:48:11 INFO - Console message: [JavaScript Error: "Error: Connection closed, pending request to root, type listWorkers failed
[task 2020-05-15T00:48:11.420Z] 00:48:11 INFO -
[task 2020-05-15T00:48:11.420Z] 00:48:11 INFO - Request stack:
[task 2020-05-15T00:48:11.420Z] 00:48:11 INFO - request@resource://devtools/shared/protocol/Front.js:256:14
[task 2020-05-15T00:48:11.420Z] 00:48:11 INFO - generateRequestMethods/</frontProto[name]@resource://devtools/shared/protocol/Front/FrontClassWithSpec.js:47:19
[task 2020-05-15T00:48:11.420Z] 00:48:11 INFO - _workerListChanged@resource://devtools/shared/resources/legacy-target-watchers/legacy-workers-watcher.js:81:37
[task 2020-05-15T00:48:11.420Z] 00:48:11 INFO - _emit@resource://devtools/shared/event-emitter.js:226:34
[task 2020-05-15T00:48:11.420Z] 00:48:11 INFO - emit@resource://devtools/shared/event-emitter.js:172:18
[task 2020-05-15T00:48:11.420Z] 00:48:11 INFO - emit@resource://devtools/shared/event-emitter.js:324:18
[task 2020-05-15T00:48:11.421Z] 00:48:11 INFO - onPacket@resource://devtools/shared/protocol/Front.js:294:13
[task 2020-05-15T00:48:11.421Z] 00:48:11 INFO - onPacket@resource://devtools/client/devtools-client.js:493:13
[task 2020-05-15T00:48:11.421Z] 00:48:11 INFO - send/<@resource://devtools/shared/transport/local-transport.js:68:25
[task 2020-05-15T00:48:11.421Z] 00:48:11 INFO - exports.makeInfallible/<@resource://devtools/shared/ThreadSafeDevToolsUtils.js:103:22
[task 2020-05-15T00:48:11.421Z] 00:48:11 INFO - DevToolsUtils.executeSoonexports.executeSoon@resource://devtools/shared/DevToolsUtils.js:47:21
[task 2020-05-15T00:48:11.421Z] 00:48:11 INFO - send@resource://devtools/shared/transport/local-transport.js:56:21
[task 2020-05-15T00:48:11.421Z] 00:48:11 INFO - send@resource://devtools/server/devtools-server-connection.js:91:20
[task 2020-05-15T00:48:11.421Z] 00:48:11 INFO - onWorkerListChanged@resource://devtools/server/actors/root.js:444:15
[task 2020-05-15T00:48:11.421Z] 00:48:11 INFO - _notifyListChanged@resource://devtools/server/actors/worker/worker-target-actor-list.js:184:10
[task 2020-05-15T00:48:11.421Z] 00:48:11 INFO - onUnregister@resource://devtools/server/actors/worker/worker-target-actor-list.js:200:12
[task 2020-05-15T00:48:11.422Z] 00:48:11 INFO - " {file: "resource://devtools/shared/protocol/Front.js" line: 77}]
[task 2020-05-15T00:48:11.422Z] 00:48:11 INFO - Buffered messages finished
[task 2020-05-15T00:48:11.422Z] 00:48:11 INFO - TEST-UNEXPECTED-FAIL | devtools/shared/resources/tests/browser_target_list_processes.js | A promise chain failed to handle a rejection: Connection closed, pending request to root, type listWorkers failed
[task 2020-05-15T00:48:11.422Z] 00:48:11 INFO -
[task 2020-05-15T00:48:11.422Z] 00:48:11 INFO - Request stack:
[task 2020-05-15T00:48:11.422Z] 00:48:11 INFO - request@resource://devtools/shared/protocol/Front.js:256:14
[task 2020-05-15T00:48:11.422Z] 00:48:11 INFO - generateRequestMethods/</frontProto[name]@resource://devtools/shared/protocol/Front/FrontClassWithSpec.js:47:19
[task 2020-05-15T00:48:11.423Z] 00:48:11 INFO - _workerListChanged@resource://devtools/shared/resources/legacy-target-watchers/legacy-workers-watcher.js:81:37
[task 2020-05-15T00:48:11.423Z] 00:48:11 INFO - _emit@resource://devtools/shared/event-emitter.js:226:34
[task 2020-05-15T00:48:11.423Z] 00:48:11 INFO - emit@resource://devtools/shared/event-emitter.js:172:18
[task 2020-05-15T00:48:11.423Z] 00:48:11 INFO - emit@resource://devtools/shared/event-emitter.js:324:18
[task 2020-05-15T00:48:11.423Z] 00:48:11 INFO - onPacket@resource://devtools/shared/protocol/Front.js:294:13
[task 2020-05-15T00:48:11.423Z] 00:48:11 INFO - onPacket@resource://devtools/client/devtools-client.js:493:13
[task 2020-05-15T00:48:11.423Z] 00:48:11 INFO - send/<@resource://devtools/shared/transport/local-transport.js:68:25
[task 2020-05-15T00:48:11.423Z] 00:48:11 INFO - exports.makeInfallible/<@resource://devtools/shared/ThreadSafeDevToolsUtils.js:103:22
[task 2020-05-15T00:48:11.423Z] 00:48:11 INFO - DevToolsUtils.executeSoon
exports.executeSoon@resource://devtools/shared/DevToolsUtils.js:47:21
[task 2020-05-15T00:48:11.424Z] 00:48:11 INFO - send@resource://devtools/shared/transport/local-transport.js:56:21
[task 2020-05-15T00:48:11.424Z] 00:48:11 INFO - send@resource://devtools/server/devtools-server-connection.js:91:20
[task 2020-05-15T00:48:11.424Z] 00:48:11 INFO - onWorkerListChanged@resource://devtools/server/actors/root.js:444:15
[task 2020-05-15T00:48:11.424Z] 00:48:11 INFO - _notifyListChanged@resource://devtools/server/actors/worker/worker-target-actor-list.js:184:10
[task 2020-05-15T00:48:11.425Z] 00:48:11 INFO - onUnregister@resource://devtools/server/actors/worker/worker-target-actor-list.js:200:12
[task 2020-05-15T00:48:11.425Z] 00:48:11 INFO - - stack: destroy@resource://devtools/shared/protocol/Front.js:77:23
[task 2020-05-15T00:48:11.425Z] 00:48:11 INFO - cleanup@resource://devtools/shared/protocol/Pool.js:203:10
[task 2020-05-15T00:48:11.425Z] 00:48:11 INFO - onClosed@resource://devtools/client/devtools-client.js:629:12
[task 2020-05-15T00:48:11.426Z] 00:48:11 INFO - close@resource://devtools/shared/transport/local-transport.js:169:20
[task 2020-05-15T00:48:11.426Z] 00:48:11 INFO - close@resource://devtools/shared/transport/local-transport.js:165:13
[task 2020-05-15T00:48:11.426Z] 00:48:11 INFO - close@resource://devtools/shared/transport/local-transport.js:165:13
[task 2020-05-15T00:48:11.432Z] 00:48:11 INFO - cleanup@resource://devtools/client/devtools-client.js:124:27
[task 2020-05-15T00:48:11.432Z] 00:48:11 INFO - close/promise<@resource://devtools/client/devtools-client.js:140:7
[task 2020-05-15T00:48:11.432Z] 00:48:11 INFO - close@resource://devtools/client/devtools-client.js:117:21
[task 2020-05-15T00:48:11.432Z] 00:48:11 INFO - @chrome://mochitests/content/browser/devtools/shared/resources/tests/browser_target_list_processes.js:33:16
[task 2020-05-15T00:48:11.432Z] 00:48:11 INFO - Async*Tester_execTest/<@chrome://mochikit/content/browser-test.js:1064:34
[task 2020-05-15T00:48:11.433Z] 00:48:11 INFO - Tester_execTest@chrome://mochikit/content/browser-test.js:1104:11
[task 2020-05-15T00:48:11.433Z] 00:48:11 INFO - nextTest/<@chrome://mochikit/content/browser-test.js:927:14
[task 2020-05-15T00:48:11.434Z] 00:48:11 INFO - SimpleTest.waitForFocus/waitForFocusInner/focusedOrLoaded/<@chrome://mochikit/content/tests/SimpleTest/SimpleTest.js:918:23
[task 2020-05-15T00:48:11.435Z] 00:48:11 INFO - Rejection date: Fri May 15 2020 00:48:10 GMT+0000 (Coordinated Universal Time) - false == true - JS frame :: resource://testing-common/PromiseTestUtils.jsm :: assertNoUncaughtRejections :: line 265
[task 2020-05-15T00:48:11.436Z] 00:48:11 INFO - Stack trace:
[task 2020-05-15T00:48:11.436Z] 00:48:11 INFO - resource://testing-common/PromiseTestUtils.jsm:assertNoUncaughtRejections:265
[task 2020-05-15T00:48:11.437Z] 00:48:11 INFO - chrome://mochikit/content/browser-test.js:nextTest:610
[task 2020-05-15T00:48:11.437Z] 00:48:11 INFO - chrome://mochikit/content/browser-test.js:testScope/test_finish/<:1464
[task 2020-05-15T00:48:11.437Z] 00:48:11 INFO - chrome://mochikit/content/browser-test.js:run:1379
[task 2020-05-15T00:48:11.438Z] 00:48:11 INFO - Not taking screenshot here: see the one that was previously logged

Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → DUPLICATE
Status: RESOLVED → REOPENED
Resolution: DUPLICATE → ---

Honza, there is a similar failure to this one, but with one difference being that "listServiceWorkerRegistrations" appears on the failure line,
instead of "listWorkers":
https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=307848926&repo=autoland&lineNumber=20791

Should we modify the summary of this failure to mention both, or make a separate bug?

Flags: needinfo?(odvarko)

Julian, any suggestions here?

Honza

Flags: needinfo?(odvarko) → needinfo?(jdescottes)

Should we modify the summary of this failure to mention both, or make a separate bug?

Looking at the stacktrace and doing some preliminary investigation, both issues are very similar. It would make sense to have a single bug and to try to address them at the same time.

Some additional info about the intermittent: our TargetList reacts to various events to retrieve new targets. Retrieving workers and service workers is highly async for now, and the client can be destroyed after we received the event but while we still need to call some APIs to retrieve the targets. In some methods we acknowledge this, eg https://searchfox.org/mozilla-central/rev/1b95a0179507a4dc7d4b0c94c2df420dc1a72885/devtools/shared/resources/legacy-target-watchers/legacy-serviceworkers-watcher.js#112-123 . We could use similar patterns in the methods showing up in the stack traces in order to fix this class of intermittents. Note that we have a safeAsyncMethod helper that could be useful here.

Flags: needinfo?(jdescottes)
Summary: Intermittent devtools/shared/resources/tests/browser_target_list_processes.js | A promise chain failed to handle a rejection: Connection closed, pending request to root, type listWorkers failed → Intermittent devtools/shared/resources/tests/*.js | A promise chain failed to handle a rejection: Connection closed, pending request to root, type listWorkers failed
Status: REOPENED → RESOLVED
Closed: 5 years ago4 years ago
Resolution: --- → INCOMPLETE
Status: RESOLVED → REOPENED
Resolution: INCOMPLETE → ---
Assignee: nobody → poirot.alex
Blocks: 1681698
Pushed by apoirot@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/0ef876462c42 [devtools] Prevent exception during toolbox destroy in worker legacy listeners. r=jdescottes
Status: REOPENED → RESOLVED
Closed: 4 years ago4 years ago
Resolution: --- → FIXED
Target Milestone: --- → 87 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: