Need to provide a way for anonymous users to get a list of archive mirrors on their country (or continent, if there's none in their country)

Bug #72110 reported by Guilherme Salgado
8
Affects Status Importance Assigned to Milestone
Launchpad itself
Fix Released
Medium
Guilherme Salgado

Bug Description

Apt will soon start to choose the best mirror to use whenever an apt-get update/upgrade is ran, and it'll do that based on a list of mirrors given to it by launchpad. This list should include all mirrors on the same country that the user is at that point (we'll guess that by the user's IP address), or, if there's no mirrors on that country, we'll include other mirrors in countries that are in the same continent. This list will also always include archive.ubuntu.com, so that we have a fallback.

It's also important to note that a mirror can only be included in this list if it's an official mirror and has been successfully probed.

Changed in launchpad:
assignee: nobody → salgado
importance: Undecided → Medium
status: Unconfirmed → Confirmed
Revision history for this message
Guilherme Salgado (salgado) wrote :

Since this is a service that may get several hits per second, we need to either make it very light or cache these country lists somehow.

One option would be to generate these lists for each country right after every run of the mirror prober, since it's very unlikely that we have changes (like a mirror being made unofficial) between two probes, causing the lists to change.

Revision history for this message
Guilherme Salgado (salgado) wrote :

Independently of how we're going to store/cache the list of mirrors for each country, we can be sure that apt will have to first issue a request to launchpad so that we can determine the country the user is, using geoip.

After that is done, there may be a few different ways feed the list of mirrors to apt. Here are a couple of them:

1) Get a simple (text-only) list containing only the mirror URLs for a given country from the librarian and feed that data to apt. This file would be stored after each probe run and we'd use a separate table to keep the country/mirror-list mapping.

2) Point apt to a URL of the form http://foo.bar/apt-mirror-lists/<country-code> and use apache to serve these files. These will also be generated after a probe run but instead will be stored as a directory structure on disk.

Changed in launchpad:
status: Confirmed → In Progress
Changed in launchpad:
status: In Progress → Fix Committed
Changed in launchpad:
status: Fix Committed → Fix Released
Revision history for this message
Guilherme Salgado (salgado) wrote :

For now we have http://launchpad.net/ubuntu/+countrymirrors-archive, which is dynamically generated every time it's accessed, meaning it's not yet ready for prime time. On bug 94785 we discuss how to make it ready for prime time.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.