Bug 190627

Summary: Some WK1 repaint tests are flakey
Product: WebKit Reporter: Simon Fraser (smfr) <simon.fraser>
Component: Tools / TestsAssignee: Simon Fraser (smfr) <simon.fraser>
Status: RESOLVED FIXED    
Severity: Normal CC: ben_schwartz, ews-watchlist, jlewis3, lforschler, rackler, realdawei, ryanhaddad, simon.fraser, tsavell, webkit-bug-importer, zalan
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugs.webkit.org/show_bug.cgi?id=189752
https://bugs.webkit.org/show_bug.cgi?id=189753
https://bugs.webkit.org/show_bug.cgi?id=189841
Attachments:
Description Flags
Patch
zalan: review+, ews-watchlist: commit-queue-
Archive of layout-test-results from ews121 for ios-simulator-wk2 none

Description Simon Fraser (smfr) 2018-10-16 10:18:17 PDT
compositing/repaint/iframes/compositing-iframe-scroll-repaint.html is flakey (maybe only with the patch from bug 90342).

When it breaks, the compositing layer already has a repaint, so in GraphicsLayerCA::setNeedsDisplayInRect() the dirty rects already contain the rect and we bail.

This suggests that testRunner.displayAndTrackRepaints() isn't triggering paints in all compositing layers in WK1; need to see if we're flushing layers at all in that code path.
Comment 1 Radar WebKit Bug Importer 2018-10-22 14:22:49 PDT
<rdar://problem/45466143>
Comment 2 Dawei Fenton (:realdawei) 2018-10-22 15:05:17 PDT
The following tests were marked flaky in Mojave WK1

compositing/masks/compositing-clip-path-change-no-repaint.html
compositing/repaint/iframes/compositing-iframe-scroll-repaint.html
compositing/repaint/iframes/compositing-iframe-with-fixed-background-doc-repaint.html

revision: https://trac.webkit.org/changeset/237333/webkit
Comment 3 Simon Fraser (smfr) 2018-11-04 09:58:30 PST
It looks like we never get a -viewWillDraw after the load event and before zero-delay timers, which is controlled by whether runloop observers fire at that time; they may not if there is no idle phase in the runloop.
Comment 4 Simon Fraser (smfr) 2018-11-07 00:39:42 PST
Created attachment 354069 [details]
Patch
Comment 5 EWS Watchlist 2018-11-07 02:24:18 PST
Comment on attachment 354069 [details]
Patch

Attachment 354069 [details] did not pass ios-sim-ews (ios-simulator-wk2):
Output: https://webkit-queues.webkit.org/results/9891094

New failing tests:
compositing/columns/composited-rl-paginated-repaint.html
compositing/repaint/repaint-on-layer-grouping-change.html
compositing/columns/composited-lr-paginated-repaint.html
Comment 6 EWS Watchlist 2018-11-07 02:24:20 PST
Created attachment 354077 [details]
Archive of layout-test-results from ews121 for ios-simulator-wk2

The attached test failures were seen while running run-webkit-tests on the ios-sim-ews.
Bot: ews121  Port: ios-simulator-wk2  Platform: Mac OS X 10.13.6
Comment 7 Simon Fraser (smfr) 2018-11-07 13:47:29 PST
https://trac.webkit.org/r237942
Comment 8 Alexey Proskuryakov 2019-05-11 16:18:57 PDT
*** Bug 189841 has been marked as a duplicate of this bug. ***
Comment 9 Alexey Proskuryakov 2019-05-11 16:34:12 PDT
*** Bug 189752 has been marked as a duplicate of this bug. ***
Comment 10 Karl Rackler 2023-09-20 09:31:41 PDT
Since this issue persists, updating test expectations.
Comment 11 EWS 2023-09-20 09:39:50 PDT
Test gardening commit 268204@main (d4d29cc87cd9): <https://commits.webkit.org/268204@main>

Reviewed commits have been landed. Closing PR #17976 and removing active labels.
Comment 12 Ben Schwartz 2023-10-10 17:15:57 PDT
Issue persists (and has further regressed) in macOS Sonoma.

This test is now a consistent failure on the following platforms:
 - wk1 release
 - iOS 16+ wk2 release
 - Sonoma+ wk2 release.

Filing new expectations under this bug and duping bug #177397 to this one.
Comment 13 Ben Schwartz 2023-10-10 17:43:35 PDT
CLARIFICATION:


compositing/masks/compositing-clip-path-change-no-repaint.html is now a consistent failure on the following platforms:
 - macOS wk1 release
 - iOS wk2 release
 - Sonoma+ wk2 release.
I will create a new bug for this one.


The following tests are constantly failing on Sonoma wk1 and iOS wk2:

compositing/repaint/iframes/compositing-iframe-scroll-repaint.html
compositing/repaint/iframes/compositing-iframe-with-fixed-background-doc-repaint.html
 -> No action needed, as expectations already cover these tests.


Verified issue resolved:

compositing/columns/composited-lr-paginated-repaint.html
compositing/columns/composited-rl-paginated-repaint.html
compositing/repaint/repaint-on-layer-grouping-change.html