Date: Fri, 15 Nov 2002 13:09:14 +0300 (MSK) From: Seva Gluschenko <gvs@rinet.ru> To: FreeBSD-gnats-submit@FreeBSD.org Cc: noc@rinet.ru Subject: ports/45311: make fetch-recursive in ports eats resources for waste Message-ID: <200211151009.gAFA9E9i046314@gemnet.ru>
next in thread | raw e-mail | index | archive | help
>Number: 45311 >Category: ports >Synopsis: make fetch-recursive in ports eats resources for waste >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-ports >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Fri Nov 15 02:10:01 PST 2002 >Closed-Date: >Last-Modified: >Originator: Seva Gluschenko >Release: FreeBSD 4.7-STABLE i386 >Organization: JSC Demos-Internet >Environment: System: FreeBSD gemnet.ru 4.7-STABLE FreeBSD 4.7-STABLE #8: Fri Nov 15 10:18:34 MSK 2002 root@gemnet.ru:/cl/obj/cl/system/sys/gem i386 >Description: When trying to make fetch-recursive it appears under certain circumstances to cycle at spawning child processes verifying make conditions, so problem is maybe in ports/Mk >How-To-Repeat: cd /usr/ports/devel/gettext make fetch-recursive After certain amount of time you'll maybe get messages like "cannot fork: resource is temporarily unavailable" and notice that your swap is filling out. Running ps -auwwx I've got some information about the process: [] root 10852 0,0 0,0 660 0 p0 IW - 0:00,00 (sh) root 10853 0,0 0,0 660 216 p0 I 12:54PM 0:00,00 /bin/sh -ec checked="/usr/ports/converters/libiconv /usr/ports/devel /libtool "; for dir in $(echo " gmake:/usr/ports/devel/gmake libtool:/usr/ports/devel/libtool " | /usr/bin/tr '\\040' '\\012' | / usr/bin/sed -e 's/^[^:]*://' -e 's/:.*//') $(echo | /usr/bin/tr '\\040' '\\012' | /usr/bin/sed -e 's/:.*//'); do if [ -d $dir ]; t hen if (echo $checked | /usr/bin/grep -qwv "$dir"); then child=$(cd $dir; make PARENT_CHECKED="$checked" all-depends-list); for d in $child; do echo $d; done; echo $dir; checked="$dir $child $checked"; fi; else echo "expat-1.95.1_1: \\"$dir\\" non-existent -- dependency list incomplete" >&2; fi; done | sort -u root 10855 0,0 0,0 2028 464 p0 I 12:54PM 0:00,00 sort -u root 10866 0,0 0,0 652 0 p0 IW - 0:00,00 make PARENT_CHECKED=/usr/ports/converters/libiconv /usr/ports/devel/ libtool all-depends-list root 10871 0,0 0,0 660 0 p0 IW - 0:00,00 (sh) root 10872 0,0 0,0 660 216 p0 I 12:54PM 0:00,00 /bin/sh -ec checked="/usr/ports/converters/libiconv /usr/ports/devel /libtool "; for dir in $(echo " intl.4:/usr/ports/devel/gettext " | /usr/bin/tr '\\040' '\\012' | /usr/bin/sed -e 's/^[^:]*://' - e 's/:.*//') $(echo | /usr/bin/tr '\\040' '\\012' | /usr/bin/sed -e 's/:.*//'); do if [ -d $dir ]; then if (echo $checked | /usr/ bin/grep -qwv "$dir"); then child=$(cd $dir; make PARENT_CHECKED="$checked" all-depends-list); for d in $child; do echo $d; done; echo $dir; checked="$dir $child $checked"; fi; else echo "gmake-3.80: \\"$dir\\" non-existent -- dependency list incomplete" >& 2; fi; done | sort -u root 10874 0,0 0,0 2028 464 p0 I 12:54PM 0:00,00 sort -u root 10885 0,0 0,0 664 0 p0 IW - 0:00,00 make PARENT_CHECKED=/usr/ports/converters/libiconv /usr/ports/devel/ libtool all-depends-list root 10898 0,0 0,0 660 0 p0 IW - 0:00,00 (sh) root 10899 0,0 0,0 660 212 p0 I 12:54PM 0:00,00 /bin/sh -ec checked="/usr/ports/converters/libiconv /usr/ports/devel /libtool "; for dir in $(echo " libtool:/usr/ports/devel/libtool iconv.3:/usr/ports/converters/libiconv expat.4:/usr/ports/textpr oc/expat2 " | /usr/bin/tr '\\040' '\\012' | /usr/bin/sed -e 's/^[^:]*://' -e 's/:.*//') $(echo | /usr/bin/tr '\\040' '\\012' | /usr /bin/sed -e 's/:.*//'); do if [ -d $dir ]; then if (echo $checked | /usr/bin/grep -qwv "$dir"); then child=$(cd $dir; make PARENT _CHECKED="$checked" all-depends-list); for d in $child; do echo $d; done; echo $dir; checked="$dir $child $checked"; fi; else echo "gettext-0.11.5_1: \\"$dir\\" non-existent -- dependency list incomplete" >&2; fi; done | sort -u root 10901 0,0 0,0 2028 464 p0 I 12:54PM 0:00,01 sort -u root 10918 0,0 0,0 656 0 p0 IW - 0:00,00 make PARENT_CHECKED=/usr/ports/converters/libiconv /usr/ports/devel/ libtool all-depends-list root 10929 0,0 0,0 660 0 p0 IW - 0:00,00 (sh) root 10930 0,0 0,0 660 216 p0 I 12:54PM 0:00,00 /bin/sh -ec checked="/usr/ports/converters/libiconv /usr/ports/devel /libtool "; for dir in $(echo " gmake:/usr/ports/devel/gmake libtool:/usr/ports/devel/libtool " | /usr/bin/tr '\\040' '\\012' | / usr/bin/sed -e 's/^[^:]*://' -e 's/:.*//') $(echo | /usr/bin/tr '\\040' '\\012' | /usr/bin/sed -e 's/:.*//'); do if [ -d $dir ]; t hen if (echo $checked | /usr/bin/grep -qwv "$dir"); then child=$(cd $dir; make PARENT_CHECKED="$checked" all-depends-list); for d in $child; do echo $d; done; echo $dir; checked="$dir $child $checked"; fi; else echo "expat-1.95.1_1: \\"$dir\\" non-existent -- dependency list incomplete" >&2; fi; done | sort -u root 10932 0,0 0,0 2028 464 p0 I 12:54PM 0:00,00 sort -u root 10943 0,0 0,0 652 0 p0 IW - 0:00,00 make PARENT_CHECKED=/usr/ports/converters/libiconv /usr/ports/devel/ libtool all-depends-list root 10948 0,0 0,0 660 0 p0 IW - 0:00,00 (sh) root 10949 0,0 0,0 660 216 p0 I 12:54PM 0:00,00 /bin/sh -ec checked="/usr/ports/converters/libiconv /usr/ports/devel /libtool "; for dir in $(echo " intl.4:/usr/ports/devel/gettext " | /usr/bin/tr '\\040' '\\012' | /usr/bin/sed -e 's/^[^:]*://' - e 's/:.*//') $(echo | /usr/bin/tr '\\040' '\\012' | /usr/bin/sed -e 's/:.*//'); do if [ -d $dir ]; then if (echo $checked | /usr/ bin/grep -qwv "$dir"); then child=$(cd $dir; make PARENT_CHECKED="$checked" all-depends-list); for d in $child; do echo $d; done; echo $dir; checked="$dir $child $checked"; fi; else echo "gmake-3.80: \\"$dir\\" non-existent -- dependency list incomplete" >& 2; fi; done | sort -u root 10950 0,0 0,0 2028 464 p0 I 12:54PM 0:00,00 sort -u root 10962 0,0 0,0 664 0 p0 IW - 0:00,00 make PARENT_CHECKED=/usr/ports/converters/libiconv /usr/ports/devel/ libtool all-depends-list [] and so on. >Fix: I don't have any, sorry for that >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-ports" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200211151009.gAFA9E9i046314>