Perma /css/css-scroll-snap/input/keyboard.html | Snaps to bottom-left after pressing ArrowDown - Test timed out
Categories
(Core :: Layout: Scrolling and Overflow, defect, P5)
Tracking
()
Tracking | Status | |
---|---|---|
firefox-esr102 | --- | unaffected |
firefox-esr115 | --- | unaffected |
firefox114 | --- | unaffected |
firefox115 | --- | unaffected |
firefox116 | --- | fixed |
People
(Reporter: intermittent-bug-filer, Assigned: botond)
References
(Regressed 1 open bug, Regression)
Details
(Keywords: intermittent-failure, intermittent-testcase, regression)
Attachments
(1 file, 1 obsolete file)
Filed by: nfay [at] mozilla.com
Parsed log: https://treeherder.mozilla.org/logviewer?job_id=420504773&repo=mozilla-central
Full log: https://firefox-ci-tc.services.mozilla.com/api/queue/v1/task/MJEHorPzQ8iYdKDn39Fv7g/runs/0/artifacts/public/logs/live_backing.log
[task 2023-06-24T11:27:28.545Z] 11:27:28 INFO - TEST-START | /css/css-scroll-snap/input/keyboard.html
[task 2023-06-24T11:27:28.592Z] 11:27:28 INFO - Setting pref dom.animations-api.compositing.enabled to true
[task 2023-06-24T11:28:09.224Z] 11:28:09 INFO -
[task 2023-06-24T11:28:09.224Z] 11:28:09 INFO - TEST-PASS | /css/css-overscroll-behavior/parsing/overscroll-behavior-valid.html | e.style['overscroll-behavior-x'] = "auto" should set the property value
[task 2023-06-24T11:28:09.224Z] 11:28:09 INFO - TEST-PASS | /css/css-overscroll-behavior/parsing/overscroll-behavior-valid.html | e.style['overscroll-behavior-y'] = "contain" should set the property value
[task 2023-06-24T11:28:09.224Z] 11:28:09 INFO - TEST-PASS | /css/css-overscroll-behavior/parsing/overscroll-behavior-valid.html | e.style['overscroll-behavior-y'] = "none" should set the property value
[task 2023-06-24T11:28:09.224Z] 11:28:09 INFO - TEST-PASS | /css/css-overscroll-behavior/parsing/overscroll-behavior-valid.html | e.style['overscroll-behavior-y'] = "auto" should set the property value
[task 2023-06-24T11:28:09.224Z] 11:28:09 INFO - TEST-PASS | /css/css-overscroll-behavior/parsing/overscroll-behavior-valid.html | e.style['overscroll-behavior-inline'] = "contain" should set the property value
[task 2023-06-24T11:28:09.224Z] 11:28:09 INFO - TEST-PASS | /css/css-overscroll-behavior/parsing/overscroll-behavior-valid.html | e.style['overscroll-behavior-inline'] = "none" should set the property value
[task 2023-06-24T11:28:09.224Z] 11:28:09 INFO - TEST-PASS | /css/css-overscroll-behavior/parsing/overscroll-behavior-valid.html | e.style['overscroll-behavior-inline'] = "auto" should set the property value
[task 2023-06-24T11:28:09.224Z] 11:28:09 INFO - TEST-PASS | /css/css-overscroll-behavior/parsing/overscroll-behavior-valid.html | e.style['overscroll-behavior-block'] = "contain" should set the property value
[task 2023-06-24T11:28:09.224Z] 11:28:09 INFO - TEST-PASS | /css/css-overscroll-behavior/parsing/overscroll-behavior-valid.html | e.style['overscroll-behavior-block'] = "none" should set the property value
[task 2023-06-24T11:28:09.224Z] 11:28:09 INFO - TEST-PASS | /css/css-overscroll-behavior/parsing/overscroll-behavior-valid.html | e.style['overscroll-behavior-block'] = "auto" should set the property value
[task 2023-06-24T11:28:09.224Z] 11:28:09 INFO - TEST-UNEXPECTED-TIMEOUT | /css/css-scroll-snap/input/keyboard.html | Snaps to bottom-left after pressing ArrowDown - Test timed out
[task 2023-06-24T11:28:09.225Z] 11:28:09 INFO - TEST-INFO | expected FAIL
[task 2023-06-24T11:28:09.225Z] 11:28:09 INFO -
[task 2023-06-24T11:28:09.225Z] 11:28:09 INFO - TEST-UNEXPECTED-NOTRUN | /css/css-scroll-snap/input/keyboard.html | Snaps to top-left after pressing ArrowUp - expected PASS
[task 2023-06-24T11:28:09.225Z] 11:28:09 INFO -
[task 2023-06-24T11:28:09.225Z] 11:28:09 INFO - TEST-UNEXPECTED-NOTRUN | /css/css-scroll-snap/input/keyboard.html | Snaps to top-right after pressing ArrowRight - expected PASS
[task 2023-06-24T11:28:09.225Z] 11:28:09 INFO -
[task 2023-06-24T11:28:09.225Z] 11:28:09 INFO - TEST-UNEXPECTED-NOTRUN | /css/css-scroll-snap/input/keyboard.html | Snaps to top-left after pressing ArrowLeft - expected PASS
[task 2023-06-24T11:28:09.226Z] 11:28:09 INFO -
[task 2023-06-24T11:28:09.226Z] 11:28:09 INFO - TEST-UNEXPECTED-NOTRUN | /css/css-scroll-snap/input/keyboard.html | If the original intended offset is valid as making a snap area cover thesnapport, and there's no other snap offset in between, use the originalintended offset - expected PASS
[task 2023-06-24T11:28:09.226Z] 11:28:09 INFO -
[task 2023-06-24T11:28:09.226Z] 11:28:09 INFO - TEST-UNEXPECTED-NOTRUN | /css/css-scroll-snap/input/keyboard.html | If the original intended offset is valid as making a snap area cover the snapport, but there's a defined snap offset in between, use the defined snap offset. - expected TIMEOUT
[task 2023-06-24T11:28:09.226Z] 11:28:09 INFO - TEST-INFO | expected TIMEOUT
[task 2023-06-24T11:28:09.289Z] 11:28:09 INFO - TEST-TIMEOUT | /css/css-scroll-snap/input/keyboard.html | took 40744ms
[task 2023-06-24T11:28:09.657Z] 11:28:09 INFO - STDOUT: cleanup aborted: Unable to remount device
[task 2023-06-24T11:28:09.746Z] 11:28:09 INFO - STDOUT: cleanup aborted: Unable to remount device
[task 2023-06-24T11:28:09.747Z] 11:28:09 INFO - Closing logging queue
[task 2023-06-24T11:28:09.747Z] 11:28:09 INFO - queue closed
[task 2023-06-24T11:28:09.761Z] 11:28:09 INFO - Setting up ssl
[task 2023-06-24T11:28:09.776Z] 11:28:09 INFO - certutil | b''
[task 2023-06-24T11:28:09.793Z] 11:28:09 INFO - certutil | b''
[task 2023-06-24T11:28:09.803Z] 11:28:09 INFO - certutil | b'\nCertificate Nickname Trust Attributes\n SSL,S/MIME,JAR/XPI\n\nweb-platform-tests CT,, \n'
[task 2023-06-24T11:28:10.364Z] 11:28:10 INFO - adb Granting important runtime permissions to org.mozilla.geckoview.test_runner
[task 2023-06-24T11:28:11.567Z] 11:28:11 INFO - adb launch_application: am start -W -n org.mozilla.geckoview.test_runner/org.mozilla.geckoview.test_runner.TestRunnerActivity -a android.intent.action.MAIN --es env0 MOZ_CRASHREPORTER=1 --es env1 MOZ_CRASHREPORTER_NO_REPORT=1 --es env2 MOZ_CRASHREPORTER_SHUTDOWN=1 --es env3 MOZ_HIDE_RESULTS_TABLE=1 --es env4 MOZ_IN_AUTOMATION=1 --es env5 MOZ_LOG=signaling:3,mtransport:4,DataChannel:4,jsep:4 --es env6 R_LOG_LEVEL=6 --es env7 R_LOG_DESTINATION=stderr --es env8 R_LOG_VERBOSE=1 --es env9 MOZ_PROCESS_LOG=/tmp/tmpxykkhsqfpidlog --es env10 MOZ_DISABLE_NONLOCAL_CONNECTIONS=1 --es arg0 -no-remote --es arg1 -profile --es arg2 /data/local/tmp/test_root/profile --es arg3 --marionette --es arg4 about:blank --ez use_multiprocess True
[task 2023-06-24T11:28:12.799Z] 11:28:12 INFO - Starting runner
[task 2023-06-24T11:28:13.713Z] 11:28:13 INFO - TEST-START | /css/css-scroll-snap/input/mouse-wheel.html
Comment 1•2 years ago
•
|
||
Hello, could you take a look at this failure? It is perma failing on central and it seems that it might be caused by Bug 1835600 but we are not entirely sure. Thank you!
Assignee | ||
Comment 2•2 years ago
|
||
Sure, I'll take a look. Leaving the needinfo on me for now.
Assignee | ||
Comment 3•2 years ago
|
||
At least in a local run, this test times out for me even without the fix for bug 1835600.
Assignee | ||
Comment 4•2 years ago
|
||
I overlooked the fact that the tests's ini file already expects the test to fail or timeout in many configurations. Moreover, these annotations seem to have been generated automatically. This suggests that our behaviour on the test is already fairly broken, and the reason for that brokenness is not well understood.
So, I'm a bit unclear on what the expectation here is. If a patch I land changes the behaviour in a particular configuration from "fail" to "timeout", should that be grounds to back out my patch? Or would it be appropriate to adjust the expectation, and then track greening up the test in various configurations in an existing bug (like bug 1642830 in this case)?
Assignee | ||
Comment 5•2 years ago
|
||
Assignee | ||
Comment 6•2 years ago
|
||
(In reply to Botond Ballo [:botond] from comment #4)
If a patch I land changes the behaviour in a particular configuration from "fail" to "timeout"
I did confirm via Try that it's bug 1835600 which had this effect.
Comment 7•2 years ago
|
||
Set release status flags based on info from the regressing bug 1835600
Assignee | ||
Comment 8•2 years ago
|
||
I did some investigation of the timeout and found that the underlying issue is the same one that necessitated using a fuzzy check in helper_scroll_snap_on_page_down_scroll.html. However, I'm less sure if we can make that kind of change of a web-platform-test.
Assignee | ||
Comment 9•2 years ago
|
||
One interesting thing I found is that for main-thread scrolling, the "range" around the scroll destination (which constrains the behaviour of ClampAndAlignWithPixels
) is set to empty when the scrolling is done for the purpose of scroll snapping. In the case of smooth scrolling, this range is then retained on the AsyncScroll
object and respected for scrolling done by the animation.
However, when the animation is handed off to APZ, we don't propagate any such "range", nor information that the animation is done for the purpose of scroll snapping.
Comment 10•2 years ago
|
||
I don't think it's a good idea to amend the web platform test itself due to our internal technical debt.
Bug 1774315 is truly our fault inside Gecko. If, for example, a site does something to make sure the scroll position (or a snap point) is, say 40px, after the site does scroll to 40px, and if the site does try to align the scroll position to the given position if it's not. It will repeatedly try to scroll the 40px. That's a bug.
Anyway just adjusting the expectation in the ini file should be fine for me. The test itself has been quite flaky, I'd hope I can have a time to take a look as a part of the 2023 interop task.
(In reply to Botond Ballo [:botond] from comment #9)
One interesting thing I found is that for main-thread scrolling, the "range" around the scroll destination (which constrains the behaviour of
ClampAndAlignWithPixels
) is set to empty when the scrolling is done for the purpose of scroll snapping. In the case of smooth scrolling, this range is then retained on theAsyncScroll
object and respected for scrolling done by the animation.However, when the animation is handed off to APZ, we don't propagate any such "range", nor information that the animation is done for the purpose of scroll snapping.
That sounds like another bug. :/ But I am not sure we should address it since I'd rather fix bug 1774315.
Assignee | ||
Comment 11•2 years ago
|
||
Updated•2 years ago
|
Assignee | ||
Comment 12•2 years ago
|
||
I am going to propose that we take the safer approach of restricting the handoff to non-scrollsnap cases for now.
I will file a follow-up for the scrollsnap case (and maybe we can just make it depend on bug 1774315 rather than devising new workarounds).
Assignee | ||
Comment 13•2 years ago
|
||
(I will note that the handoff condition for relative scrolls also excludes scroll snapping.)
Comment 14•2 years ago
|
||
Oops, I missed that all perma failure here are on Android. And the wpt lacks <meta name="viewport">
tag, is it just fixed by adding it?
Assignee | ||
Comment 15•2 years ago
|
||
(In reply to Hiroyuki Ikezoe (:hiro) from comment #14)
Oops, I missed that all perma failure here are on Android. And the wpt lacks
<meta name="viewport">
tag, is it just fixed by adding it?
It seems to locally. I will see how it fares on Try.
Assignee | ||
Comment 16•2 years ago
|
||
Comment hidden (Intermittent Failures Robot) |
Updated•2 years ago
|
Comment 18•2 years ago
|
||
Comment 20•2 years ago
|
||
bugherder |
Assignee | ||
Updated•2 years ago
|
Comment hidden (Intermittent Failures Robot) |
Comment 23•2 years ago
|
||
Set release status flags based on info from the regressing bug 1835600
Description
•