portmaster 3.13.13 real endless loop "Waiting on fetch &
dougb at FreeBSD.org
Sat Aug 11 09:21:21 UTC 2012
On 08/11/2012 01:24 AM, Michael Ranner wrote:
> As I already told, "portmaster -F" is fetching to /usr/ports/distfiles
> and appending to fetchlog in /tmp
In your other message you indicate that the fetchlog in /tmp is empty.
So I'm confused.
> But "portmaster -i" does this not!
By the time it gets to the 'make checksum' process there is nothing
different about the code for -F or -i.
Based on what you're describing it sounds like your fetch process is
hanging, and/or not exiting properly.
What portmaster does is launch a subshell in the background that has a
mini-script to run 'make checksum'. That target will verify the files if
they exist, or fetch them and then verify if they do not. Once that is
done, the mini-script removes the fetchlog which acts as a sort of flag
to signal portmaster that it's done.
If the fetch part of the process is completing, but the actual 'make
checksum' target is not, that's an OS or ports infrastructure bug. If
the fetch is not completing it could be an OS bug, or it could be a
stalled/slow remote site, a bad Internet connection, or any of a
half-dozen other things.
Either way, I seriously doubt the code in portmaster is at fault. That
code hasn't changed in many years.
The only other thing I can think of to try is to start a build for one
of the ports you're having trouble with (after removing the distfiles of
course) and just let it run. While it's running, check these things:
1. Does the distfile actually get downloaded?
2. Does the fetch complete? That is, does the full file get downloaded,
which matches the size and checksum in the distinfo file?
3. If the fetching of the file completes, does 'ps axww' show that a
fetch process for that file is still underway?
4. If the fetching of the file completes, can you run 'make checksum' in
the port directory and get a positive result?
5. What happens if you just let the portmaster process run for a few hours?
More information about the freebsd-ports