WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
Bug 214688
REGRESSION (
r264690
): [ iOS wk2 ] editing/selection/shift-click-includes-existing-selection.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=214688
Summary
REGRESSION (r264690): [ iOS wk2 ] editing/selection/shift-click-includes-exis...
Karl Rackler
Reported
2020-07-23 08:42:39 PDT
Description: editing/selection/shift-click-includes-existing-selection.html This appears to have started after
https://trac.webkit.org/changeset/264690/webkit
. History:
https://results.webkit.org/?suite=layout-tests&test=editing%2Fselection%2Fshift-click-includes-existing-selection.html&platform=ios&flavor=wk2&style=release&limit=50000
Diff: --- /Volumes/Data/slave/ipados-simulator-13-release-tests-wk2/build/layout-test-results/editing/selection/shift-click-includes-existing-selection-expected.txt +++ /Volumes/Data/slave/ipados-simulator-13-release-tests-wk2/build/layout-test-results/editing/selection/shift-click-includes-existing-selection-actual.txt @@ -24,13 +24,13 @@ | "The quick brown fox jumped over the " | <span> | id="start" -| "<#selection-anchor>lazy dog." +| "lazy dog." | " " | <p> | <span> | id="end" -| "T<#selection-focus>" +| "<#selection-caret>T" | "he quick brown fox jumped over the lazy dog." | " "
Attachments
Data collection
(1.57 MB, patch)
2020-07-24 13:47 PDT
,
Wenson Hsieh
no flags
Details
Formatted Diff
Diff
Data collection
(589.78 KB, patch)
2020-07-24 13:56 PDT
,
Wenson Hsieh
no flags
Details
Formatted Diff
Diff
Data collection (2)
(2.85 MB, patch)
2020-07-24 14:32 PDT
,
Wenson Hsieh
no flags
Details
Formatted Diff
Diff
Data collection (3)
(2.85 MB, patch)
2020-07-24 14:33 PDT
,
Wenson Hsieh
no flags
Details
Formatted Diff
Diff
Data collection (4)
(2.85 MB, patch)
2020-07-24 14:33 PDT
,
Wenson Hsieh
no flags
Details
Formatted Diff
Diff
Data collection (5)
(2.85 MB, patch)
2020-07-24 14:34 PDT
,
Wenson Hsieh
no flags
Details
Formatted Diff
Diff
Data collection (6)
(2.85 MB, patch)
2020-07-24 14:35 PDT
,
Wenson Hsieh
no flags
Details
Formatted Diff
Diff
Data collection (7)
(2.85 MB, patch)
2020-07-24 14:36 PDT
,
Wenson Hsieh
no flags
Details
Formatted Diff
Diff
Data collection (8)
(2.85 MB, patch)
2020-07-24 14:36 PDT
,
Wenson Hsieh
no flags
Details
Formatted Diff
Diff
Data collection (9)
(2.85 MB, patch)
2020-07-24 14:36 PDT
,
Wenson Hsieh
no flags
Details
Formatted Diff
Diff
Data collection (10)
(2.85 MB, patch)
2020-07-24 14:37 PDT
,
Wenson Hsieh
no flags
Details
Formatted Diff
Diff
Data collection (11)
(2.85 MB, patch)
2020-07-24 14:38 PDT
,
Wenson Hsieh
no flags
Details
Formatted Diff
Diff
Speculative fix?
(1.97 KB, patch)
2020-07-24 15:42 PDT
,
Wenson Hsieh
no flags
Details
Formatted Diff
Diff
Test another theory
(6.32 KB, patch)
2020-07-24 20:11 PDT
,
Wenson Hsieh
no flags
Details
Formatted Diff
Diff
Speculative fix #2
(3.95 KB, patch)
2020-07-25 12:29 PDT
,
Wenson Hsieh
no flags
Details
Formatted Diff
Diff
Test yet another theory
(8.25 KB, patch)
2020-07-25 16:33 PDT
,
Wenson Hsieh
no flags
Details
Formatted Diff
Diff
Test yet another theory
(13.01 KB, patch)
2020-07-25 16:41 PDT
,
Wenson Hsieh
no flags
Details
Formatted Diff
Diff
Test yet another theory
(14.16 KB, patch)
2020-07-26 00:26 PDT
,
Wenson Hsieh
no flags
Details
Formatted Diff
Diff
Speculative fix #3
(24.43 KB, patch)
2020-07-26 11:18 PDT
,
Wenson Hsieh
no flags
Details
Formatted Diff
Diff
Show Obsolete
(3)
View All
Add attachment
proposed patch, testcase, etc.
Radar WebKit Bug Importer
Comment 1
2020-07-23 08:43:16 PDT
<
rdar://problem/65993683
>
Karl Rackler
Comment 2
2020-07-23 08:50:36 PDT
I have marked these tests as failing while this issue is investigated.
https://trac.webkit.org/changeset/264765/webkit
Wenson Hsieh
Comment 3
2020-07-24 09:04:26 PDT
I haven’t been able to reproduce the text diff result at all locally, but I am observing a flaky timeout locally when running the test back-to-back for many iterations.
Wenson Hsieh
Comment 4
2020-07-24 13:47:07 PDT
Comment hidden (obsolete)
Created
attachment 405171
[details]
Data collection
Wenson Hsieh
Comment 5
2020-07-24 13:56:52 PDT
Comment hidden (obsolete)
Created
attachment 405172
[details]
Data collection
Wenson Hsieh
Comment 6
2020-07-24 14:32:23 PDT
Created
attachment 405175
[details]
Data collection (2)
Wenson Hsieh
Comment 7
2020-07-24 14:33:03 PDT
Created
attachment 405176
[details]
Data collection (3)
Wenson Hsieh
Comment 8
2020-07-24 14:33:47 PDT
Created
attachment 405177
[details]
Data collection (4)
Wenson Hsieh
Comment 9
2020-07-24 14:34:33 PDT
Created
attachment 405178
[details]
Data collection (5)
Wenson Hsieh
Comment 10
2020-07-24 14:35:52 PDT
Created
attachment 405179
[details]
Data collection (6)
Wenson Hsieh
Comment 11
2020-07-24 14:36:34 PDT
Created
attachment 405180
[details]
Data collection (7)
Wenson Hsieh
Comment 12
2020-07-24 14:36:44 PDT
Created
attachment 405181
[details]
Data collection (8)
Wenson Hsieh
Comment 13
2020-07-24 14:36:54 PDT
Created
attachment 405182
[details]
Data collection (9)
Wenson Hsieh
Comment 14
2020-07-24 14:37:03 PDT
Created
attachment 405183
[details]
Data collection (10)
Wenson Hsieh
Comment 15
2020-07-24 14:38:19 PDT
Created
attachment 405184
[details]
Data collection (11)
Wenson Hsieh
Comment 16
2020-07-24 15:42:10 PDT
Created
attachment 405192
[details]
Speculative fix?
Darin Adler
Comment 17
2020-07-24 15:52:43 PDT
Comment on
attachment 405192
[details]
Speculative fix? If it works, consider it reviewed.
Wenson Hsieh
Comment 18
2020-07-24 15:57:58 PDT
(In reply to Darin Adler from
comment #17
)
> Comment on
attachment 405192
[details]
> Speculative fix? > > If it works, consider it reviewed.
Thanks for taking a look! Unfortunately, this is speculative at best, as it seems EWS is also unable to reproduce this failure. I’ve also been unable to reproduce it locally, both when running the test for 1000s of iterations in isolation, and when running all the tests in the same directory for 100s of iterations. However, I *have* been able to reproduce a flaky timeout locally, whose root cause is described in this fix. I’m really hoping that this timeout I’ve observed locally is (somehow) the same issue as what the post-commit bots are seeing (both internal and non-internal), and that this fix will address what Karl and the other bot-watchers observed :/
EWS
Comment 19
2020-07-24 16:18:25 PDT
Committed
r264868
: <
https://trac.webkit.org/changeset/264868
> All reviewed patches have been landed. Closing bug and clearing flags on
attachment 405192
[details]
.
Wenson Hsieh
Comment 20
2020-07-24 19:18:45 PDT
(In reply to Wenson Hsieh from
comment #18
)
> (In reply to Darin Adler from
comment #17
) > > Comment on
attachment 405192
[details]
> > Speculative fix? > > > > If it works, consider it reviewed. > > Thanks for taking a look! > > Unfortunately, this is speculative at best, as it seems EWS is also unable > to reproduce this failure. I’ve also been unable to reproduce it locally, > both when running the test for 1000s of iterations in isolation, and when > running all the tests in the same directory for 100s of iterations. > > However, I *have* been able to reproduce a flaky timeout locally, whose root > cause is described in this fix. I’m really hoping that this timeout I’ve > observed locally is (somehow) the same issue as what the post-commit bots > are seeing (both internal and non-internal), and that this fix will address > what Karl and the other bot-watchers observed :/
<
https://build.webkit.org/builders/Apple%20iOS%2013%20Simulator%20Release%20WK2%20%28Tests%29/builds/5859/steps/layout-test/logs/stdio
> shows a text diff, so I don’t think this speculative fix worked (though, it is needed anyways in order to fix the rare timeout for this test). It’s very unfortunate that the above EWS runs ran the test 9000 times with 0 failures. I think the only way to proceed is to check in temporary debug logging for post-commit automation to run, until we can gather enough information for a second speculative fix.
Wenson Hsieh
Comment 21
2020-07-24 19:19:16 PDT
Reopening.
Wenson Hsieh
Comment 22
2020-07-24 20:11:07 PDT
Created
attachment 405218
[details]
Test another theory
EWS
Comment 23
2020-07-24 20:52:52 PDT
Committed
r264882
: <
https://trac.webkit.org/changeset/264882
> All reviewed patches have been landed. Closing bug and clearing flags on
attachment 405218
[details]
.
Wenson Hsieh
Comment 24
2020-07-24 20:53:38 PDT
(Reopening, because the last patch just adds logging).
Wenson Hsieh
Comment 25
2020-07-25 12:29:35 PDT
Created
attachment 405231
[details]
Speculative fix #2
EWS
Comment 26
2020-07-25 13:02:28 PDT
Committed
r264890
: <
https://trac.webkit.org/changeset/264890
> All reviewed patches have been landed. Closing bug and clearing flags on
attachment 405231
[details]
.
Wenson Hsieh
Comment 27
2020-07-25 15:46:46 PDT
(In reply to EWS from
comment #26
)
> Committed
r264890
: <
https://trac.webkit.org/changeset/264890
> > > All reviewed patches have been landed. Closing bug and clearing flags on >
attachment 405231
[details]
.
Still not enough to fix this :( From
https://build.webkit.org/builders/Apple%20iPadOS%2013%20Simulator%20Release%20WK2%20%28Tests%29/builds/4109/steps/layout-test/logs/stdio
...
> 14:57:30.770 78653 worker/9 editing/selection/shift-click-includes-existing-selection.html output stderr lines: > 14:57:30.770 78653 Synthesizing modifier keydown events. > 14:57:30.770 78653 Synthesizing tap. > 14:57:30.771 78653 -[WKContentView(WKInteraction) _singleTapIdentified:] - modifier flags: 0x00 > 14:57:30.771 78653 -[WKContentView(WKInteraction) _singleTapRecognized:] - modifier flags: 0x00 > 14:57:30.771 78653 Committing potential tap with modifiers: 0x00 > 14:57:30.771 78653 Handling synthetic click at (16, 223) with modifiers: 0x00 > 14:57:30.771 78653 Synthesizing modifier keyup events. > 14:57:31.269 78653 "ruby -I /Volumes/Data/slave/ipados-simulator-13-release-tests-wk2/build/Websites/bugs.webkit.org/PrettyPatch /Volumes/Data/slave/ipados-simulator-13-release-tests-wk2/build/Websites/bugs.webkit.org/PrettyPatch/prettify.rb /Volumes/Data/slave/ipados-simulator-13-release-tests-wk2/build/layout-test-results/editing/selection/shift-click-includes-existing-selection-diff.txt" took 0.50s > 14:57:31.272 78653 worker/9 editing/selection/shift-click-includes-existing-selection.html failed: > 14:57:31.272 78653 worker/9 text diff
Wenson Hsieh
Comment 28
2020-07-25 16:33:08 PDT
Comment hidden (obsolete)
Created
attachment 405234
[details]
Test yet another theory
Wenson Hsieh
Comment 29
2020-07-25 16:41:12 PDT
Created
attachment 405235
[details]
Test yet another theory
EWS
Comment 30
2020-07-25 17:39:50 PDT
Committed
r264892
: <
https://trac.webkit.org/changeset/264892
> All reviewed patches have been landed. Closing bug and clearing flags on
attachment 405235
[details]
.
Wenson Hsieh
Comment 31
2020-07-25 17:50:46 PDT
(Reopening, because the last patch just added logging)
Wenson Hsieh
Comment 32
2020-07-25 19:51:44 PDT
Example of a pass (from
https://build.webkit.org/builders/Apple%20iOS%2013%20Simulator%20Debug%20WK2%20%28Tests%29/builds/4858/steps/layout-test/logs/stdio
):
> 18:12:26.062 14700 worker/8 editing/selection/shift-click-includes-existing-selection.html output stderr lines: > 18:12:26.062 14700 Synthesizing modifier keydown events. > 18:12:26.062 14700 Synthesizing tap. > 18:12:26.062 14700 (Before): keyboard 0x6000038903c0 has modifier state: 0x00 > 18:12:26.062 14700 (After): keyboard 0x6000038903c0 has modifier state: 0x20000 > 18:12:26.062 14700 -[WKContentView(WKInteraction) _singleTapIdentified:] - modifier flags: 0x20000 > 18:12:26.062 14700 -[WKContentView(WKInteraction) _singleTapRecognized:] - modifier flags: 0x20000 > 18:12:26.062 14700 Committing potential tap with modifiers: 0x01 > 18:12:26.062 14700 Synthesizing modifier keyup events. > 18:12:26.062 14700 Handling synthetic click at (16, 307) with modifiers: 0x01 > 18:12:26.063 14700 (Before): keyboard 0x6000038903c0 has modifier state: 0x20000 > 18:12:26.063 14700 (After): keyboard 0x6000038903c0 has modifier state: 0x00
Example of a text diff failure (from:
https://build.webkit.org/builders/Apple%20iOS%2013%20Simulator%20Release%20WK2%20%28Tests%29/builds/5870/steps/layout-test/logs/stdio
):
> 18:10:48.267 87902 worker/0 editing/selection/shift-click-includes-existing-selection.html output stderr lines: > 18:10:48.267 87902 Synthesizing modifier keydown events. > 18:10:48.267 87902 Synthesizing tap. > 18:10:48.267 87902 (Before): keyboard 0x600002008500 has modifier state: 0x00 > 18:10:48.267 87902 (After): keyboard 0x60000201c460 has modifier state: 0x00 > 18:10:48.267 87902 -[WKContentView(WKInteraction) _singleTapIdentified:] - modifier flags: 0x00 > 18:10:48.267 87902 -[WKContentView(WKInteraction) _singleTapRecognized:] - modifier flags: 0x00 > 18:10:48.268 87902 Committing potential tap with modifiers: 0x00 > 18:10:48.268 87902 Handling synthetic click at (16, 307) with modifiers: 0x00 > 18:10:48.268 87902 Synthesizing modifier keyup events. > 18:10:48.268 87902 (Before): keyboard 0x60000201c460 has modifier state: 0x00 > 18:10:48.268 87902 (After): keyboard 0x60000201c460 has modifier state: 0x00 > 18:10:48.723 87902 "ruby -I /Volumes/Data/slave/ios-simulator-13-release-tests-wk2/build/Websites/bugs.webkit.org/PrettyPatch /Volumes/Data/slave/ios-simulator-13-release-tests-wk2/build/Websites/bugs.webkit.org/PrettyPatch/prettify.rb /Volumes/Data/slave/ios-simulator-13-release-tests-wk2/build/layout-test-results/editing/selection/shift-click-includes-existing-selection-diff.txt" took 0.45s > 18:10:48.725 87902 worker/0 editing/selection/shift-click-includes-existing-selection.html failed: > 18:10:48.725 87902 worker/0 text diff
It’s possible that the smoking gun is the fact that the UIApplication’s GSKeyboardRef changes while (or perhaps, as a result of) dispatching the modifier keydown: In the failure case, 18:10:48.267 87902 (Before): keyboard 0x600002008500 has modifier state: 0x00 18:10:48.267 87902 (After): keyboard 0x60000201c460 has modifier state: 0x00 Versus this, in the success case: 18:12:26.062 14700 (Before): keyboard 0x6000038903c0 has modifier state: 0x00 18:12:26.062 14700 (After): keyboard 0x6000038903c0 has modifier state: 0x20000 Needs more GraphicsServices spelunking (and more datapoints) to see whether this is the culprit.
Wenson Hsieh
Comment 33
2020-07-26 00:26:27 PDT
Created
attachment 405246
[details]
Test yet another theory
EWS
Comment 34
2020-07-26 01:17:36 PDT
Committed
r264896
: <
https://trac.webkit.org/changeset/264896
> All reviewed patches have been landed. Closing bug and clearing flags on
attachment 405246
[details]
.
Wenson Hsieh
Comment 35
2020-07-26 09:42:19 PDT
(Reopening, because the last patch just added logging)
Wenson Hsieh
Comment 36
2020-07-26 10:19:38 PDT
From
https://build.webkit.org/builders/Apple%20iOS%2013%20Simulator%20Release%20WK2%20%28Tests%29/builds/5875/steps/layout-test/logs/stdio
(with the logging added in
r264896
):
> 09:06:26.094 84334 worker/4 editing/selection/shift-click-includes-existing-selection.html output stderr lines: > 09:06:26.094 84334 Synthesizing modifier keydown events. > 09:06:26.094 84334 Synthesizing tap. > 09:06:26.094 84334 (Before): keyboard 0x60000089c320 has modifier state: 0x00; layout:Hebrew; type: 0 > 09:06:26.094 84334 (After): keyboard 0x600000894320 has modifier state: 0x00; layout:US; type: 0 > 09:06:26.094 84334 -[WKContentView(WKInteraction) _singleTapIdentified:] - modifier flags: 0x00 > 09:06:26.094 84334 -[WKContentView(WKInteraction) _singleTapRecognized:] - modifier flags: 0x00 > 09:06:26.094 84334 Committing potential tap with modifiers: 0x00 > 09:06:26.094 84334 Handling synthetic click at (16, 307) with modifiers: 0x00 > 09:06:26.094 84334 Synthesizing modifier keyup events. > 09:06:26.095 84334 (Before): keyboard 0x600000894320 has modifier state: 0x00; layout:US; type: 0 > 09:06:26.095 84334 (After): keyboard 0x600000894320 has modifier state: 0x00; layout:US; type: 0
The Hebrew => US keyboard change that happens in the middle of handling the keydown certainly seems suspect.
Wenson Hsieh
Comment 37
2020-07-26 11:18:50 PDT
Created
attachment 405254
[details]
Speculative fix #3
Wenson Hsieh
Comment 38
2020-07-26 12:18:37 PDT
Comment on
attachment 405254
[details]
Speculative fix #3 Thanks for the review! Hopefully, this’ll fix it for good.
EWS
Comment 39
2020-07-26 12:25:33 PDT
Committed
r264907
: <
https://trac.webkit.org/changeset/264907
> All reviewed patches have been landed. Closing bug and clearing flags on
attachment 405254
[details]
.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug