From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ricardo Wurmus Subject: Re: bug#27476: guix pull fails on powerful server Date: Tue, 29 Jan 2019 11:07:15 +0100 Message-ID: <8736pbrd4c.fsf@elephly.net> References: <87h8vvp1q7.fsf@elephly.net> <87377esu1a.fsf@gnu.org> <87k20nz18u.fsf@igalia.com> <87a81jj5gg.fsf@gnu.org> <87bmlyzxj7.fsf@elephly.net> <87shf44ny0.fsf@elephly.net> <878tfi9x15.fsf@gnu.org> <87h8nstms1.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 ([209.51.188.92]:52239) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1goQXb-00018Z-DY for help-guix@gnu.org; Tue, 29 Jan 2019 05:22:52 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1goQXa-0004p6-JU for help-guix@gnu.org; Tue, 29 Jan 2019 05:22:51 -0500 Received: from sender-of-o51.zoho.com ([135.84.80.216]:21081) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1goQXa-0004mj-85 for help-guix@gnu.org; Tue, 29 Jan 2019 05:22:50 -0500 In-reply-to: <87h8nstms1.fsf@gnu.org> List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-guix-bounces+gcggh-help-guix=m.gmane.org@gnu.org Sender: "Help-Guix" To: Ludovic =?utf-8?Q?Court=C3=A8s?= Cc: Andy Wingo , help-guix@gnu.org, 27476@debbugs.gnu.org Ludovic Court=C3=A8s writes: > ludo@gnu.org (Ludovic Court=C3=A8s) skribis: > >> I can=E2=80=99t reproduce this with current Guile =E2=80=98stable-2.2=E2= =80=99, following Andy=E2=80=99s >> weak-table rewrite=C2=B9, so this might have been a weak-table bug showi= ng up >> under memory pressure. > > With Guile 2.2.3 a similar program triggers a crash very quickly: > > --8<---------------cut here---------------start------------->8--- > $ cat ../guile-debugging/syntax-parms.scm > (use-modules (ice-9 threads) > (srfi srfi-1) > (guix monads) > (guix store) > (system base compile)) > > (compile #f) ;load modules > > (define threads > (unfold (lambda (x) (> x 100)) > (lambda (x) > (call-with-new-thread > (lambda () > (while #t > (compile > '(mlet %store-monad ((x y)) > (mbegin %store-monad > (return x) > (return y))) > #:env (current-module) > #:from 'scheme > #:to 'tree-il))))) > 1+ > 0)) > > (for-each join-thread threads) [=E2=80=A6] > --8<---------------cut here---------------end--------------->8--- I tried this with guile 2.2.4 on my laptop with 4 CPUs (according to lscpu) and I did not get a crash even after waiting for several minutes. -- Ricardo