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

Issue 1414123002: [BlobAsync] Renderer support for blob file writing. (Closed)

Created:
5 years, 2 months ago by dmurph
Modified:
4 years, 7 months ago
Reviewers:
kinuko, michaeln, Mark P
CC:
chromium-reviews, darin-cc_chromium.org, jam, mkwst+moarreviews-renderer_chromium.org, mlamouri+watch-content_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@blob-hookup
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

[BlobAsync] Renderer support for blob file writing. This implements the logic where the renderer is writing blob pieces directly to disk, instead of sending the data to the browser.browser R=kinuko, michaeln BUG=375297 Committed: https://crrev.com/c27bc134ef590aa1435f9ccd6bcb35219c9b3cf3 Cr-Commit-Position: refs/heads/master@{#394985}

Patch Set 1 #

Patch Set 2 : Rebase #

Patch Set 3 : test #

Patch Set 4 : Rebase #

Patch Set 5 : Better tests #

Patch Set 6 : Added error test #

Patch Set 7 : rebase #

Total comments: 16

Patch Set 8 : Added test & simplified IPC callback #

Patch Set 9 : Added test & simplified IPC callback #

Patch Set 10 : Added test & simplified IPC callback[ #

Total comments: 31

Patch Set 11 : Less callbacks, IPC::Sender propogation, and cleanup #

Patch Set 12 : linker fix #

Total comments: 41

Patch Set 13 : comments #

Patch Set 14 : comments, build fix #

Total comments: 24

Patch Set 15 : comments #

Total comments: 12

Patch Set 16 : comments #

Total comments: 4

Patch Set 17 : update histograms #

Total comments: 1

Patch Set 18 : rebase #

Patch Set 19 : rebase #

Patch Set 20 : rebase again, missed refactor #

Patch Set 21 : and one more rebase error :/ #

Unified diffs Side-by-side diffs Delta from patch set Stats (+613 lines, -274 lines) Patch
M content/child/blob_storage/blob_consolidation.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 4 chunks +32 lines, -6 lines 0 comments Download
M content/child/blob_storage/blob_consolidation.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 4 chunks +31 lines, -12 lines 0 comments Download
M content/child/blob_storage/blob_consolidation_unittest.cc View 1 2 3 6 chunks +50 lines, -50 lines 0 comments Download
M content/child/blob_storage/blob_message_filter.h View 1 2 3 4 5 6 7 8 9 10 11 12 4 chunks +10 lines, -1 line 0 comments Download
M content/child/blob_storage/blob_message_filter.cc View 1 2 3 4 5 6 7 8 9 10 11 12 3 chunks +13 lines, -3 lines 0 comments Download
M content/child/blob_storage/blob_transport_controller.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 18 7 chunks +37 lines, -24 lines 0 comments Download
M content/child/blob_storage/blob_transport_controller.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 8 chunks +217 lines, -105 lines 0 comments Download
M content/child/blob_storage/blob_transport_controller_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 13 chunks +206 lines, -71 lines 0 comments Download
M content/child/blob_storage/webblobregistry_impl.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +1 line, -1 line 0 comments Download
M content/renderer/render_thread_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +1 line, -1 line 0 comments Download
M tools/metrics/histograms/histograms.xml View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 chunk +15 lines, -0 lines 0 comments Download

Messages

Total messages: 41 (10 generated)
dmurph
Hey Michael & Kinuko, Here is the renderer side of the blob-to-disk transportation. Let me ...
4 years, 8 months ago (2016-04-12 22:53:26 UTC) #2
kinuko
Some initial comments, not read the tests yet. https://codereview.chromium.org/1414123002/diff/120001/content/child/blob_storage/blob_consolidation.cc File content/child/blob_storage/blob_consolidation.cc (right): https://codereview.chromium.org/1414123002/diff/120001/content/child/blob_storage/blob_consolidation.cc#newcode174 content/child/blob_storage/blob_consolidation.cc:174: if ...
4 years, 8 months ago (2016-04-15 15:02:32 UTC) #3
dmurph
https://codereview.chromium.org/1414123002/diff/120001/content/child/blob_storage/blob_consolidation.cc File content/child/blob_storage/blob_consolidation.cc (right): https://codereview.chromium.org/1414123002/diff/120001/content/child/blob_storage/blob_consolidation.cc#newcode174 content/child/blob_storage/blob_consolidation.cc:174: if (!cont) On 2016/04/15 at 15:02:31, kinuko wrote: > ...
4 years, 8 months ago (2016-04-20 21:15:34 UTC) #4
michaeln
A first pass at it... > the weirdest part is where I pass in a ...
4 years, 8 months ago (2016-04-21 01:58:41 UTC) #5
kinuko
https://codereview.chromium.org/1414123002/diff/180001/content/child/blob_storage/blob_transport_controller.h File content/child/blob_storage/blob_transport_controller.h (right): https://codereview.chromium.org/1414123002/diff/180001/content/child/blob_storage/blob_transport_controller.h#newcode152 content/child/blob_storage/blob_transport_controller.h:152: const CancelCallback& error_callback); Btw-- why don't we use ThreadSafeSender ...
4 years, 8 months ago (2016-04-21 07:54:34 UTC) #6
dmurph
I only get an IPC::Sender* Is there something I'm missing? On Thu, Apr 21, 2016, ...
4 years, 8 months ago (2016-04-21 07:57:02 UTC) #7
kinuko
On 2016/04/21 07:57:02, dmurph wrote: > I only get an IPC::Sender* > Is there something ...
4 years, 8 months ago (2016-04-21 08:04:34 UTC) #8
chromium-reviews
Oh I see. I was using the sender from the blob message filter, which is ...
4 years, 8 months ago (2016-04-21 08:06:55 UTC) #9
dmurph
Oh I see. I was using the sender from the blob message filter, which is ...
4 years, 8 months ago (2016-04-21 08:07:43 UTC) #10
michaeln
a few more comments https://codereview.chromium.org/1414123002/diff/180001/content/child/blob_storage/blob_transport_controller.cc File content/child/blob_storage/blob_transport_controller.cc (right): https://codereview.chromium.org/1414123002/diff/180001/content/child/blob_storage/blob_transport_controller.cc#newcode194 content/child/blob_storage/blob_transport_controller.cc:194: // sender->Send(new BlobStorageMsg_CancelBuildingBlob(uuid, is this ...
4 years, 8 months ago (2016-04-21 18:51:43 UTC) #11
dmurph
I chatted with Michael a bit and ended up doing this approach: * I keep ...
4 years, 8 months ago (2016-04-22 22:37:10 UTC) #12
kinuko
https://codereview.chromium.org/1414123002/diff/220001/content/child/blob_storage/blob_consolidation.cc File content/child/blob_storage/blob_consolidation.cc (right): https://codereview.chromium.org/1414123002/diff/220001/content/child/blob_storage/blob_consolidation.cc#newcode172 content/child/blob_storage/blob_consolidation.cc:172: bool continu = visitor.Run( nit: continu -> continue ? ...
4 years, 8 months ago (2016-04-25 14:10:30 UTC) #13
dmurph
Thanks! The only question was about the Release w/ the consolidation now being refcounted. If ...
4 years, 8 months ago (2016-04-26 22:33:29 UTC) #14
michaeln
https://codereview.chromium.org/1414123002/diff/220001/content/child/blob_storage/blob_consolidation.cc File content/child/blob_storage/blob_consolidation.cc (right): https://codereview.chromium.org/1414123002/diff/220001/content/child/blob_storage/blob_consolidation.cc#newcode129 content/child/blob_storage/blob_consolidation.cc:129: LOG(ERROR) << "Invalid consolidated size " << consolidated_size is ...
4 years, 8 months ago (2016-04-26 22:50:09 UTC) #15
dmurph
Thanks! https://codereview.chromium.org/1414123002/diff/220001/content/child/blob_storage/blob_consolidation.cc File content/child/blob_storage/blob_consolidation.cc (right): https://codereview.chromium.org/1414123002/diff/220001/content/child/blob_storage/blob_consolidation.cc#newcode187 content/child/blob_storage/blob_consolidation.cc:187: CHECK(memory_out); On 2016/04/26 at 22:50:08, michaeln wrote: > ...
4 years, 7 months ago (2016-04-27 19:14:04 UTC) #16
michaeln
mostly nits, but i wonder about the handling of actual_written https://codereview.chromium.org/1414123002/diff/220001/content/child/blob_storage/blob_transport_controller.cc File content/child/blob_storage/blob_transport_controller.cc (right): https://codereview.chromium.org/1414123002/diff/220001/content/child/blob_storage/blob_transport_controller.cc#newcode376 ...
4 years, 7 months ago (2016-04-28 00:16:57 UTC) #17
dmurph
Thanks for the review! Hey Mark, can you take a look at the histograms change? ...
4 years, 7 months ago (2016-05-09 19:55:47 UTC) #19
Mark P
https://codereview.chromium.org/1414123002/diff/280001/content/child/blob_storage/blob_transport_controller.cc File content/child/blob_storage/blob_transport_controller.cc (right): https://codereview.chromium.org/1414123002/diff/280001/content/child/blob_storage/blob_transport_controller.cc#newcode88 content/child/blob_storage/blob_transport_controller.cc:88: UMA_HISTOGRAM_BOOLEAN("Storage.Blob.RendererFileWriteFailed", true); Consider changing this histogram so true and ...
4 years, 7 months ago (2016-05-09 22:00:51 UTC) #20
michaeln
https://codereview.chromium.org/1414123002/diff/260001/content/child/blob_storage/blob_transport_controller.cc File content/child/blob_storage/blob_transport_controller.cc (right): https://codereview.chromium.org/1414123002/diff/260001/content/child/blob_storage/blob_transport_controller.cc#newcode91 content/child/blob_storage/blob_transport_controller.cc:91: written += writing_size; On 2016/05/09 19:55:47, dmurph wrote: > ...
4 years, 7 months ago (2016-05-09 22:24:52 UTC) #21
michaeln
lgtm https://codereview.chromium.org/1414123002/diff/260001/content/child/blob_storage/blob_transport_controller.cc File content/child/blob_storage/blob_transport_controller.cc (right): https://codereview.chromium.org/1414123002/diff/260001/content/child/blob_storage/blob_transport_controller.cc#newcode91 content/child/blob_storage/blob_transport_controller.cc:91: written += writing_size; On 2016/05/09 22:24:52, michaeln wrote: ...
4 years, 7 months ago (2016-05-09 23:01:08 UTC) #22
kinuko
lgtm https://codereview.chromium.org/1414123002/diff/280001/content/child/blob_storage/blob_consolidation.h File content/child/blob_storage/blob_consolidation.h (right): https://codereview.chromium.org/1414123002/diff/280001/content/child/blob_storage/blob_consolidation.h#newcode72 content/child/blob_storage/blob_consolidation.h:72: base::Callback<bool(const char* /* memory */, size_t /* memory_size ...
4 years, 7 months ago (2016-05-10 13:30:50 UTC) #23
dmurph
Thanks for the reviews! https://codereview.chromium.org/1414123002/diff/280001/content/child/blob_storage/blob_consolidation.h File content/child/blob_storage/blob_consolidation.h (right): https://codereview.chromium.org/1414123002/diff/280001/content/child/blob_storage/blob_consolidation.h#newcode72 content/child/blob_storage/blob_consolidation.h:72: base::Callback<bool(const char* /* memory */, ...
4 years, 7 months ago (2016-05-10 18:22:34 UTC) #24
Mark P
https://codereview.chromium.org/1414123002/diff/300001/tools/metrics/histograms/histograms.xml File tools/metrics/histograms/histograms.xml (right): https://codereview.chromium.org/1414123002/diff/300001/tools/metrics/histograms/histograms.xml#newcode52453 tools/metrics/histograms/histograms.xml:52453: + Recorded when seeking a file to write a ...
4 years, 7 months ago (2016-05-16 23:25:56 UTC) #25
dmurph
Thanks! https://codereview.chromium.org/1414123002/diff/300001/tools/metrics/histograms/histograms.xml File tools/metrics/histograms/histograms.xml (right): https://codereview.chromium.org/1414123002/diff/300001/tools/metrics/histograms/histograms.xml#newcode52453 tools/metrics/histograms/histograms.xml:52453: + Recorded when seeking a file to write ...
4 years, 7 months ago (2016-05-17 00:14:44 UTC) #26
Mark P
histograms.xml lgtm https://codereview.chromium.org/1414123002/diff/320001/tools/metrics/histograms/histograms.xml File tools/metrics/histograms/histograms.xml (right): https://codereview.chromium.org/1414123002/diff/320001/tools/metrics/histograms/histograms.xml#newcode52976 tools/metrics/histograms/histograms.xml:52976: + Recorded whether seeking within a file ...
4 years, 7 months ago (2016-05-17 04:42:59 UTC) #27
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1414123002/360001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1414123002/360001
4 years, 7 months ago (2016-05-19 20:44:54 UTC) #30
commit-bot: I haz the power
Try jobs failed on following builders: cast_shell_android on tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/cast_shell_android/builds/69113) cast_shell_linux on tryserver.chromium.linux (JOB_FAILED, ...
4 years, 7 months ago (2016-05-19 20:54:32 UTC) #32
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1414123002/380001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1414123002/380001
4 years, 7 months ago (2016-05-20 01:29:52 UTC) #35
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1414123002/400001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1414123002/400001
4 years, 7 months ago (2016-05-20 01:48:51 UTC) #38
commit-bot: I haz the power
Committed patchset #21 (id:400001)
4 years, 7 months ago (2016-05-20 03:41:27 UTC) #39
commit-bot: I haz the power
4 years, 7 months ago (2016-05-20 03:42:55 UTC) #41
Message was sent while issue was closed.
Patchset 21 (id:??) landed as
https://crrev.com/c27bc134ef590aa1435f9ccd6bcb35219c9b3cf3
Cr-Commit-Position: refs/heads/master@{#394985}

Powered by Google App Engine
This is Rietveld 408576698