aboutsummaryrefslogtreecommitdiffstats

pacredir - request flow

◀ Go back to main README

Whenever pacman sends a request to pacredir a number of requests (increasing with the number of hosts found) is sent through the network. Let's assume pacredir knows about two hosts.

OK - serving from local network

In this exemple one hast (host A) is missing the file, but second one (host B) does have the file.

For database files the decision on what return code (307 vs. 404) to send is made on the file age. The local file's timestamp is compared to what timestamp pacman sends in its request.

OK - serving from local network

After the initial request pacman is redirected to host B and gets the file there. No request is sent to the mirror.

FAIL - fallback to mirror

In this example no host has the file or the local database files are older than what pacman requested.

FAIL - fallback to mirror

All requests made by pacredir are answered with http code 404, thus pacman receives the same. Finally pacman falls back to the next mirror.


◀ Go back to main README
▲ Go back to top