WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
196307
[ Mac WK2 iOS Sim] Layout Test http/tests/resourceLoadStatistics/website-data-removal-for-site-navigated-to-with-link-decoration.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=196307
Summary
[ Mac WK2 iOS Sim] Layout Test http/tests/resourceLoadStatistics/website-data...
Shawn Roberts
Reported
2019-03-27 11:25:27 PDT
The following layout test is failing on Mac WK2 Release and Debug, iOS Simulator Release and Debug http/tests/resourceLoadStatistics/website-data-removal-for-site-navigated-to-with-link-decoration.html Probable cause: Test has been a flaky failure since it was created. However after the changes in
https://trac.webkit.org/changeset/243348/webkit
it became a more consistent failure. On the bots as well as local testing, test will fail more consistently in full parallel or in debug mode. It will fail with the same diff in full parallel or with 1 child process. Reproduced with: run-webkit-tests http/tests/resourceLoadStatistics/website-data-removal-for-site-navigated-to-with-link-decoration.html --iterations 500 -f --ios-simulator --exit-after-n-failures=5 --no-retry run-webkit-tests http/tests/resourceLoadStatistics/website-data-removal-for-site-navigated-to-with-link-decoration.html --iterations 500 --child-process 1 --ios-simulator --debug --exit-after-n-failures=5 --no-retry Flakiness Dashboard:
https://webkit-test-results.webkit.org/dashboards/flakiness_dashboard.html#showAllRuns=true&tests=http%2Ftests%2FresourceLoadStatistics%2Fwebsite-data-removal-for-site-navigated-to-with-link-decoration.html
Diff: --- /Volumes/Data/slave/ios-simulator-12-release-tests-wk2/build/layout-test-results/http/tests/resourceLoadStatistics/website-data-removal-for-site-navigated-to-with-link-decoration-expected.txt +++ /Volumes/Data/slave/ios-simulator-12-release-tests-wk2/build/layout-test-results/http/tests/resourceLoadStatistics/website-data-removal-for-site-navigated-to-with-link-decoration-actual.txt @@ -10,7 +10,7 @@ After deletion: Client-side cookie exists. After deletion: Regular server-side cookie exists. -After deletion: IDB entry does not exist. +After deletion: IDB entry does exist. Resource load statistics: @@ -32,4 +32,4 @@ localhost gotLinkDecorationFromPrevalentResource: No isPrevalentResource: No isVeryPrevalentResource: No - dataRecordsRemoved: 1 + dataRecordsRemoved: 2
Attachments
Patch
(2.17 KB, patch)
2019-05-09 11:08 PDT
,
Sihui Liu
no flags
Details
Formatted Diff
Diff
Patch
(4.19 KB, patch)
2019-05-09 11:13 PDT
,
Sihui Liu
no flags
Details
Formatted Diff
Diff
Patch
(8.76 KB, patch)
2019-05-10 10:07 PDT
,
Sihui Liu
no flags
Details
Formatted Diff
Diff
Patch for landing
(8.75 KB, patch)
2019-05-20 09:35 PDT
,
Sihui Liu
no flags
Details
Formatted Diff
Diff
Show Obsolete
(3)
View All
Add attachment
proposed patch, testcase, etc.
Radar WebKit Bug Importer
Comment 1
2019-03-27 11:28:08 PDT
<
rdar://problem/49345360
>
Shawn Roberts
Comment 2
2019-03-27 11:34:50 PDT
Marked as flaky in
https://trac.webkit.org/changeset/243554/webkit
while waiting for a fix.
Sihui Liu
Comment 3
2019-05-09 11:08:56 PDT
Created
attachment 369498
[details]
Patch
Sihui Liu
Comment 4
2019-05-09 11:13:42 PDT
Created
attachment 369499
[details]
Patch
Geoffrey Garen
Comment 5
2019-05-09 13:24:24 PDT
Comment on
attachment 369499
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=369499&action=review
> LayoutTests/http/tests/resourceLoadStatistics/website-data-removal-for-site-navigated-to-with-link-decoration.html:157 > + setTimeout(checkWebsiteDataAndContinue, 1000);
It would be nice to avoid a fixed timeout, since those are sometimes flaky too. One way to do that is to refactor checkWebsiteDataAndContinue to test for success, and reschedule itself upon failure, up to some limit like 10s. That way, passes can be fast, and only failures are slow.
Sihui Liu
Comment 6
2019-05-10 10:07:35 PDT
Created
attachment 369559
[details]
Patch
Sihui Liu
Comment 7
2019-05-10 10:10:56 PDT
(In reply to Geoffrey Garen from
comment #5
)
> Comment on
attachment 369499
[details]
> Patch > > View in context: >
https://bugs.webkit.org/attachment.cgi?id=369499&action=review
> > > LayoutTests/http/tests/resourceLoadStatistics/website-data-removal-for-site-navigated-to-with-link-decoration.html:157 > > + setTimeout(checkWebsiteDataAndContinue, 1000); > > It would be nice to avoid a fixed timeout, since those are sometimes flaky > too. > > One way to do that is to refactor checkWebsiteDataAndContinue to test for > success, and reschedule itself upon failure, up to some limit like 10s. That > way, passes can be fast, and only failures are slow.
It turns out IDB is not the last data type gets deleted. Even if IDB files are deleted, resource statistics may have not been updated, so we cannot use missing IDB database to decide whether the deletion of website data finishes.
Alex Christensen
Comment 8
2019-05-17 16:10:29 PDT
Comment on
attachment 369559
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=369559&action=review
> Source/WebKit/NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp:618 > + m_dumpResourceLoadStatisticsFunction = WTFMove(completionHandler);
Let's call this m_dumpResourceLoadStatisticsCompletionHandler, and assert that it's null before this sets it.
Sihui Liu
Comment 9
2019-05-20 09:35:03 PDT
Created
attachment 370256
[details]
Patch for landing
WebKit Commit Bot
Comment 10
2019-05-20 10:14:39 PDT
Comment on
attachment 370256
[details]
Patch for landing Clearing flags on attachment: 370256 Committed
r245517
: <
https://trac.webkit.org/changeset/245517
>
WebKit Commit Bot
Comment 11
2019-05-20 10:14:41 PDT
All reviewed patches have been landed. Closing bug.
Chris Dumez
Comment 12
2019-07-03 14:44:15 PDT
Comment on
attachment 370256
[details]
Patch for landing View in context:
https://bugs.webkit.org/attachment.cgi?id=370256&action=review
> Source/WebKit/NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp:628 > + ASSERT(!RunLoop::isMain());
This is not OK, the whole point of our abstraction is that WebResourceLoadStatisticsStore is always constructed / used / destroyed on the *main* thread. WebResourceLoadStatisticsStore::m_statisticsStore however is always constructed / used / destroyed on the background queue.
Chris Dumez
Comment 13
2019-07-03 15:11:45 PDT
Comment on
attachment 370256
[details]
Patch for landing View in context:
https://bugs.webkit.org/attachment.cgi?id=370256&action=review
>> Source/WebKit/NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp:628 >> + ASSERT(!RunLoop::isMain()); > > This is not OK, the whole point of our abstraction is that WebResourceLoadStatisticsStore is always constructed / used / destroyed on the *main* thread. > WebResourceLoadStatisticsStore::m_statisticsStore however is always constructed / used / destroyed on the background queue.
I will follow-up.
Ryosuke Niwa
Comment 14
2019-07-04 02:11:49 PDT
(In reply to Chris Dumez from
comment #13
)
> Comment on
attachment 370256
[details]
> Patch for landing > > View in context: >
https://bugs.webkit.org/attachment.cgi?id=370256&action=review
> > >> Source/WebKit/NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp:628 > >> + ASSERT(!RunLoop::isMain()); > > > > This is not OK, the whole point of our abstraction is that WebResourceLoadStatisticsStore is always constructed / used / destroyed on the *main* thread. > > WebResourceLoadStatisticsStore::m_statisticsStore however is always constructed / used / destroyed on the background queue. > > I will follow-up.
Where is the follow up happening?
Ryan Haddad
Comment 15
2019-07-04 13:59:57 PDT
(In reply to Ryosuke Niwa from
comment #14
)
> (In reply to Chris Dumez from
comment #13
) > > I will follow-up. > > Where is the follow up happening?
https://bugs.webkit.org/show_bug.cgi?id=199468
Ryosuke Niwa
Comment 16
2019-07-04 14:47:20 PDT
(In reply to Ryan Haddad from
comment #15
)
> (In reply to Ryosuke Niwa from
comment #14
) > > (In reply to Chris Dumez from
comment #13
) > > > I will follow-up. > > > > Where is the follow up happening? >
https://bugs.webkit.org/show_bug.cgi?id=199468
Thanks!
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