Issue metadata
Sign in to add a comment
|
Regression : XHR not able to create blob for big images when new instance of Chrome Beta is launched. |
||||||||||||||||||||||
Issue descriptionChrome Version: 67.0.3396.40 (Official Build) beta (64-bit) OS: Ubuntu What steps will reproduce the problem? (1) Download attached "xhr.html" (2) Edit it and provide the path for Image(having size > 7MB) in xhr.open(). (2) Serve this file using any web server. For ex, you can use "python -m SimpleHTTPServer" from terminal. (3) From terminal open xhr.html in chrome beta using command : google-chrome-beta "http://localhost:8000/xhr.html" What is the expected result? The provided image should get rendered/displayed on browser. What happens instead? We get Error "Failed to load resource: net::ERR_INSUFFICIENT_RESOURCES" Note: This issue occurs only when we open the xhr.html in new browser instance. If the browser is already opened and we follow the steps above to open xhr.html, then the html gets open in new tab with image. Did this work before? Yes it is working fine on Google Chrome 66.0.3359.181 (Official Build) (64-bit)
,
May 18 2018
,
May 18 2018
,
May 21 2018
Confirmed. Running a bisect.
,
May 21 2018
Bisect result: You are probably looking for a change made after 547247 (known good), but no later than 547248 (first known bad). CHANGELOG URL: The script might not always return single CL as suspect as some perf builds might get missing due to failure. https://chromium.googlesource.com/chromium/src/+log/e5d79e6c07b0280e81db5c2b5636b4d1d2511a02..090b1a4fea8bd71d2bd5e3503d3397985ad58022 [XHR] Replace usage of download_to_file with new download_to_blob feature. download_to_file isn't really implementable with the network service (since there is no central browser-side place where all fetches pass through), and because we'd like blobs downloaded by XHR to be managed by the blob system anyway, this replaces download_to_file with a new download_to_blob feature. With this, blink::ResourceLoader redirects the datapipe it receives from a URLLoader to the blob system, and passes the resulting blob back to XHR. Design doc: https://docs.google.com/document/d/1V_rFqFeYc_XpzEc_hGF9Wlat5mH62lREJ1I1dCJ4lX0/edit#heading=h.2ndyupa99wqr Bug: 754493 , 712693 , 791702 Change-Id: I258150937c424b72824dadbc2832764ed54c1ca5 Reviewed-on: https://chromium-review.googlesource.com/955957 Reviewed-by: Lei Zhang <thestig@chromium.org> Reviewed-by: Yutaka Hirano <yhirano@chromium.org> Reviewed-by: Kinuko Yasuda <kinuko@chromium.org> Commit-Queue: Marijn Kruisselbrink <mek@chromium.org> Cr-Commit-Position: refs/heads/master@{#547248}
,
May 21 2018
Ah yes, a known issue I was hoping to get away with (since who would want to create large blobs right after startup...), but still definitely something we should fix. The problem here is that the blob system (in particular its ability to use the disk) is lazily initialized, and XHR-ing to a blob doesn't make sure initialization has happened.
,
May 22 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/faea0bfbfb62ce9adac8e9d58adc1e6e689778aa commit faea0bfbfb62ce9adac8e9d58adc1e6e689778aa Author: Marijn Kruisselbrink <mek@chromium.org> Date: Tue May 22 20:38:05 2018 [BlobStorage] Wait for limits calculation when deciding how to stream to blobs. This makes sure that we don't incorrectly reject large XHR-to-blob attempts before we've initialized blob storage limits. Bug: 843975 Change-Id: I93b45b020fea4a0964af0f26ff7337e4cf85d3d2 Reviewed-on: https://chromium-review.googlesource.com/1068116 Reviewed-by: Daniel Murphy <dmurph@chromium.org> Commit-Queue: Marijn Kruisselbrink <mek@chromium.org> Cr-Commit-Position: refs/heads/master@{#560760} [modify] https://crrev.com/faea0bfbfb62ce9adac8e9d58adc1e6e689778aa/storage/browser/blob/blob_builder_from_stream.cc [modify] https://crrev.com/faea0bfbfb62ce9adac8e9d58adc1e6e689778aa/storage/browser/blob/blob_builder_from_stream_unittest.cc [modify] https://crrev.com/faea0bfbfb62ce9adac8e9d58adc1e6e689778aa/storage/browser/blob/blob_memory_controller.cc [modify] https://crrev.com/faea0bfbfb62ce9adac8e9d58adc1e6e689778aa/storage/browser/blob/blob_memory_controller.h [modify] https://crrev.com/faea0bfbfb62ce9adac8e9d58adc1e6e689778aa/storage/browser/blob/blob_registry_impl_unittest.cc
,
May 22 2018
That should fix this for M68, don't think it's worth backporting to M67, since it only effects operations right after launching chrome. |
|||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||
Comment 1 by manoranj...@chromium.org
, May 18 2018Labels: Needs-Triage-M67