Timeout in toolkit/content/tests/widgets/test_videocontrols_scrubber_position_nopreload.html in M-xorig
Categories
(GeckoView Graveyard :: Sandboxing, defect, P2)
Tracking
(Not tracked)
People
(Reporter: owlish, Assigned: m_kato)
References
Details
(Whiteboard: [fission:android][fxdroid])
This test fails on all Android builds with isolateEverything
isolation strategy (fission.webContentIsolationStrategy set to 1, or default).
Failure:
[task 2023-09-26T00:51:53.573Z] 00:51:53 WARNING - TEST-UNEXPECTED-FAIL | toolkit/content/tests/widgets/test_videocontrols_scrubber_position_nopreload.html | Test timed out. -
[task 2023-09-26T00:51:53.573Z] 00:51:53 WARNING - TEST-UNEXPECTED-FAIL | toolkit/content/tests/widgets/test_videocontrols_scrubber_position_nopreload.html | TypeError: Fullscreen request aborted - Should not throw any errors
[task 2023-09-26T00:51:53.574Z] 00:51:53 INFO - nextTick/<@SimpleTest/SimpleTest.js:2216:26
[task 2023-09-26T00:51:53.574Z] 00:51:53 INFO - async*nextTick@SimpleTest/SimpleTest.js:2233:11
[task 2023-09-26T00:51:53.574Z] 00:51:53 INFO - setTimeout handler*SimpleTest_setTimeoutShim@SimpleTest/SimpleTest.js:922:41
[task 2023-09-26T00:51:53.574Z] 00:51:53 INFO - add_task@SimpleTest/SimpleTest.js:2137:17
[task 2023-09-26T00:51:53.574Z] 00:51:53 INFO - @toolkit/content/tests/widgets/test_videocontrols_scrubber_position_nopreload.html?currentTestURL=toolkit%2Fcontent%2Ftests%2Fwidgets%2Ftest_videocontrols_scrubber_position_nopreload.html&closeWhenDone=1&showTestReport=false&expected=pass:26:9
[task 2023-09-26T00:51:53.574Z] 00:51:53 WARNING - TEST-UNEXPECTED-FAIL | SimpleTest | this test already called finish!
Reporter | ||
Updated•1 year ago
|
Updated•1 year ago
|
Reporter | ||
Comment 1•1 year ago
|
||
Hi Gijs, it looks like you might be familiar with this area, do you have an idea what might be going on here?
Comment 2•1 year ago
|
||
I'm afraid I don't immediately know what's wrong.
The context for this test was that the shared desktop/android video controls scrubber code tries to optimize how it updates its timeline and time indicator so it doesn't use CPU unnecessarily, and then we accidentally introduced edgecases where these UI elements did not update at all. So the test verifies that the UI updates as the video plays and/or the user interacts with the scrubber, after different states in which this wasn't happening.
One part of this is that the test requests that the video moves to fullscreen. This appears not to work correctly, and the logcat has:
09-26 00:46:35.269 22342 22357 I GeckoDump: ⰲ겿{"action":"log","time":1695689195268,"thread":null,"pid":null,"source":"mochitest","level":"INFO","message":"add_task | Entering test_progress_and_scrubber_once_fullscreened","js_source":"TestRunner.js"}ⰲ겿
09-26 00:46:35.271 22342 22357 I GeckoDump: ⰲ겿{"action":"log","time":1695689195270,"thread":null,"pid":null,"source":"mochitest","level":"INFO","message":"Setting max width","js_source":"TestRunner.js"}ⰲ겿
09-26 00:46:35.274 22342 22357 I GeckoDump: ⰲ겿{"action":"log","time":1695689195273,"thread":null,"pid":null,"source":"mochitest","level":"INFO","message":"Current video progress = 0.50","js_source":"TestRunner.js"}ⰲ겿
09-26 00:46:35.315 22274 22296 E eglCodecCommon: glUtilsParamSize: unknow param 0x00008caa
09-26 00:46:35.325 23149 23187 I Gecko : [Child 23149, MediaDecoderStateMachine #1] WARNING: Decoder=71eec1a97f00 state=SEEKING_ACCURATE Audio not synced after seek, maybe a poorly muxed file?: file /builds/worker/checkouts/gecko/dom/media/MediaDecoderStateMachine.cpp:2097
09-26 00:46:35.327 22342 22357 I GeckoDump: ⰲ겿{"action":"log","time":1695689195326,"thread":null,"pid":null,"source":"mochitest","level":"INFO","message":"Hid progress and scrubber.","js_source":"TestRunner.js"}ⰲ겿
09-26 00:46:35.333 23149 23164 D GeckoViewContentDelegateChild[C]: handleEvent: MozDOMFullscreen:Request
09-26 00:46:35.334 22199 22214 D GeckoViewContentDelegateParent: receiveMessage: GeckoView:DOMFullscreenRequest
09-26 00:46:35.412 22274 22296 E eglCodecCommon: glUtilsParamSize: unknow param 0x00008caa
09-26 00:46:35.417 22199 22214 D GeckoViewContent: handleEvent: MozDOMFullscreen:Entered
09-26 00:46:35.423 22342 22357 D GeckoViewContent[C]: receiveMessage: GeckoView:DOMFullscreenEntered
09-26 00:46:35.432 22199 22214 D GeckoViewContentDelegateParent: receiveMessage: GeckoView:DOMFullscreenExit
09-26 00:46:35.437 22199 22214 D GeckoViewContent: handleEvent: MozDOMFullscreen:Exited
09-26 00:46:35.447 22342 22357 D GeckoViewContent[C]: receiveMessage: GeckoView:DOMFullscreenExited
followed a bit later by the TypeError that the fullscreen was aborted (which broke the task, which is presumably why things time out).
I don't know why the fullscreen request would not work in this situation specifically on android-with-fission. But the logs show we exit DOM full screen immediately, and presumably that's correlated with the requestFullscreen
throwing/rejecting, which is breaking the test.
Does that help at all?
Reporter | ||
Comment 3•1 year ago
|
||
Ah, so it looks like this bug is related to full screen. We have some bugs filed for that, I'll block this one on them. If the fixes for those bugs help resolve this one - we'll close as a dupe.
Thank you for the context, Gijs!
Assignee | ||
Updated•1 year ago
|
Assignee | ||
Updated•1 year ago
|
Updated•9 months ago
|
Description
•