Title: [173991] trunk
Revision
173991
Author
[email protected]
Date
2014-09-25 19:20:05 -0700 (Thu, 25 Sep 2014)

Log Message

StorageTracker::deleteOrigin being called off the main thread (ASSERTs in inspector/test-harness-trivially-works.html test)
https://bugs.webkit.org/show_bug.cgi?id=129642

Reviewed by Brady Eidson.

Source/WebCore:

When tearing down the inspector frontend's page, we trigger a threading violation
in StorageAreaSync's final sync code underneath StorageAreaSync::deleteEmptyDatabase().

No new tests. Regression is covered by inspector/test-harness-trivially-works.html.

* storage/StorageAreaSync.cpp:
(WebCore::StorageAreaSync::deleteEmptyDatabase): add a missing callOnMainThread() when
calling StorageTracker::deleteOriginWithIdentifier().

LayoutTests:

Remove the blanket Skip for all tests in inspector/.

* TestExpectations: clean up expectations for inspector/ and add new tracking bugs.

Modified Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (173990 => 173991)


--- trunk/LayoutTests/ChangeLog	2014-09-26 01:09:39 UTC (rev 173990)
+++ trunk/LayoutTests/ChangeLog	2014-09-26 02:20:05 UTC (rev 173991)
@@ -1,3 +1,14 @@
+2014-09-25  Brian J. Burg  <[email protected]>
+
+        StorageTracker::deleteOrigin being called off the main thread (ASSERTs in inspector/test-harness-trivially-works.html test)
+        https://bugs.webkit.org/show_bug.cgi?id=129642
+
+        Reviewed by Brady Eidson.
+
+        Remove the blanket Skip for all tests in inspector/.
+
+        * TestExpectations: clean up expectations for inspector/ and add new tracking bugs.
+
 2014-09-25  Sungmann Cho  <[email protected]>
 
         Unprefix CSS cursor values zoom-in and zoom-out.

Modified: trunk/LayoutTests/TestExpectations (173990 => 173991)


--- trunk/LayoutTests/TestExpectations	2014-09-26 01:09:39 UTC (rev 173990)
+++ trunk/LayoutTests/TestExpectations	2014-09-26 02:20:05 UTC (rev 173991)
@@ -90,8 +90,6 @@
 webkit.org/b/129327 inspector-protocol/indexeddb/basics.html [ Pass Failure ]
 webkit.org/b/127414 inspector-protocol/page/deny-X-FrameOption.html [ Pass Failure ]
 
-webkit.org/b/129642 inspector [ Skip ]
-
 # These tests cause assertion failures in subsequent tests
 webkit.org/b/131919 inspector/dom [ Skip ]
 
@@ -99,17 +97,18 @@
 # webkit.org/b/129817 inspector/dom/content-flow-list.html [ Pass Failure ]
 # webkit.org/b/129817 inspector/dom/content-flow-content-removal.html [ Pass Failure ]
 
+# These tests still mysteriously flake and/or time out.
+webkit.org/b/137131 inspector/debugger [ Skip ]
+webkit.org/b/137130 inspector/replay [ Skip ]
+
+# Doesn't work yet, relies on network replay functionality (webkit.org/b/130728, webkit.org/b/129391)
+webkit.org/b/131318 http/tests/inspector/replay/document-last-modified-fallback-value.html [ Skip ]
+
 # Collecting region's children in a named flow not supported yet
 webkit.org/b/74144 fast/regions/flow-body-in-html.html [ Skip ]
 webkit.org/b/74144 fast/regions/universal-selector-children-to-the-same-region.html [ Skip ]
 webkit.org/b/74144 fast/regions/region-content-flown-into-region.html [ Skip ]
 
-# Doesn't work yet, relies on network replay functionality (webkit.org/b/130728, webkit.org/b/129391)
-webkit.org/b/131318 http/tests/inspector/replay/document-last-modified-fallback-value.html [ Skip ]
-
-# Asserts in debug builds.
-[ Debug ] http/tests/inspector/replay/document-last-modified-fallback-value.html [ Skip ]
-
 # Expando properties on attribute nodes disappear
 webkit.org/b/88045 fast/dom/gc-attribute-node.html [ Failure Pass ]
 

Modified: trunk/Source/WebCore/ChangeLog (173990 => 173991)


--- trunk/Source/WebCore/ChangeLog	2014-09-26 01:09:39 UTC (rev 173990)
+++ trunk/Source/WebCore/ChangeLog	2014-09-26 02:20:05 UTC (rev 173991)
@@ -1,3 +1,19 @@
+2014-09-25  Brian J. Burg  <[email protected]>
+
+        StorageTracker::deleteOrigin being called off the main thread (ASSERTs in inspector/test-harness-trivially-works.html test)
+        https://bugs.webkit.org/show_bug.cgi?id=129642
+
+        Reviewed by Brady Eidson.
+
+        When tearing down the inspector frontend's page, we trigger a threading violation
+        in StorageAreaSync's final sync code underneath StorageAreaSync::deleteEmptyDatabase().
+
+        No new tests. Regression is covered by inspector/test-harness-trivially-works.html.
+
+        * storage/StorageAreaSync.cpp:
+        (WebCore::StorageAreaSync::deleteEmptyDatabase): add a missing callOnMainThread() when
+        calling StorageTracker::deleteOriginWithIdentifier().
+
 2014-09-25  Sungmann Cho  <[email protected]>
 
         Unprefix CSS cursor values zoom-in and zoom-out.

Modified: trunk/Source/WebCore/storage/StorageAreaSync.cpp (173990 => 173991)


--- trunk/Source/WebCore/storage/StorageAreaSync.cpp	2014-09-26 01:09:39 UTC (rev 173990)
+++ trunk/Source/WebCore/storage/StorageAreaSync.cpp	2014-09-26 02:20:05 UTC (rev 173991)
@@ -521,9 +521,11 @@
     if (!count) {
         query.finalize();
         m_database.close();
-        if (StorageTracker::tracker().isActive())
-            StorageTracker::tracker().deleteOriginWithIdentifier(m_databaseIdentifier);
-        else {
+        if (StorageTracker::tracker().isActive()) {
+            callOnMainThread([this] {
+                StorageTracker::tracker().deleteOriginWithIdentifier(m_databaseIdentifier);
+            });
+        } else {
             String databaseFilename = m_syncManager->fullDatabaseFilename(m_databaseIdentifier);
             if (!SQLiteFileSystem::deleteDatabaseFile(databaseFilename))
                 LOG_ERROR("Failed to delete database file %s\n", databaseFilename.utf8().data());
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to