Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(8)

Issue 690793003: Threaded data provider: Support main thread data notifications (Blink side) (Closed)

Created:
6 years, 1 month ago by oystein (OOO til 10th of July)
Modified:
5 years, 11 months ago
CC:
blink-reviews, blink-reviews-html_chromium.org, dglazkov+blink, eseidel, gavinp+loader_chromium.org, Nate Chapin
Base URL:
https://chromium.googlesource.com/chromium/blink.git@master
Target Ref:
refs/remotes/origin/master
Project:
blink
Visibility:
Public.

Description

Threaded data provider: Support main thread data notifications (Blink side) The threaded data receiver will now receive notifications about received data packets on the main thread (needed for the progress indicator to work properly), and can optionally specify that it wants to receive a full copy of the data (needed when the Inspector is attached). Also removed the unused data parameter from ProgressTracker::incrementProgress Chrome side patch: https://codereview.chromium.org/689713004 BUG=398076 Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=188925

Patch Set 1 : #

Patch Set 2 : Added test #

Total comments: 2

Patch Set 3 : Directly call InspectorInstrumentation::hasFrontends #

Total comments: 5

Patch Set 4 : Use a DocumentLifecycleObserver instead of a WeakPtr to the document #

Total comments: 6

Patch Set 5 : Review fixes #

Total comments: 4

Patch Set 6 : Fixed nits #

Patch Set 7 : Removed status=experimental from the flag to make the test pass, until chrome side lands #

Unified diffs Side-by-side diffs Delta from patch set Stats (+102 lines, -14 lines) Patch
A LayoutTests/http/tests/inspector/network/network-datareceived.html View 1 1 chunk +61 lines, -0 lines 0 comments Download
A LayoutTests/http/tests/inspector/network/network-datareceived-expected.txt View 1 1 chunk +6 lines, -0 lines 0 comments Download
M Source/core/fetch/ResourceFetcher.h View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M Source/core/fetch/ResourceFetcher.cpp View 1 2 3 1 chunk +5 lines, -0 lines 0 comments Download
M Source/core/fetch/ResourceLoader.h View 1 2 3 1 chunk +0 lines, -4 lines 0 comments Download
M Source/core/html/parser/HTMLDocumentParser.cpp View 1 2 3 4 5 4 chunks +15 lines, -5 lines 0 comments Download
M Source/core/loader/DocumentLoader.h View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M Source/core/loader/DocumentLoader.cpp View 1 2 3 1 chunk +5 lines, -0 lines 0 comments Download
M Source/core/loader/FrameFetchContext.cpp View 1 2 3 2 chunks +2 lines, -2 lines 0 comments Download
M Source/core/loader/ProgressTracker.h View 1 chunk +1 line, -1 line 0 comments Download
M Source/core/loader/ProgressTracker.cpp View 1 chunk +1 line, -1 line 0 comments Download
M Source/platform/RuntimeEnabledFeatures.in View 1 2 3 4 5 6 1 chunk +1 line, -1 line 0 comments Download
M public/platform/WebThreadedDataReceiver.h View 1 chunk +3 lines, -0 lines 0 comments Download

Messages

Total messages: 54 (19 generated)
oystein (OOO til 10th of July)
abarth: Are you still the guy to review this stuff, or could you suggest someone ...
6 years, 1 month ago (2014-10-29 21:36:57 UTC) #4
vsevik
Can we add a test that even switching to background parser we still have the ...
6 years, 1 month ago (2014-10-30 13:47:38 UTC) #5
oystein (OOO til 10th of July)
On 2014/10/30 13:47:38, vsevik wrote: > Can we add a test that even switching to ...
6 years, 1 month ago (2014-11-05 21:29:06 UTC) #6
oystein (OOO til 10th of July)
vsevik: New version up, with a test added. PTAL :) abarth: Is this still you, ...
6 years, 1 month ago (2014-11-12 01:56:52 UTC) #9
yurys
https://codereview.chromium.org/690793003/diff/80001/Source/core/html/parser/HTMLDocumentParser.cpp File Source/core/html/parser/HTMLDocumentParser.cpp (right): https://codereview.chromium.org/690793003/diff/80001/Source/core/html/parser/HTMLDocumentParser.cpp#newcode84 Source/core/html/parser/HTMLDocumentParser.cpp:84: m_needMainthreadDataCopy = InspectorInstrumentation::hasFrontends(); It is safe to read InspectorInstrumentation::hasFrontends() ...
6 years, 1 month ago (2014-11-12 06:47:09 UTC) #11
vsevik
> https://codereview.chromium.org/690793003/diff/80001/Source/core/html/parser/HTMLDocumentParser.cpp#newcode84 > Source/core/html/parser/HTMLDocumentParser.cpp:84: m_needMainthreadDataCopy = > InspectorInstrumentation::hasFrontends(); > It is safe to read InspectorInstrumentation::hasFrontends() ...
6 years, 1 month ago (2014-11-12 06:57:22 UTC) #12
oystein (OOO til 10th of July)
eseidel: Could you recommend a reviewer for the non-inspector bits here? https://codereview.chromium.org/690793003/diff/80001/Source/core/html/parser/HTMLDocumentParser.cpp File Source/core/html/parser/HTMLDocumentParser.cpp (right): ...
6 years, 1 month ago (2014-11-17 18:41:42 UTC) #13
eseidel
kouhei or adamk.
6 years, 1 month ago (2014-11-17 19:10:31 UTC) #15
oystein (OOO til 10th of July)
On 2014/11/17 19:10:31, eseidel wrote: > kouhei or adamk. Awesome, thanks. adamk: mind taking a ...
6 years, 1 month ago (2014-11-17 19:13:19 UTC) #17
adamk
Sorry to give you the runaround, but kouhei is definitely who you want for this.
6 years, 1 month ago (2014-11-17 21:11:21 UTC) #19
kouhei (in TOK)
https://codereview.chromium.org/690793003/diff/100001/Source/core/html/parser/HTMLDocumentParser.cpp File Source/core/html/parser/HTMLDocumentParser.cpp (right): https://codereview.chromium.org/690793003/diff/100001/Source/core/html/parser/HTMLDocumentParser.cpp#newcode104 Source/core/html/parser/HTMLDocumentParser.cpp:104: { please add ASSERT(isMainThread()); https://codereview.chromium.org/690793003/diff/100001/Source/core/html/parser/HTMLDocumentParser.cpp#newcode112 Source/core/html/parser/HTMLDocumentParser.cpp:112: WeakPtrWillBeRawPtr<Document> m_document; This ...
6 years, 1 month ago (2014-11-18 04:49:55 UTC) #21
haraken
https://codereview.chromium.org/690793003/diff/100001/Source/core/html/parser/HTMLDocumentParser.cpp File Source/core/html/parser/HTMLDocumentParser.cpp (right): https://codereview.chromium.org/690793003/diff/100001/Source/core/html/parser/HTMLDocumentParser.cpp#newcode112 Source/core/html/parser/HTMLDocumentParser.cpp:112: WeakPtrWillBeRawPtr<Document> m_document; On 2014/11/18 04:49:55, kouhei wrote: > This ...
6 years, 1 month ago (2014-11-18 04:57:28 UTC) #22
oystein (OOO til 10th of July)
On 2014/11/18 04:57:28, haraken wrote: > https://codereview.chromium.org/690793003/diff/100001/Source/core/html/parser/HTMLDocumentParser.cpp > File Source/core/html/parser/HTMLDocumentParser.cpp (right): > > https://codereview.chromium.org/690793003/diff/100001/Source/core/html/parser/HTMLDocumentParser.cpp#newcode112 > ...
6 years, 1 month ago (2014-11-20 23:24:57 UTC) #23
kouhei (in TOK)
On 2014/11/20 23:24:57, Oystein wrote: > On 2014/11/18 04:57:28, haraken wrote: > > > https://codereview.chromium.org/690793003/diff/100001/Source/core/html/parser/HTMLDocumentParser.cpp ...
6 years ago (2014-11-26 05:16:49 UTC) #24
oystein (OOO til 10th of July)
On 2014/11/26 05:16:49, kouhei wrote: > On 2014/11/20 23:24:57, Oystein wrote: > > On 2014/11/18 ...
5 years, 11 months ago (2015-01-07 06:52:45 UTC) #25
haraken
On 2015/01/07 06:52:45, Oystein wrote: > On 2014/11/26 05:16:49, kouhei wrote: > > On 2014/11/20 ...
5 years, 11 months ago (2015-01-07 07:19:36 UTC) #26
oystein (OOO til 10th of July)
haraken: The ParserDataReceiver in HTMLDocumentParser.cpp now uses a document lifecycle observer instead; was it something ...
5 years, 11 months ago (2015-01-15 22:01:29 UTC) #28
haraken
https://codereview.chromium.org/690793003/diff/140001/Source/core/html/parser/HTMLDocumentParser.cpp File Source/core/html/parser/HTMLDocumentParser.cpp (right): https://codereview.chromium.org/690793003/diff/140001/Source/core/html/parser/HTMLDocumentParser.cpp#newcode88 Source/core/html/parser/HTMLDocumentParser.cpp:88: document->lifecycleNotifier().addObserver(this); This won't be needed. DocumentLifecycleObserver's constructor will register ...
5 years, 11 months ago (2015-01-16 01:01:59 UTC) #29
oystein (OOO til 10th of July)
Thanks! https://codereview.chromium.org/690793003/diff/140001/Source/core/html/parser/HTMLDocumentParser.cpp File Source/core/html/parser/HTMLDocumentParser.cpp (right): https://codereview.chromium.org/690793003/diff/140001/Source/core/html/parser/HTMLDocumentParser.cpp#newcode88 Source/core/html/parser/HTMLDocumentParser.cpp:88: document->lifecycleNotifier().addObserver(this); On 2015/01/16 01:01:59, haraken wrote: > > ...
5 years, 11 months ago (2015-01-16 04:31:49 UTC) #30
haraken
The DocumentLifecycleObserver part LGTM. https://codereview.chromium.org/690793003/diff/160001/Source/core/html/parser/HTMLDocumentParser.cpp File Source/core/html/parser/HTMLDocumentParser.cpp (right): https://codereview.chromium.org/690793003/diff/160001/Source/core/html/parser/HTMLDocumentParser.cpp#newcode32 Source/core/html/parser/HTMLDocumentParser.cpp:32: #include "core/dom/DocumentLifecycleNotifier.h" DocumentLifecycleNotifier.h => DocumentLifecycleObserver.h ...
5 years, 11 months ago (2015-01-16 04:58:36 UTC) #31
oystein (OOO til 10th of July)
Thanks haraken! kouhei: Last bits are yours I think :). https://codereview.chromium.org/690793003/diff/160001/Source/core/html/parser/HTMLDocumentParser.cpp File Source/core/html/parser/HTMLDocumentParser.cpp (right): https://codereview.chromium.org/690793003/diff/160001/Source/core/html/parser/HTMLDocumentParser.cpp#newcode32 ...
5 years, 11 months ago (2015-01-16 05:04:37 UTC) #32
kouhei (in TOK)
lgtm. Great work! Looking forward for perf improvements.
5 years, 11 months ago (2015-01-16 05:41:36 UTC) #33
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/690793003/180001
5 years, 11 months ago (2015-01-17 00:52:13 UTC) #35
commit-bot: I haz the power
Try jobs failed on following builders: blink_presubmit on tryserver.blink (http://build.chromium.org/p/tryserver.blink/builders/blink_presubmit/builds/24411)
5 years, 11 months ago (2015-01-17 00:58:15 UTC) #37
oystein (OOO til 10th of July)
+chrishtr for public/
5 years, 11 months ago (2015-01-17 01:40:12 UTC) #39
chrishtr
lgtm
5 years, 11 months ago (2015-01-17 01:40:39 UTC) #40
oystein (OOO til 10th of July)
On 2015/01/17 01:40:39, chrishtr wrote: > lgtm 27 seconds latency; I'm impressed :). Thanks!
5 years, 11 months ago (2015-01-17 01:43:16 UTC) #41
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/690793003/180001
5 years, 11 months ago (2015-01-17 01:45:56 UTC) #43
commit-bot: I haz the power
Try jobs failed on following builders: linux_blink_rel on tryserver.blink (http://build.chromium.org/p/tryserver.blink/builders/linux_blink_rel/builds/42563)
5 years, 11 months ago (2015-01-17 03:00:34 UTC) #45
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/690793003/200001
5 years, 11 months ago (2015-01-17 03:44:14 UTC) #47
commit-bot: I haz the power
Try jobs failed on following builders: linux_blink_rel on tryserver.blink (http://build.chromium.org/p/tryserver.blink/builders/linux_blink_rel/builds/42567)
5 years, 11 months ago (2015-01-17 04:58:24 UTC) #49
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/690793003/200001
5 years, 11 months ago (2015-01-24 09:08:07 UTC) #51
commit-bot: I haz the power
Committed patchset #7 (id:200001) as https://src.chromium.org/viewvc/blink?view=rev&revision=188925
5 years, 11 months ago (2015-01-24 10:27:47 UTC) #52
sof
On 2015/01/16 04:58:36, haraken wrote: > The DocumentLifecycleObserver part LGTM. > > https://codereview.chromium.org/690793003/diff/160001/Source/core/html/parser/HTMLDocumentParser.cpp > File ...
5 years, 11 months ago (2015-01-24 15:56:35 UTC) #53
sof
5 years, 11 months ago (2015-01-24 19:23:20 UTC) #54
Message was sent while issue was closed.
On 2015/01/24 15:56:35, sof wrote:
> On 2015/01/16 04:58:36, haraken wrote:
> > The DocumentLifecycleObserver part LGTM.
> > 
> >
>
https://codereview.chromium.org/690793003/diff/160001/Source/core/html/parser...
> > File Source/core/html/parser/HTMLDocumentParser.cpp (right):
> > 
> >
>
https://codereview.chromium.org/690793003/diff/160001/Source/core/html/parser...
> > Source/core/html/parser/HTMLDocumentParser.cpp:32: #include
> > "core/dom/DocumentLifecycleNotifier.h"
> > 
> > DocumentLifecycleNotifier.h => DocumentLifecycleObserver.h
> > 
> >
>
https://codereview.chromium.org/690793003/diff/160001/Source/core/html/parser...
> > Source/core/html/parser/HTMLDocumentParser.cpp:739: // TODO(oysteine):
> Disabled
> > due to crbug.com/398076 until a full fix can be implemented.
> > 
> > TODO => FIXME
> 
> This will require some amount of rework to be Oilpan-compatible --
> DocumentLifecycleObserver is a GC mixin with Oilpan enabled, so passing out a
> raw reference to something on the Oilpan heap is not going to work.
> 
> (Builds are currently breaking due to it.)

Handling via https://codereview.chromium.org/863113004/

Powered by Google App Engine
This is Rietveld 408576698