DragonFly users List (threaded) for 2012-10
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]
Re: Fwd: df64 pkgsrc 2012Q3 DragonFly 3.2/x86_64 2012-10-09 19:40
This is a multi-part message in MIME format.
--------------070001000806040807080607
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
On 10/27/12 12:07, Justin Sherrill wrote:
> The i386 bulk build is at 9115 of 12014. I've had a lot of trouble
> with packages just hanging when building; I don't know if it's an
> accident of my setup or what.
If the 'stuck builds' were getting stuck because of autoconf 'conftest'
programs getting stuck in a loop and never exiting, I had the same from
my build of ~1mo ago - I did not get to the point of investigating
the real problems, but running a little loop to kill conftest processes
in another terminal let my build proceed without manual intervention.
I'll probably retry another build in another jail at some point not
too long from now and try to track down the specific tests -
but in any event, some of the problem packages for me then were:
drwxr-xr-x 1 root wheel 0 Sep 25 01:38 wget-1.14
drwxr-xr-x 1 root wheel 0 Sep 25 02:13 freeciv-share-2.3.2nb1
drwxr-xr-x 1 root wheel 0 Sep 26 03:39 coreutils-8.13nb4
Attached my kill script - probably a more elegant way to to this,
esp since it determines the stuck process from the last modified
pkgsrc work directory and so it would not be -J compatible, but
perhaps it's useful.
Cheers,
- Chris
--------------070001000806040807080607
Content-Type: text/plain;
name="stuckkill"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
filename="stuckkill"
#! /bin/sh
# problem: conftest programs getting stuck
# solution: run this until it can be fixed.
# pidlist(): list stuck conftest processes
#
# converts:
# TIME PID UCOMM
# 0:00.02 96074 conftest
# to:
# 00002 96074 conftest
#
# and filters out < 10m processes.
#
pidlist() {
ps -o time -o pid -o comm \
| sed -e 's/0:/0/' -e 's:\.::g' -e 's:^ *::' \
| egrep -v '^(TIME|00)' |grep conftest \
| cut -wf 2
}
while true; do
stuck="`pidlist`";
if [ ! -z "$stuck" ]; then
echo `date` : stuck proceses detected: $stuck;
for p in $stuck; do
ps axw |grep "^$p";
# list job - FIXME won't work for -J bulks..
ls -lrt /pkgsrckit/bulklog |tail -n 1;
kill -9 $p;
echo;
done
fi
sleep 5;
done
--------------070001000806040807080607--
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]