Date: Sat, 11 Aug 2012 14:58:32 +0200 From: Michael Ranner <michael@ranner.eu> To: Doug Barton <dougb@FreeBSD.org> Cc: ports@freebsd.org, HU Dong <itechbear@gmail.com> Subject: Re: portmaster 3.13.13 real endless loop "Waiting on fetch & checksum..." Message-ID: <502656F8.7050900@ranner.eu> In-Reply-To: <50262406.2000302@FreeBSD.org> References: <50250E97.4000004@ranner.eu> <CAA96eVsYX1TaXkFg4tXV=KXhbc6wE8ZhhfWi8RUzEjKwGCEtfQ@mail.gmail.com> <502523D4.4050200@ranner.eu> <CAA96eVu8vs3cLRxUacW2Qu9K6iBdNbydBrhH4NUO1hqAWo7nfA@mail.gmail.com> <50258D15.8010606@FreeBSD.org> <CAA96eVuVdFGiiZZmryPN=eu0=mnT-VNsdG_j1UsPToNi48ZSfQ@mail.gmail.com> <5025B03A.5080707@FreeBSD.org> <50261211.3090502@ranner.eu> <5026133B.5000500@FreeBSD.org> <502616A8.5010200@ranner.eu> <50262406.2000302@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Am 11.08.12 11:21, schrieb Doug Barton: > 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. fetchlog is not empty with "-F" but its empty with "-i". I am also 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. I know. I have already debugged to the loop waiting for the subshell in background. I can exclude that "make fetch" is hangin, because there is only the waiting loop but no fetch or make process. > > 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. I also doubt that there is a fault in portmaster. But I have no idea where to locate the problem. In the mean time I have rebuild world, the problem still exists. > > 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? No. I does not download except with "portmaster -F" > 2. Does the fetch complete? That is, does the full file get downloaded, > which matches the size and checksum in the distinfo file? There is no incomplete file in /usr/ports/distfiles It seems to me, that "(pm_make -DBATCH checksum >> $fetchlog 2>&1 && {" on line 3330 exits in error, but there is no output in fetchlog. > 3. If the fetching of the file completes, does 'ps axww' show that a > fetch process for that file is still underway? No there is no fetch process. I think that, because of some strange reason, make checksum exits before launching fetch. > 4. If the fetching of the file completes, can you run 'make checksum' in > the port directory and get a positive result? I can run "make checksum" in almost any port directory without problems. No hangs or refetches. > 5. What happens if you just let the portmaster process run for a few hours? Will make it now. Regards, Michael > > Doug -- Mit freundlichen Grüßen Ing. Michael Ranner GSM: +43 676 4155044 Mail: michael@ranner.eu WWW: http://www.azedo.at/
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?502656F8.7050900>