Closed Bug 1755274 Opened 2 years ago Closed 2 years ago

Intermittent toolkit/components/pictureinpicture/tests/browser_telemetry_togglePiP.js | Test timed out -

Categories

(Toolkit :: Picture-in-Picture, defect, P5)

defect
Points:
3

Tracking

()

RESOLVED FIXED
101 Branch
Tracking Status
firefox101 --- fixed

People

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

References

(Blocks 1 open bug, )

Details

(Keywords: intermittent-failure, Whiteboard: [fidefe-MR1-2022] )

Attachments

(3 files)

Filed by: abutkovits [at] mozilla.com
Parsed log: https://treeherder.mozilla.org/logviewer?job_id=367784232&repo=autoland
Full log: https://firefox-ci-tc.services.mozilla.com/api/queue/v1/task/Yh7m-YXPShqLB0tDUIxzYQ/runs/0/artifacts/public/logs/live_backing.log


[task 2022-02-14T10:37:47.996Z] 10:37:47     INFO - TEST-START | toolkit/components/pictureinpicture/tests/browser_telemetry_togglePiP.js
[task 2022-02-14T10:38:33.000Z] 10:38:33     INFO - TEST-INFO | started process screentopng
[task 2022-02-14T10:38:33.627Z] 10:38:33     INFO - TEST-INFO | screentopng: exit 0
[task 2022-02-14T10:38:33.628Z] 10:38:33     INFO - Buffered messages logged at 10:37:47
[task 2022-02-14T10:38:33.628Z] 10:38:33     INFO - Entering test bound 
[task 2022-02-14T10:38:33.629Z] 10:38:33     INFO - Buffered messages logged at 10:37:48
[task 2022-02-14T10:38:33.630Z] 10:38:33     INFO - Waiting for videos to be ready
[task 2022-02-14T10:38:33.630Z] 10:38:33     INFO - Waiting for 'canplaythrough' for 'with-controls'
[task 2022-02-14T10:38:33.631Z] 10:38:33     INFO - Buffered messages finished
[task 2022-02-14T10:38:33.632Z] 10:38:33     INFO - TEST-UNEXPECTED-FAIL | toolkit/components/pictureinpicture/tests/browser_telemetry_togglePiP.js | Test timed out - 
[task 2022-02-14T10:38:33.632Z] 10:38:33     INFO - GECKO(17269) | MEMORY STAT | vsize 3814MB | residentFast 358MB | heapAllocated 202MB
[task 2022-02-14T10:38:33.633Z] 10:38:33     INFO - TEST-OK | toolkit/components/pictureinpicture/tests/browser_telemetry_togglePiP.js | took 45009ms
[task 2022-02-14T10:38:33.633Z] 10:38:33     INFO - Not taking screenshot here: see the one that was previously logged
[task 2022-02-14T10:38:33.633Z] 10:38:33     INFO - TEST-UNEXPECTED-FAIL | toolkit/components/pictureinpicture/tests/browser_telemetry_togglePiP.js | Found a tab after previous test timed out: http://example.com/browser/toolkit/components/pictureinpicture/tests/test-page.html - 
[task 2022-02-14T10:38:33.633Z] 10:38:33     INFO - checking window state
[task 2022-02-14T10:38:33.634Z] 10:38:33     INFO - TEST-START | toolkit/components/pictureinpicture/tests/browser_text_tracks_webvtt_1.js
[task 2022-02-14T10:38:33.638Z] 10:38:33     INFO - Not taking screenshot here: see the one that was previously logged
[task 2022-02-14T10:38:33.639Z] 10:38:33     INFO - Buffered messages logged at 10:38:33
[task 2022-02-14T10:38:33.642Z] 10:38:33     INFO - Entering test bound test_text_tracks_new_window_pref_disabled
[task 2022-02-14T10:38:33.643Z] 10:38:33     INFO - Running test: new window - pref disabled
[task 2022-02-14T10:38:33.643Z] 10:38:33     INFO - Buffered messages finished
[task 2022-02-14T10:38:33.644Z] 10:38:33     INFO - TEST-UNEXPECTED-FAIL | toolkit/components/pictureinpicture/tests/browser_telemetry_togglePiP.js | Uncaught exception received from previously timed out test - AbortError: Actor 'SpecialPowers' destroyed before query 'Spawn' was resolved
[task 2022-02-14T10:38:33.645Z] 10:38:33     INFO - GECKO(17269) | JavaScript error: chrome://mochikit/content/browser-test.js, line 1052: TypeError: can't access property "shift", currentScope.__tasks is null
[task 2022-02-14T10:38:33.645Z] 10:38:33     INFO - Console message: [JavaScript Error: "TypeError: can't access property "shift", currentScope.__tasks is null" {file: "chrome://mochikit/content/browser-test.js" line: 1052}]
[task 2022-02-14T10:38:33.646Z] 10:38:33     INFO - Preparing video and initial text tracks
[task 2022-02-14T10:38:33.646Z] 10:38:33     INFO - Waiting for videos to be ready
[task 2022-02-14T10:38:33.647Z] 10:38:33     INFO - TEST-PASS | toolkit/components/pictureinpicture/tests/browser_text_tracks_webvtt_1.js | Number of tracks loaded should be 5 - 5 == 5 - 

Update:
There have been 117 failures within the last 7 days:
• 36 failures on Linux 18.04 x64 WebRender asan opt
• 21 failures on Linux 18.04 x64 WebRender debug
• 39 failures on Linux 18.04 x64 WebRender opt
• 21 failures on Linux 18.04 x64 WebRender Shippable opt
Recent failure log: https://treeherder.mozilla.org/logviewer?job_id=372504670&repo=autoland&lineNumber=23792

[task 2022-03-27T15:46:49.964Z] 15:46:49     INFO - TEST-START | toolkit/components/pictureinpicture/tests/browser_telemetry_togglePiP.js
[task 2022-03-27T15:46:49.985Z] 15:46:49     INFO - GECKO(7904) | [Child 7995: Main Thread]: I/DocShellAndDOMWindowLeak ++DOCSHELL 7f2d6822b000 == 2 [pid = 7995] [id = 62]
[task 2022-03-27T15:46:49.986Z] 15:46:49     INFO - GECKO(7904) | [Child 7995: Main Thread]: I/DocShellAndDOMWindowLeak ++DOMWINDOW == 7 (7f2d734be260) [pid = 7995] [serial = 145] [outer = 0]
[task 2022-03-27T15:46:49.986Z] 15:46:49     INFO - GECKO(7904) | [Child 7995: Main Thread]: I/DocShellAndDOMWindowLeak ++DOMWINDOW == 8 (7f2d6822b400) [pid = 7995] [serial = 146] [outer = 7f2d734be260]
[task 2022-03-27T15:46:50.112Z] 15:46:50     INFO - GECKO(7904) | [Child 7995: Main Thread]: I/DocShellAndDOMWindowLeak ++DOMWINDOW == 9 (7f2d6822c800) [pid = 7995] [serial = 147] [outer = 7f2d734be260]
[task 2022-03-27T15:46:52.353Z] 15:46:52     INFO - GECKO(7904) | [Parent 7904: Main Thread]: I/DocShellAndDOMWindowLeak --DOMWINDOW == 25 (7fc88de7b7d0) [pid = 7904] [serial = 126] [outer = 0] [url = chrome://browser/content/browser.xhtml]
<...>
[task 2022-03-27T15:47:27.422Z] 15:47:27     INFO - GECKO(7904) | [Child 7995: Main Thread]: I/DocShellAndDOMWindowLeak --DOMWINDOW == 2 (7f2d690b5c00) [pid = 7995] [serial = 74] [outer = 0] [url = http://example.com/browser/toolkit/components/pictureinpicture/tests/test-media-stream.html]
[task 2022-03-27T15:48:19.973Z] 15:48:19     INFO - TEST-INFO | started process screentopng
[task 2022-03-27T15:48:20.385Z] 15:48:20     INFO - TEST-INFO | screentopng: exit 0
[task 2022-03-27T15:48:20.385Z] 15:48:20     INFO - Buffered messages logged at 15:46:49
[task 2022-03-27T15:48:20.385Z] 15:48:20     INFO - Entering test bound 
[task 2022-03-27T15:48:20.386Z] 15:48:20     INFO - Buffered messages logged at 15:46:50
[task 2022-03-27T15:48:20.386Z] 15:48:20     INFO - Waiting for videos to be ready
[task 2022-03-27T15:48:20.386Z] 15:48:20     INFO - Waiting for 'canplaythrough' for 'no-controls'
[task 2022-03-27T15:48:20.386Z] 15:48:20     INFO - Buffered messages finished
[task 2022-03-27T15:48:20.386Z] 15:48:20     INFO - TEST-UNEXPECTED-FAIL | toolkit/components/pictureinpicture/tests/browser_telemetry_togglePiP.js | Test timed out - 
[task 2022-03-27T15:48:20.386Z] 15:48:20     INFO - GECKO(7904) | MEMORY STAT | vsize 3854MB | residentFast 478MB | heapAllocated 207MB
[task 2022-03-27T15:48:20.386Z] 15:48:20     INFO - TEST-OK | toolkit/components/pictureinpicture/tests/browser_telemetry_togglePiP.js | took 90020ms
[task 2022-03-27T15:48:20.386Z] 15:48:20     INFO - Not taking screenshot here: see the one that was previously logged
[task 2022-03-27T15:48:20.387Z] 15:48:20     INFO - TEST-UNEXPECTED-FAIL | toolkit/components/pictureinpicture/tests/browser_telemetry_togglePiP.js | Found a tab after previous test timed out: http://example.com/browser/toolkit/components/pictureinpicture/tests/test-page.html - 
[task 2022-03-27T15:48:20.388Z] 15:48:20     INFO - GECKO(7904) | [Child 8110: Main Thread]: I/DocShellAndDOMWindowLeak ++DOCSHELL 7fcf3af32400 == 1 [pid = 8110] [id = 76]
[task 2022-03-27T15:48:20.389Z] 15:48:20     INFO - GECKO(7904) | [Child 8110: Main Thread]: I/DocShellAndDOMWindowLeak ++DOMWINDOW == 1 (7fcf3bef5260) [pid = 8110] [serial = 175] [outer = 0]
[task 2022-03-27T15:48:20.390Z] 15:48:20     INFO - GECKO(7904) | [Child 8110: Main Thread]: I/DocShellAndDOMWindowLeak ++DOMWINDOW == 2 (7fcf3af32800) [pid = 8110] [serial = 176] [outer = 7fcf3bef5260]
[task 2022-03-27T15:48:20.390Z] 15:48:20     INFO - checking window state
[task 2022-03-27T15:48:20.391Z] 15:48:20     INFO - TEST-START | toolkit/components/pictureinpicture/tests/browser_text_tracks_webvtt_1.js
Whiteboard: [stockwell needswork:owner]

Hi Mike! Can you please take a look at this? Maybe you could help us assign it to someone.
Thank you!

Flags: needinfo?(mconley)

Could the spike in failure rate be caused by Bug 1757927?

I can investigate the test failures here

Assignee: nobody → kpatenio
Status: NEW → ASSIGNED
Flags: needinfo?(mconley)

@kpatenio: Test got disabled to reduce in-tree noise. Please re-enable it in the fix.
Thank you.

Pushed by apavel@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/a63d935a13b9
disable browser_telemetry_togglePiP.js on linux64 opt r=aryx DONTBUILD
Whiteboard: [stockwell disable-recommended] → [stockwell disabled]

Here are my observations so far. Two pip-related bug fixes were merged around the same time the spike in failures occurred:

  1. Bug 1757927
  2. Bug 1757921

There is also this third bug fix that followed after option 2 (since it was dependent on it):

  1. Bug 1759603

I think the failure is coming from this waitForEvent() that never resolves. Option 1 relies on picture in picture being enabled via the pip toggle or context menu. On the other hand, the failure occurs while waiting for the video source to load - even before we enable picture in picture.

Among the first two bugs, I feel option 2 is likely to cause problems with the test. Bug 1757921 slightly modifies how we show/hide the pip toggle on a video element by adding the ability to modify that behaviour with a video wrapper, and it is possible that it is affecting how the video is loaded. (Although, it is still not clear to me why). While option 3 was merged more recently, option 3 has very minimal changes; it merely builds upon option 2 and does not even modify PictureInPictureChild.jsm.

I ran try pushes for linux x64 to see if commenting out any of the first two bug changes reduced intermittence, and it seems commenting out option 2 helps a bit. (Commenting out option 1 resulted in causing more failures for this test).

Attachment #9270880 - Attachment description: Bug 1755274 - disable browser_telemetry_togglePiP.js on Linux_64 for frequent failures. r=#intermittent-reviewers → Bug 1755274 - disable browser_telemetry_togglePiP.js on Linux_64_Nofis_debug for frequent failures. r=#intermittent-reviewers
Whiteboard: [stockwell disabled] → [stockwell disabled] [fidefe-MR1-2022]
Whiteboard: [stockwell disabled] [fidefe-MR1-2022] → [stockwell disabled][fidefe-MR1-2022]
Whiteboard: [stockwell disabled][fidefe-MR1-2022] → [fidefe-MR1-2022]
Whiteboard: [fidefe-MR1-2022] → [stockwell disabled][fidefe-MR1-2022]
Blocks: 1751244
Pushed by abutkovits@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/bfa3af44ba5f
disable browser_telemetry_togglePiP.js on Linux_64_Nofis_debug for frequent failures. r=intermittent-reviewers,pip-reviewers,jmaher,mconley
Points: --- → 3
Pushed by kpatenio@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/27f4c9e3ab52
adjust test order in browser.ini to reduce browser_telemetry_togglePiP.js intermittence. r=pip-reviewers,mhowell
Keywords: leave-open
Whiteboard: [stockwell disabled][fidefe-MR1-2022] → [fidefe-MR1-2022]
Status: ASSIGNED → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → 101 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: