Bug 94119 - VoidCallback should not be a special snowflake
Summary: VoidCallback should not be a special snowflake
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: 528+ (Nightly build)
Hardware: All All
: P2 Normal
Assignee: Adam Barth
URL:
Keywords: Qt, QtTriaged
Depends on:
Blocks: 27640 79666
  Show dependency treegraph
 
Reported: 2012-08-15 09:04 PDT by Csaba Osztrogonác
Modified: 2012-08-15 22:02 PDT (History)
12 users (show)

See Also:


Attachments
Patch (56.11 KB, patch)
2012-08-15 16:09 PDT, Adam Barth
no flags Details | Formatted Diff | Diff
Patch for landing (57.74 KB, patch)
2012-08-15 16:24 PDT, Adam Barth
no flags Details | Formatted Diff | Diff
Patch (64.01 KB, patch)
2012-08-15 17:24 PDT, Adam Barth
no flags Details | Formatted Diff | Diff
Patch (64.03 KB, patch)
2012-08-15 17:46 PDT, Adam Barth
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Csaba Osztrogonác 2012-08-15 09:04:11 PDT
https://trac.webkit.org/changeset/125592 made storage/websql/database-lock-after-reload.html
flakey on Qt. I got it with manual bisecting. Sometimes it is flakey (TEXT PASS) and sometimes
it fails twice with the following diff:

--- /ramdisk/qt-linux-64-release/build/layout-test-results/storage/websql/database-lock-after-reload-expected.txt 
+++ /ramdisk/qt-linux-64-release/build/layout-test-results/storage/websql/database-lock-after-reload-actual.txt 
@@ -1,3 +1,1 @@
-Inserting some data
-Test part 2 Complete


I saw the following flakiness on the GTK bot:

--- /home/slave/webkitgtk/gtk-linux-64-release/build/layout-test-results/storage/websql/database-lock-after-reload-expected.txt 
+++ /home/slave/webkitgtk/gtk-linux-64-release/build/layout-test-results/storage/websql/database-lock-after-reload-actual.txt 
@@ -1,3 +1,4 @@
-Inserting some data
-Test part 2 Complete
+CONSOLE MESSAGE: line 52: TypeError: 'undefined' is not an object (evaluating 'database.transaction')
+Error - could not open database
+Test part 1 Complete
 

Could you check it, please?
Comment 1 Csaba Osztrogonác 2012-08-15 09:05:24 PDT
You can easily reproduce it on Qt:
Tools/Scripts/old-run-webkit-tests storage/websql/database-lock-after-reload.html --iterations 100 --singly

32 test cases (32%) succeeded
68 test cases (68%) had incorrect layout
Comment 2 Adam Barth 2012-08-15 11:14:48 PDT
dhcp-172-31-55-91:abarth-webkit abarth$ Tools/Scripts/run-webkit-tests --debug storage/websql/database-lock-after-reload.html --iterations 1000
Using port 'mac-future'
Test configuration: <future, x86_64, debug>
Placing test results in None
Baseline search path: mac -> generic
Using Debug build
Pixel tests disabled
Regular timeout: 35000, slow test timeout: 175000
Command line: /Users/abarth/git/abarth-webkit/WebKitBuild/Debug/DumpRenderTree -

Found 1 test; running 1000 (1000 times each: --repeat-each=1 --iterations=1000), skipping -999.
Running 1 DumpRenderTree over 1 shard.

[233/1000] storage/websql/database-lock-after-reload.html failed unexpectedly (text diff)
[518/1000] storage/websql/database-lock-after-reload.html failed unexpectedly (text diff)
[551/1000] storage/websql/database-lock-after-reload.html failed unexpectedly (text diff)
[684/1000] storage/websql/database-lock-after-reload.html failed unexpectedly (text diff)
                                                                
Retrying 1 unexpected failure(s) ...

Running 1 DumpRenderTree over 1 shard.

                                                    
996 tests ran as expected, 4 didn't:


Unexpected flakiness: text failures (1)
  storage/websql/database-lock-after-reload.html = TEXT PASS
Comment 3 Adam Barth 2012-08-15 11:14:58 PDT
--- /Users/abarth/git/abarth-webkit/WebKitBuild/Debug/layout-test-results/storage/websql/database-lock-after-reload-expected.txt
+++ /Users/abarth/git/abarth-webkit/WebKitBuild/Debug/layout-test-results/storage/websql/database-lock-after-reload-actual.txt
@@ -1,3 +1 @@
-Inserting some data
-Test part 2 Complete
Comment 4 Adam Barth 2012-08-15 11:15:47 PDT
Looks like it's flaky on apple-mac as well, but much less so.
Comment 5 Zan Dobersek 2012-08-15 11:35:13 PDT
http://test-results.appspot.com/dashboards/flakiness_dashboard.html#group=%40ToT%20-%20webkit.org&tests=storage%2Fwebsql%2Fdatabase-lock

Stating the obvious, at least for the Qt and GTK ports, it's only flaky in the release builds.
Comment 6 Adam Barth 2012-08-15 11:41:24 PDT
> Stating the obvious, at least for the Qt and GTK ports, it's only flaky in the release builds.

Oh!  Thanks for stating that.  It's wasn't obvious to me!  :)
Comment 7 Adam Barth 2012-08-15 11:57:01 PDT
Ok.  It's much flakier release, even on apple-mac

88 tests ran as expected, 12 didn't:
Comment 8 Adam Barth 2012-08-15 12:21:23 PDT
I understand the issue.  Looking for the right fix.
Comment 9 Adam Barth 2012-08-15 16:09:47 PDT
Created attachment 158654 [details]
Patch
Comment 10 Eric Seidel (no email) 2012-08-15 16:17:02 PDT
Comment on attachment 158654 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=158654&action=review

LGTM.  Except the XCode oddity of course.

> Source/WebCore/WebCore.xcodeproj/project.pbxproj:1963
> +		7C522D4C15B478B2009B7C95 /* (null) in Headers */ = {isa = PBXBuildFile; settings = {ATTRIBUTES = (Private, ); }; };

This looks wrong.

> Source/WebCore/WebCore.xcodeproj/project.pbxproj:23634
> +				7C522D4C15B478B2009B7C95 /* (null) in Headers */,

This also looks wrong.
Comment 11 Eric Seidel (no email) 2012-08-15 16:17:23 PDT
Comment on attachment 158654 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=158654&action=review

> Source/WebCore/Modules/filesystem/SyncCallbackHelper.h:100
> +        virtual bool handleEvent()

OVERRIDE?
Comment 12 Adam Barth 2012-08-15 16:23:36 PDT
(In reply to comment #11)
> (From update of attachment 158654 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=158654&action=review
> 
> > Source/WebCore/Modules/filesystem/SyncCallbackHelper.h:100
> > +        virtual bool handleEvent()
> 
> OVERRIDE?

I actually had this locally but removed it when uploading.  :)
Comment 13 Adam Barth 2012-08-15 16:24:56 PDT
Created attachment 158656 [details]
Patch for landing
Comment 14 Adam Barth 2012-08-15 16:25:25 PDT
Let's give the EWS a look before landing.
Comment 15 WebKit Review Bot 2012-08-15 16:54:48 PDT
Comment on attachment 158656 [details]
Patch for landing

Attachment 158656 [details] did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/13503799
Comment 16 Build Bot 2012-08-15 16:57:26 PDT
Comment on attachment 158656 [details]
Patch for landing

Attachment 158656 [details] did not pass win-ews (win):
Output: http://queues.webkit.org/results/13517147
Comment 17 Peter Beverloo (cr-android ews) 2012-08-15 17:04:49 PDT
Comment on attachment 158656 [details]
Patch for landing

Attachment 158656 [details] did not pass cr-android-ews (chromium-android):
Output: http://queues.webkit.org/results/13514184
Comment 18 Adam Barth 2012-08-15 17:24:05 PDT
Created attachment 158666 [details]
Patch
Comment 19 WebKit Review Bot 2012-08-15 17:33:48 PDT
Comment on attachment 158666 [details]
Patch

Attachment 158666 [details] did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/13508408
Comment 20 Adam Barth 2012-08-15 17:46:57 PDT
Created attachment 158673 [details]
Patch
Comment 21 WebKit Review Bot 2012-08-15 22:02:08 PDT
Comment on attachment 158673 [details]
Patch

Clearing flags on attachment: 158673

Committed r125745: <http://trac.webkit.org/changeset/125745>
Comment 22 WebKit Review Bot 2012-08-15 22:02:16 PDT
All reviewed patches have been landed.  Closing bug.