Bug 78516 - svg/hixie/perf has different repaint region in debug vs release
Summary: svg/hixie/perf has different repaint region in debug vs release
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Tools / Tests (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Tony Chang
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-02-13 12:03 PST by Tony Chang
Modified: 2012-02-14 02:54 PST (History)
3 users (show)

See Also:


Attachments
Patch (2.33 KB, patch)
2012-02-13 12:19 PST, Tony Chang
no flags Details | Formatted Diff | Diff
Patch (770.87 KB, patch)
2012-02-14 02:41 PST, Nikolas Zimmermann
morrita: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Tony Chang 2012-02-13 12:03:43 PST
In svg/hixie/perf/001.xml and svg/hixie/perf/002.xml, the tests produce different results in release vs debug builds.  The difference is in the repaint region: in debug builds the repaint region is slightly larger.  It's hard to tell from the flakiness dashboard when this difference started happening.

I'm going to just disable the tests in debug for now.
Comment 1 Tony Chang 2012-02-13 12:14:45 PST
Oh wait, I see the problem.  I'll post a patch.
Comment 2 Tony Chang 2012-02-13 12:19:28 PST
Created attachment 126804 [details]
Patch
Comment 3 Tony Chang 2012-02-13 15:48:17 PST
Zimmerman, does this change seem reasonable?

There are a few other repaint tests that we get different results in debug vs release, but I can try to fix them in a follow up.
Comment 4 Nikolas Zimmermann 2012-02-14 00:32:27 PST
Comment on attachment 126804 [details]
Patch

Great catch! I forgot to do with on the new svg/hixie/perf tests, that I converted to the repaint.js harness - thanks for catching this!
The other svg/hixie/perf files are not affected?
Comment 5 Nikolas Zimmermann 2012-02-14 02:23:31 PST
This affects Mac as well, I'm going to land this for you including mac rebaselines. Will leave the bug open for the chromium part of it, left for you :-)
Comment 6 Nikolas Zimmermann 2012-02-14 02:37:58 PST
Changing title, this affects Mac as well.
Comment 7 Nikolas Zimmermann 2012-02-14 02:39:47 PST
I found an approach which forces repaint rect coalescing - just remove the setTimeout from the intermediate steps, its not needed anyway, we're only interested in the final state anyways. Will upload a new version of the patch.
Comment 8 Nikolas Zimmermann 2012-02-14 02:41:15 PST
Created attachment 126943 [details]
Patch
Comment 9 WebKit Review Bot 2012-02-14 02:43:51 PST
Attachment 126943 [details] did not pass style-queue:

Failed to run "['Tools/Scripts/update-webkit']" exit_code: 9

Updating OpenSource
	M	Tools/Scripts/webkitpy/layout_tests/port/chromium_android.py
	M	Tools/ChangeLog
r107697 = 30d639dab1b598aa2847cd70c8e13954f3a9a88b (refs/remotes/origin/master)
First, rewinding head to replay your work on top of it...
Applying: [Mac][Win][WK2] Switch to RFC 6455 protocol for WebSockets
Using index info to reconstruct a base tree...
<stdin>:1578: trailing whitespace.
        
<stdin>:1647: trailing whitespace.
    
<stdin>:1657: trailing whitespace.
    
<stdin>:1672: trailing whitespace.
        return 0;        
<stdin>:1674: trailing whitespace.
    
warning: squelched 7 whitespace errors
warning: 12 lines add whitespace errors.
Falling back to patching base and 3-way merge...
warning: too many files (created: 168766 deleted: 3), skipping inexact rename detection
Auto-merging LayoutTests/ChangeLog
CONFLICT (content): Merge conflict in LayoutTests/ChangeLog
Auto-merging Source/WebCore/ChangeLog
CONFLICT (content): Merge conflict in Source/WebCore/ChangeLog
Auto-merging Tools/ChangeLog
CONFLICT (content): Merge conflict in Tools/ChangeLog
Failed to merge in the changes.
Patch failed at 0001 [Mac][Win][WK2] Switch to RFC 6455 protocol for WebSockets

When you have resolved this problem run "git rebase --continue".
If you would prefer to skip this patch, instead run "git rebase --skip".
To restore the original branch and stop rebasing run "git rebase --abort".

rebase refs/remotes/origin/master: command returned error: 1

Died at Tools/Scripts/update-webkit line 164.


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 10 Hajime Morrita 2012-02-14 02:49:46 PST
Comment on attachment 126943 [details]
Patch

r=me.
Comment 11 Hajime Morrita 2012-02-14 02:50:33 PST
> r=me.
Please be careful before land. ChangeLog diff looks getting confused.
Comment 12 Nikolas Zimmermann 2012-02-14 02:54:38 PST
Committed r107698: <http://trac.webkit.org/changeset/107698>