From: Zac Medico Date: Fri, 21 Nov 2008 21:28:09 +0000 (-0000) Subject: In EbuildProcess._start(), don't open the log file during the clean phase X-Git-Tag: v2.2_rc15~7 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=d82225a6c9e6702bcdb4022649f6666981565359;p=portage.git In EbuildProcess._start(), don't open the log file during the clean phase since the open file can result in an nfs lock on $T/build.log which prevents the clean phase from removing $T. Thanks to Jeremy Olexa for reporting. svn path=/main/trunk/; revision=12016 --- diff --git a/pym/_emerge/__init__.py b/pym/_emerge/__init__.py index 72f48a31a..8978c4684 100644 --- a/pym/_emerge/__init__.py +++ b/pym/_emerge/__init__.py @@ -2885,7 +2885,11 @@ class EbuildProcess(SpawnProcess): __slots__ = ("phase", "pkg", "settings", "tree") def _start(self): - self.logfile = self.settings.get("PORTAGE_LOG_FILE") + # Don't open the log file during the clean phase since the + # open file can result in an nfs lock on $T/build.log which + # prevents the clean phase from removing $T. + if self.phase not in ("clean", "cleanrm"): + self.logfile = self.settings.get("PORTAGE_LOG_FILE") SpawnProcess._start(self) def _pipe(self, fd_pipes):