From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ludovic =?UTF-8?Q?Court=C3=A8s?= Subject: bug#33239: 'guix offload' regularly hangs in 'channel-get-exit-status' call Date: Tue, 25 Dec 2018 17:49:00 +0100 Message-ID: <87zhsteemb.fsf@gnu.org> References: <87k1lvrblp.fsf@gnu.org> <874lb5ld5e.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 ([208.118.235.92]:33422) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gbpuA-0005zu-1O for bug-guix@gnu.org; Tue, 25 Dec 2018 11:50:06 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gbpu6-0001dd-2E for bug-guix@gnu.org; Tue, 25 Dec 2018 11:50:05 -0500 Received: from debbugs.gnu.org ([208.118.235.43]:38485) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gbpu5-0001dT-VF for bug-guix@gnu.org; Tue, 25 Dec 2018 11:50:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1gbpu5-000565-Sh for bug-guix@gnu.org; Tue, 25 Dec 2018 11:50:01 -0500 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: <874lb5ld5e.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Sat, 22 Dec 2018 17:49:49 +0100") 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: 33239@debbugs.gnu.org Hello! Ludovic Court=C3=A8s skribis: > ludo@gnu.org (Ludovic Court=C3=A8s) skribis: > >> The =E2=80=98guix offload=E2=80=99 processes on berlin regularly hang wh= ile calling >> =E2=80=98channel-get-exit-status=E2=80=99: >> >> (gdb) bt >> #0 0x00007f299fb330f1 in __GI___poll (fds=3D0x1dd58c0, nfds=3D1, timeou= t=3D-1) at ../sysdeps/unix/sysv/linux/poll.c:29 >> #1 0x00007f2994287577 in ssh_poll_ctx_dopoll () from target:/gnu/store/= wmpg67bn7i7pqc0p4xjp1npnqixk9znd-libssh-0.7.6/lib/libssh.so.4 >> #2 0x00007f29942884d9 in ssh_handle_packets () from target:/gnu/store/w= mpg67bn7i7pqc0p4xjp1npnqixk9znd-libssh-0.7.6/lib/libssh.so.4 >> #3 0x00007f29942885ad in ssh_handle_packets_termination () from target:= /gnu/store/wmpg67bn7i7pqc0p4xjp1npnqixk9znd-libssh-0.7.6/lib/libssh.so.4 >> #4 0x00007f2994275080 in ssh_channel_get_exit_status () from target:/gn= u/store/wmpg67bn7i7pqc0p4xjp1npnqixk9znd-libssh-0.7.6/lib/libssh.so.4 >> #5 0x00007f29946dd11a in guile_ssh_channel_get_exit_status () from targ= et:/gnu/store/i3nfl17wfx7sryq6w15r9wxl7ilmq4rb-guile-ssh-0.11.3/lib/libguil= e-ssh.so.11 >> #6 0x00007f29a1765965 in vm_regular_engine (thread=3D0x1dd58c0, vp=3D0x= 1d4df30, registers=3D0xffffffff, resume=3D-1615646479) at vm-engine.c:786 > > I was able to come up with a reduced test case for Guile-SSH: > > https://github.com/artyom-poptsov/guile-ssh/issues/11 It turned out that the code to start a REPL server in (ssh dist node) would currently hang, as I wrote in the bug report above. After investigation, I decided that inferiors are more appropriate than Guile-SSH=E2=80=99s node to address this use case, after all. Commit ed7b44370f71126087eb953f36aad8dc4c44109f changes =E2=80=98guix offload=E2= =80=99 to inferiors. As a result, build machines must now run Guix > 0.15.0, which provides =E2=80=98guix repl=E2=80=99. That in turn simplifies setup of build machin= es: no need to fiddle with GUILE_LOAD_PATH. On berlin, build machines were running an older Guix so I copied a recently pulled Guix on each of them and installed it in ~/.config/guix/current. They=E2=80=99re now operational, except for the AR= Mv7 one which is still pulling. So far it seems to be working well but we=E2=80=99ll have to keep an eye on it. Thanks, Ludo=E2=80=99.