Error before sending parallel requests should block the requests |
||||||||||
Issue descriptionDownload service may hit DCHECK_LE(initial_request_offset_, first_slice_offset); in parallel_download_job.cc. This is because an IO thread error occur after we send the initial request, but before we send parallel request. Before sending parallel requests, we should check if there is error in download item.
,
Aug 11 2017
,
Aug 11 2017
,
Aug 11 2017
,
Aug 11 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/0f2c5ddcaba532562888e6effb626c64b9064b4b commit 0f2c5ddcaba532562888e6effb626c64b9064b4b Author: Xing Liu <xingliu@chromium.org> Date: Fri Aug 11 18:04:26 2017 Fix a bug that IO thread error should block parallel requests. We send parallel requests after sending the initial request and initializing download file. However, an IO thread error may occur during download resumption between file initialized and building parallel request, we should check this error, or may hit the following DCHECK: DCHECK_LE(initial_request_offset_, first_slice_offset); Because we clear |received_slices_| in DownloadItemImpl::Start when interrupt reason is not none. Bug: 754544 , 736046 Change-Id: I2d15469bb787411b5ecdeb0f40028f5527574c9f Reviewed-on: https://chromium-review.googlesource.com/611609 Reviewed-by: David Trainor <dtrainor@chromium.org> Commit-Queue: Xing Liu <xingliu@chromium.org> Cr-Commit-Position: refs/heads/master@{#493808} [modify] https://crrev.com/0f2c5ddcaba532562888e6effb626c64b9064b4b/content/browser/download/parallel_download_job.cc [modify] https://crrev.com/0f2c5ddcaba532562888e6effb626c64b9064b4b/content/browser/download/parallel_download_job_unittest.cc
,
Aug 11 2017
,
Aug 11 2017
This bug requires manual review: M61 has already been promoted to the beta branch, so this requires manual review Please contact the milestone owner if you have questions. Owners: amineer@(Android), cmasso@(iOS), ketakid@(ChromeOS), govind@(Desktop) For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Aug 11 2017
+amineer@, this bug may result in creating unexpected download requests, and may break download resumption, PTAL. The fix is fairly small.
,
Aug 14 2017
Merge approved for M61 branch 3163. Please merge by EOD today. Thanks!
,
Aug 14 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/e6afef8c84d9fbf272a60a9815c10130272fd736 commit e6afef8c84d9fbf272a60a9815c10130272fd736 Author: Xing Liu <xingliu@chromium.org> Date: Mon Aug 14 17:08:53 2017 Fix a bug that IO thread error should block parallel requests. We send parallel requests after sending the initial request and initializing download file. However, an IO thread error may occur during download resumption between file initialized and building parallel request, we should check this error, or may hit the following DCHECK: DCHECK_LE(initial_request_offset_, first_slice_offset); Because we clear |received_slices_| in DownloadItemImpl::Start when interrupt reason is not none. TBR=xingliu@chromium.org (cherry picked from commit 0f2c5ddcaba532562888e6effb626c64b9064b4b) Bug: 754544 , 736046 Change-Id: I2d15469bb787411b5ecdeb0f40028f5527574c9f Reviewed-on: https://chromium-review.googlesource.com/611609 Reviewed-by: David Trainor <dtrainor@chromium.org> Commit-Queue: Xing Liu <xingliu@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#493808} Reviewed-on: https://chromium-review.googlesource.com/613669 Reviewed-by: Xing Liu <xingliu@chromium.org> Cr-Commit-Position: refs/branch-heads/3163@{#527} Cr-Branched-From: ff259bab28b35d242e10186cd63af7ed404fae0d-refs/heads/master@{#488528} [modify] https://crrev.com/e6afef8c84d9fbf272a60a9815c10130272fd736/content/browser/download/parallel_download_job.cc [modify] https://crrev.com/e6afef8c84d9fbf272a60a9815c10130272fd736/content/browser/download/parallel_download_job_unittest.cc
,
Aug 14 2017
,
Aug 14 2017
Since this CL is not serve regression that impacts the users, and its unit test uses something not included in M61, I probably won't reland it to M61.
,
Aug 14 2017
I'm confused by c#12, if this isn't that important why did we merge request it in the first place?
,
Aug 14 2017
Sorry I probably shouldn't merge it as the first place. It is a bug, that may create additional requests, but all the additional requests should also failed. It shouldn't change the user experience. But I'm not sure if this bug may result in more serious issue, like file corruption.
,
Aug 15 2017
|
||||||||||
►
Sign in to add a comment |
||||||||||
Comment 1 by xingliu@chromium.org
, Aug 11 2017