Investigate high rate of DOWNLOAD_MAX_ATTEMPTS_REACHED |
||||
Issue descriptionIn the prefetching system, we assume that DownloadService can reliably download files. Because of this, we don't usually retry downloads. However, if we notice that we started a download but on the next startup of DownloadService can't find that download in the list of finished or active downloads, we will restart it. We expect this to be a rare case because it means Chrome exited unexpectedly between the commit to our DB and the commit to the DS' DB. This is at 10% of all records, and close to 15% of all URLs that reach the download phase, and definitely represents a bug at this level.
,
Sep 27 2017
https://cs.chromium.org/chromium/src/chrome/browser/offline_pages/prefetch/offline_prefetch_download_client.cc?rcl=c56e4960d8d090c50e5a2e296f78af8e03bf2dc9&l=31 is where we determine whether downloads are outstanding or still pending.
,
Sep 27 2017
,
Sep 28 2017
,
Oct 10 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/c33917fbf11cb84f73420c11f15d731b93a0b9b6 commit c33917fbf11cb84f73420c11f15d731b93a0b9b6 Author: Justin DeWitt <dewittj@chromium.org> Date: Tue Oct 10 07:13:02 2017 Offline Pages: Downloader should not allow multiple reconciliation. The downloader keeps track of when the download service starts, and calls back to the dispatcher when reconciliation is appropriate. This fixes an issue where reconciliation happened multiple times within a single run of Chrome and so we were forgetting about downloads that had been started during that run. Bug: 769421 Change-Id: Iedbf6eab0414acc433c07d55e485e0632e4ad5af Reviewed-on: https://chromium-review.googlesource.com/707928 Reviewed-by: Dmitry Titov <dimich@chromium.org> Commit-Queue: Dmitry Titov <dimich@chromium.org> Cr-Commit-Position: refs/heads/master@{#507608} [modify] https://crrev.com/c33917fbf11cb84f73420c11f15d731b93a0b9b6/components/offline_pages/core/prefetch/prefetch_downloader_impl.cc [modify] https://crrev.com/c33917fbf11cb84f73420c11f15d731b93a0b9b6/components/offline_pages/core/prefetch/prefetch_downloader_impl.h [modify] https://crrev.com/c33917fbf11cb84f73420c11f15d731b93a0b9b6/components/offline_pages/core/prefetch/prefetch_downloader_impl_unittest.cc [modify] https://crrev.com/c33917fbf11cb84f73420c11f15d731b93a0b9b6/components/offline_pages/core/prefetch/test_prefetch_dispatcher.cc [modify] https://crrev.com/c33917fbf11cb84f73420c11f15d731b93a0b9b6/components/offline_pages/core/prefetch/test_prefetch_dispatcher.h |
||||
►
Sign in to add a comment |
||||
Comment 1 by dewittj@chromium.org
, Sep 27 2017