diff options
author | David Kalnischkies <david@kalnischkies.de> | 2015-07-09 12:21:20 +0200 |
---|---|---|
committer | David Kalnischkies <david@kalnischkies.de> | 2015-08-10 17:27:17 +0200 |
commit | a4b8112b19763cbd2c12b81d55bc7d43a591d610 (patch) | |
tree | 6fa3ae00e73753a4b06a3f87fb29dc2106943860 /methods/http.cc | |
parent | 1196da2e7b620ed7d1aed717a85c4879945ea699 (diff) |
handle site-changing redirects as mirror changes
Redirectors like httpredir.debian.org orchestra the download from
multiple (hopefully close) mirrors while having only a single central
sources.list entry by using redirects. This has the effect that the
progress report always shows the source it started with, not the mirror
it ends up fetching from, which is especially problematic for error
reporting as having a report for a "Hashsum mismatch" for the redirector
URI is next to useless as nobody knows which URI it was really fetched
from (regardless of it coming from a user or via the report script) from
this output alone. You would need to enable debug output and hope for
the same situation to arise again…
We hence reuse the UsedMirror field of the mirror:// method and detect
redirects which change the site and declare this new site as the
UsedMirrror (and adapt the description).
The disadvantage is that there is no obvious mapping anymore (it is
relatively easy to guess through with some experience) from progress
lines to sources.list lines, so error messages need to take care to use
the Target description (rather than current Item description) if they
want to refer to the sources.list entry.
Diffstat (limited to 'methods/http.cc')
0 files changed, 0 insertions, 0 deletions