From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mark H Weaver Subject: bug#28211: Grafting fails for latest Go release candidate Date: Thu, 24 Aug 2017 00:56:30 -0400 Message-ID: <878ti9o96p.fsf__18096.9051820741$1503550705$gmane$org@netris.org> References: <20170731143925.GA19814@jasmine.lan> <87wp6kuzrp.fsf@fastmail.com> <87wp6fb0p7.fsf@fastmail.com> <87efsljb63.fsf@igalia.com> <87378lszri.fsf@gnu.org> <87h8x04qky.fsf@fastmail.com> <87wp5v2ylv.fsf@fastmail.com> <87lgm9j3q9.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:58801) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dkkDX-00021U-LB for bug-guix@gnu.org; Thu, 24 Aug 2017 00:58:08 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dkkDS-00049s-PL for bug-guix@gnu.org; Thu, 24 Aug 2017 00:58:07 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:43310) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dkkDS-00049n-Lp for bug-guix@gnu.org; Thu, 24 Aug 2017 00:58:02 -0400 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: <87lgm9j3q9.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Thu, 24 Aug 2017 00:53:18 +0200") List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: "bug-Guix" To: Ludovic =?UTF-8?Q?Court=C3=A8s?= Cc: Andy Wingo , guix-devel@gnu.org, 28211@debbugs.gnu.org ludo@gnu.org (Ludovic Court=C3=A8s) writes: > Marius Bakke skribis: > >> Most likely just lucky, new grafting failure today. >> >> I've noticed they are more likely to occur when the host system is busy. >> Grafting a large package such as 'texlive' is almost guaranteed to fail >> on a fully-utilized machine. >> >> Maybe we should switch back to 2.0 for the time being? > > Yes, done: . > > I took a look: the code in (guix build graft) is multi-threaded but > there=E2=80=99s no shared state among threads (except for the current > output/error ports, In Guile, port operations do not include built-in thread synchronization, so it's not safe for multiple threads to write to the current output/error ports concurrently. Those writes should be protected by a mutex. However, we had agreed that in 2.2, the port operations should be implemented in such a way that the worst that could happen on typical hardware in practice was for the output to be garbled. I didn't review the new 2.2 ports code, so I'm not sure whether this was accomplished. Mark