Title: [255329] trunk
- Revision
- 255329
- Author
- [email protected]
- Date
- 2020-01-28 17:39:47 -0800 (Tue, 28 Jan 2020)
Log Message
REGRESSION (r252064): [ Mac iOS ] storage/websql/statement-error-callback.html is timing out flakily
https://bugs.webkit.org/show_bug.cgi?id=206291
<rdar://problem/58606666>
Reviewed by Maciej Stachowiak.
Source/WebCore:
I found that extending the lifetime of the SQLTransaction by capturing protectedThis in the event loop
task was the source of the flaky timeouts & crashes. Queueing this event loop task in
notifyDatabaseThreadIsShuttingDown() is actually not necessary because calling callErrorCallbackDueToInterruption()
directly would schedule the event loop task for us. Also, in callErrorCallbackDueToInterruption(),
the event loop task only keeps the error callback alive, not just the SQLTransaction object.
No new tests, unskipped existing test.
* Modules/webdatabase/SQLTransaction.cpp:
(WebCore::SQLTransaction::notifyDatabaseThreadIsShuttingDown):
LayoutTests:
Unskip test that is no longer flaky.
* platform/ios/TestExpectations:
* platform/mac/TestExpectations:
Modified Paths
Diff
Modified: trunk/LayoutTests/ChangeLog (255328 => 255329)
--- trunk/LayoutTests/ChangeLog 2020-01-29 00:55:22 UTC (rev 255328)
+++ trunk/LayoutTests/ChangeLog 2020-01-29 01:39:47 UTC (rev 255329)
@@ -1,3 +1,16 @@
+2020-01-28 Chris Dumez <[email protected]>
+
+ REGRESSION (r252064): [ Mac iOS ] storage/websql/statement-error-callback.html is timing out flakily
+ https://bugs.webkit.org/show_bug.cgi?id=206291
+ <rdar://problem/58606666>
+
+ Reviewed by Maciej Stachowiak.
+
+ Unskip test that is no longer flaky.
+
+ * platform/ios/TestExpectations:
+ * platform/mac/TestExpectations:
+
2020-01-28 Jacob Uphoff <[email protected]>
Discovered some expected timeouts on the test history, changing expectations to expect the timeouts to pass.
Modified: trunk/LayoutTests/platform/ios/TestExpectations (255328 => 255329)
--- trunk/LayoutTests/platform/ios/TestExpectations 2020-01-29 00:55:22 UTC (rev 255328)
+++ trunk/LayoutTests/platform/ios/TestExpectations 2020-01-29 01:39:47 UTC (rev 255329)
@@ -3459,8 +3459,6 @@
webkit.org/b/200043 fast/text/international/system-language/navigator-language [ Pass Failure ]
-webkit.org/b/206291 storage/websql/statement-error-callback.html [ Pass Timeout ]
-
webkit.org/b/203222 svg/wicd/rightsizing-grid.xhtml [ Pass Failure ]
webkit.org/b/206864 http/tests/workers/service/basic-timeout.https.html [ Pass Failure ]
@@ -3474,4 +3472,4 @@
webkit.org/b/206897 [ Debug ] imported/w3c/web-platform-tests/css/css-backgrounds/background-size/vector/tall--auto-32px--nonpercent-width-omitted-height-viewbox.html [ Skip ]
webkit.org/b/206897 [ Debug ] imported/w3c/web-platform-tests/css/css-backgrounds/background-size/vector/tall--auto-32px--nonpercent-width-percent-height.html [ Skip ]
webkit.org/b/206897 [ Debug ] imported/w3c/web-platform-tests/css/css-backgrounds/background-size/vector/tall--auto-32px--nonpercent-width-percent-height-viewbox.html [ Skip ]
-webkit.org/b/206897 [ Debug ] imported/w3c/web-platform-tests/css/css-backgrounds/background-size/vector/tall--auto-32px--nonpercent-width-omitted-height.html [ Skip ]
\ No newline at end of file
+webkit.org/b/206897 [ Debug ] imported/w3c/web-platform-tests/css/css-backgrounds/background-size/vector/tall--auto-32px--nonpercent-width-omitted-height.html [ Skip ]
Modified: trunk/LayoutTests/platform/mac/TestExpectations (255328 => 255329)
--- trunk/LayoutTests/platform/mac/TestExpectations 2020-01-29 00:55:22 UTC (rev 255328)
+++ trunk/LayoutTests/platform/mac/TestExpectations 2020-01-29 01:39:47 UTC (rev 255329)
@@ -1934,8 +1934,6 @@
webkit.org/b/77568 [ Sierra HighSierra Mojave ] fast/text/locale-shaping.html [ ImageOnlyFailure ]
webkit.org/b/77568 [ Sierra HighSierra Mojave ] fast/text/locale-shaping-complex.html [ ImageOnlyFailure ]
-webkit.org/b/206291 storage/websql/statement-error-callback.html [ Pass Timeout ]
-
webkit.org/b/203222 svg/wicd/rightsizing-grid.xhtml [ Pass Failure ]
webkit.org/b/206682 [ Debug ] animations/play-state-paused.html [ Pass Failure ]
Modified: trunk/Source/WebCore/ChangeLog (255328 => 255329)
--- trunk/Source/WebCore/ChangeLog 2020-01-29 00:55:22 UTC (rev 255328)
+++ trunk/Source/WebCore/ChangeLog 2020-01-29 01:39:47 UTC (rev 255329)
@@ -1,3 +1,22 @@
+2020-01-28 Chris Dumez <[email protected]>
+
+ REGRESSION (r252064): [ Mac iOS ] storage/websql/statement-error-callback.html is timing out flakily
+ https://bugs.webkit.org/show_bug.cgi?id=206291
+ <rdar://problem/58606666>
+
+ Reviewed by Maciej Stachowiak.
+
+ I found that extending the lifetime of the SQLTransaction by capturing protectedThis in the event loop
+ task was the source of the flaky timeouts & crashes. Queueing this event loop task in
+ notifyDatabaseThreadIsShuttingDown() is actually not necessary because calling callErrorCallbackDueToInterruption()
+ directly would schedule the event loop task for us. Also, in callErrorCallbackDueToInterruption(),
+ the event loop task only keeps the error callback alive, not just the SQLTransaction object.
+
+ No new tests, unskipped existing test.
+
+ * Modules/webdatabase/SQLTransaction.cpp:
+ (WebCore::SQLTransaction::notifyDatabaseThreadIsShuttingDown):
+
2020-01-28 Tim Horton <[email protected]>
macCatalyst: Triple clicking to select a sentence results in an empty selection
Modified: trunk/Source/WebCore/Modules/webdatabase/SQLTransaction.cpp (255328 => 255329)
--- trunk/Source/WebCore/Modules/webdatabase/SQLTransaction.cpp 2020-01-29 00:55:22 UTC (rev 255328)
+++ trunk/Source/WebCore/Modules/webdatabase/SQLTransaction.cpp 2020-01-29 01:39:47 UTC (rev 255329)
@@ -128,9 +128,7 @@
void SQLTransaction::notifyDatabaseThreadIsShuttingDown()
{
callOnMainThread([this, protectedThis = makeRef(*this)]() mutable {
- m_database->document().eventLoop().queueTask(TaskSource::Networking, [this, protectedThis = protectedThis.copyRef()]() mutable {
- callErrorCallbackDueToInterruption();
- });
+ callErrorCallbackDueToInterruption();
});
m_backend.notifyDatabaseThreadIsShuttingDown();
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes