From owner-freebsd-hackers@FreeBSD.ORG Fri Feb 27 06:13:03 2009 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 766C21065673 for ; Fri, 27 Feb 2009 06:13:03 +0000 (UTC) (envelope-from dan@dan.emsphone.com) Received: from email1.allantgroup.com (email1.emsphone.com [199.67.51.115]) by mx1.freebsd.org (Postfix) with ESMTP id 30CD78FC1B for ; Fri, 27 Feb 2009 06:13:03 +0000 (UTC) (envelope-from dan@dan.emsphone.com) Received: from dan.emsphone.com (dan.emsphone.com [199.67.51.101]) by email1.allantgroup.com (8.14.0/8.14.0) with ESMTP id n1R5vdpO047984 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Thu, 26 Feb 2009 23:57:39 -0600 (CST) (envelope-from dan@dan.emsphone.com) Received: from dan.emsphone.com (smmsp@localhost [127.0.0.1]) by dan.emsphone.com (8.14.3/8.14.3) with ESMTP id n1R5vc7X069543 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Thu, 26 Feb 2009 23:57:39 -0600 (CST) (envelope-from dan@dan.emsphone.com) Received: (from dan@localhost) by dan.emsphone.com (8.14.3/8.14.3/Submit) id n1R5vb1H069542; Thu, 26 Feb 2009 23:57:37 -0600 (CST) (envelope-from dan) Date: Thu, 26 Feb 2009 23:57:37 -0600 From: Dan Nelson To: Nate Eldredge Message-ID: <20090227055737.GF45976@dan.emsphone.com> References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-OS: FreeBSD 7.1-STABLE User-Agent: Mutt/1.5.19 (2009-01-05) X-Virus-Scanned: ClamAV version 0.94.1, clamav-milter version 0.94.1 on email1.allantgroup.com X-Virus-Status: Clean X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-2.0.2 (email1.allantgroup.com [199.67.51.78]); Thu, 26 Feb 2009 23:57:39 -0600 (CST) X-Scanned-By: MIMEDefang 2.45 Cc: freebsd-hackers@freebsd.org Subject: Re: portupgrade spurious skips X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 27 Feb 2009 06:13:03 -0000 In the last episode (Feb 26), Nate Eldredge said: > In the past few months I've noticed a bug in portupgrade. When I update > my ports tree and do `portupgrade -a', often a few ports will be skipped, > supposedly because another port on which they depend failed to install. > However, the apparently failed port actually did not fail, and if I rerun > `portupgrade -a', some of the skipped ports will install successfully > without complaint. After enough iterations I can eventually get all of > them. > > I'd like to file a PR about this, but it's a little bit tricky coming up > with a test case, since the behavior depends on having outdated packages > installed, and on the dependencies between them. Moreover, after I run > `portupgrade -a' and notice the problem, the state of the installed > packages has changed and the same packages aren't skipped the next time. > So my question is whether anyone has ideas about how to construct a > reasonable test case that could help me make this reproducible and easier > to investigate. Any thoughts? "me too".. It seems to happen frequently when doing > 20 or so ports. Every week or so I upgrade old ports and don't have problems, but after a gnome or xorg update that ends up bumping the portrevision for half my installed ports, it always takes three or four "portupgrade -a" loops for everything to buid. If you've got ZFS, you can snapshot your filesystems, and if portupgrade fails, roll back to the snapshot and do it again to see if it happens on the same port a second time. Or if you know ruby, you could instrument the code that checks for port build errors and see if it's got a bug in it... -- Dan Nelson dnelson@allantgroup.com