Bug 104969 - Merge MainResourceLoader into DocumentLoader
Summary: Merge MainResourceLoader into DocumentLoader
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebCore Misc. (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nate Chapin
URL:
Keywords:
Depends on: 109757 109952 109971 112593 112722 112776
Blocks:
  Show dependency treegraph
 
Reported: 2012-12-13 16:01 PST by Nate Chapin
Modified: 2013-03-21 08:29 PDT (History)
24 users (show)

See Also:


Attachments
Monolithic version (118.44 KB, patch)
2013-02-13 13:47 PST, Nate Chapin
webkit.review.bot: commit-queue-
Details | Formatted Diff | Diff
Finish the merger (45.22 KB, patch)
2013-03-19 16:27 PDT, Nate Chapin
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Nate Chapin 2012-12-13 16:01:06 PST
With bug 49246 landed, MainResourceLoader's purpose is no longer clearly defined, and is poorly named.  It isn't a ResourceLoader subclass (it implements the CachedRawResourceClient interface), and the organization of what DocumentLoader and MainResourceLoader each do is history rather than logical.  It's probably worth merging them into a single class.
Comment 1 Nate Chapin 2013-02-13 13:47:55 PST
Created attachment 188173 [details]
Monolithic version

This monster patch is my current thought for merging these 2 classes.  I'll split it up before asking for review, just posting to get EWS data.
Comment 2 WebKit Review Bot 2013-02-13 14:55:46 PST
Comment on attachment 188173 [details]
Monolithic version

Attachment 188173 [details] did not pass cr-linux-debug-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/16514332
Comment 3 WebKit Review Bot 2013-02-13 15:40:32 PST
Comment on attachment 188173 [details]
Monolithic version

Attachment 188173 [details] did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/16536321
Comment 4 Peter Beverloo (cr-android ews) 2013-02-13 18:35:31 PST
Comment on attachment 188173 [details]
Monolithic version

Attachment 188173 [details] did not pass cr-android-ews (chromium-android):
Output: http://queues.webkit.org/results/16514438
Comment 5 Nate Chapin 2013-03-19 16:27:34 PDT
Created attachment 193949 [details]
Finish the merger
Comment 6 Adam Barth 2013-03-19 20:57:36 PDT
Comment on attachment 193949 [details]
Finish the merger

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

Amazing.

> Source/WebCore/loader/DocumentLoader.cpp:1390
> +    DEFINE_STATIC_LOCAL(ResourceLoaderOptions, mainResourceLoadOptions,
> +        (SendCallbacks, SniffContent, BufferData, AllowStoredCredentials, AskClientForCrossOriginCredentials, SkipSecurityCheck));

I'm surprised we use a static here.  This is just a struct...
Comment 7 WebKit Review Bot 2013-03-19 21:24:01 PDT
Comment on attachment 193949 [details]
Finish the merger

Clearing flags on attachment: 193949

Committed r146301: <http://trac.webkit.org/changeset/146301>
Comment 8 WebKit Review Bot 2013-03-19 21:24:07 PDT
All reviewed patches have been landed.  Closing bug.
Comment 10 Ryosuke Niwa 2013-03-19 22:48:41 PDT
To make sure this is a real regression, I've ran the tests at the same revision on two distinct machines (apple-windows-3 and apple-windows-4 respectively):
http://build.webkit.org/builders/Apple%20Win%207%20Debug%20%28Tests%29/builds/50528
http://build.webkit.org/builders/Apple%20Win%207%20Debug%20%28Tests%29/builds/50529
Comment 11 WebKit Review Bot 2013-03-19 22:50:19 PDT
Re-opened since this is blocked by bug 112776
Comment 12 Ryosuke Niwa 2013-03-19 22:52:28 PDT
(In reply to comment #10)
> To make sure this is a real regression, I've ran the tests at the same revision on two distinct machines (apple-windows-3 and apple-windows-4 respectively):
> http://build.webkit.org/builders/Apple%20Win%207%20Debug%20%28Tests%29/builds/50528
> http://build.webkit.org/builders/Apple%20Win%207%20Debug%20%28Tests%29/builds/50529

I'll also note that I've rebooted those bots prior to running the tests.
Comment 13 Ryosuke Niwa 2013-03-19 22:53:43 PDT
It appears that this patch caused assertions to be hit on almost all tests:

animations/additive-transform-animations.html		
animations/animation-add-events-in-handler.html		
animations/animation-border-overflow.html		
animations/animation-controller-drt-api.html		
animations/animation-css-rule-types.html		
animations/animation-delay-changed.html		
animations/animation-direction-alternate-reverse.html		
animations/animation-direction-reverse-fill-mode-hardware.html		
animations/animation-direction-reverse-fill-mode.html		
animations/animation-direction-reverse-hardware-opacity.html		
animations/animation-direction-reverse-hardware.html		
animations/animation-direction-reverse-non-hardware.html		
animations/animation-direction-reverse-timing-functions-hardware.html		
animations/animation-direction-reverse-timing-functions.html		
animations/animation-direction-reverse.html		
animations/animation-direction.html		
animations/animation-end-event-destroy-renderer.html		
animations/animation-end-event-short-iterations.html		
animations/animation-events-create.html		
animations/animation-hit-test-transform.html
Comment 14 Ryosuke Niwa 2013-03-19 23:35:19 PDT
I'm sorry but I'm rolling out the patch for now as we're losing the entire test coverage on Windows Debug.
Comment 15 Adam Barth 2013-03-19 23:36:03 PDT
Thanks.
Comment 16 Ryosuke Niwa 2013-03-20 02:06:59 PDT
It appears that this was a build corruption issue.

http://build.webkit.org/builders/Apple%20Win%207%20Debug%20%28Tests%29/builds/50532
is the run that contains the rollout and this looks better but still a bunch of tests have failed. I've triggered a clean build after this as http://build.webkit.org/builders/Apple%20Win%207%20Debug%20%28Tests%29/builds/50536 and this one appears to be running just fine.

Can we coordinate tomorrow to reland this patch so that we can trigger a clean build as needed tomorrow?  Alternatively, you don't do anything, I'll try to reland it tomorrow morning and start a clean build as needed.
Comment 17 Nate Chapin 2013-03-20 09:17:14 PDT
(In reply to comment #16)
> It appears that this was a build corruption issue.
> 
> http://build.webkit.org/builders/Apple%20Win%207%20Debug%20%28Tests%29/builds/50532
> is the run that contains the rollout and this looks better but still a bunch of tests have failed. I've triggered a clean build after this as http://build.webkit.org/builders/Apple%20Win%207%20Debug%20%28Tests%29/builds/50536 and this one appears to be running just fine.
> 
> Can we coordinate tomorrow to reland this patch so that we can trigger a clean build as needed tomorrow?  Alternatively, you don't do anything, I'll try to reland it tomorrow morning and start a clean build as needed.

If you want me around, it should probably wait until Thursday, as I'm OOO today and won't have IRC access until this afternoon.
Comment 18 Ryosuke Niwa 2013-03-21 02:08:01 PDT
Committed r146449: <http://trac.webkit.org/changeset/146449>
Comment 19 Ryosuke Niwa 2013-03-21 02:09:02 PDT
Sorry about the unwanted noise.

I've relanded your patch in http://trac.webkit.org/changeset/146449 after cleaning WebKitBuild directories in apple-windows-1 and apple-windows-2.
Comment 20 Eric Seidel (no email) 2013-03-21 02:11:19 PDT
I'm very excited to see this land!
Comment 21 Nate Chapin 2013-03-21 08:29:06 PDT
(In reply to comment #19)
> Sorry about the unwanted noise.
> 
> I've relanded your patch in http://trac.webkit.org/changeset/146449 after cleaning WebKitBuild directories in apple-windows-1 and apple-windows-2.

Thanks for relanding this! I really appreciate it.