GNU bug report logs - #46756
'guix deploy' not copying remote-gexp.scm with (build-locally? #f)

Previous Next

Package: guix;

Reported by: pkill9 <pkill9 <at> runbox.com>

Date: Wed, 24 Feb 2021 18:00:02 UTC

Severity: important

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 46756 in the body.
You can then email your comments to 46756 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#46756; Package guix. (Wed, 24 Feb 2021 18:00:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to pkill9 <pkill9 <at> runbox.com>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Wed, 24 Feb 2021 18:00:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: pkill9 <pkill9 <at> runbox.com>
To: bug-guix <at> gnu.org
Subject: guix deploy not copying remote-gexp.scm
Date: Wed, 24 Feb 2021 17:59:45 +0000
I keep getting this error:

```
(system-error "open-file" "~A: ~S" ("No such file or directory"
"/gnu/store/p3ahdfcwa5yd65l5nzsnzshw9s7x3xc7-remote-exp.scm") (2))
```

when I try to run `guix deploy`. This is on the remote machine. I can
get it to work by using `guix copy` to copy that file from my local
machine to the remote, but i don't know why it isn't copying it over
automatically.




Severity set to 'important' from 'normal' Request was from Maxim Cournoyer <maxim.cournoyer <at> gmail.com> to control <at> debbugs.gnu.org. (Sat, 03 Apr 2021 04:34:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-guix <at> gnu.org:
bug#46756; Package guix. (Sat, 03 Apr 2021 04:39:01 GMT) Full text and rfc822 format available.

Message #10 received at 46756 <at> debbugs.gnu.org (full text, mbox):

From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
To: pkill9 <pkill9 <at> runbox.com>
Cc: 46756 <at> debbugs.gnu.org
Subject: Re: bug#46756: guix deploy not copying remote-gexp.scm
Date: Sat, 03 Apr 2021 00:38:29 -0400
Hi!

pkill9 <pkill9 <at> runbox.com> writes:

> I keep getting this error:
>
> ```
> (system-error "open-file" "~A: ~S" ("No such file or directory"
> "/gnu/store/p3ahdfcwa5yd65l5nzsnzshw9s7x3xc7-remote-exp.scm") (2))
> ```
>
> when I try to run `guix deploy`. This is on the remote machine. I can
> get it to work by using `guix copy` to copy that file from my local
> machine to the remote, but i don't know why it isn't copying it over
> automatically.

I get this as well.  Here's the backtrace:

--8<---------------cut here---------------start------------->8---
 In ice-9/boot-9.scm:
   1731:15 19 (with-exception-handler #<procedure 7fb17c1e8870 at ice-9/boot-9.scm:1815:7 (exn)> _ # _ # …)
 In guix/status.scm:
     793:4 18 (call-with-status-report _ _)
 In ice-9/boot-9.scm:
   1736:10 17 (with-exception-handler _ _ #:unwind? _ #:unwind-for-type _)
 In guix/store.scm:
    636:37 16 (thunk)
    1305:8 15 (call-with-build-handler _ _)
    1305:8 14 (call-with-build-handler _ _)
    1305:8 13 (call-with-build-handler _ _)
    1305:8 12 (call-with-build-handler #<procedure 7fb17922a3f0 at guix/ui.scm:1171:2 (continue store …> …)
 In guix/scripts/deploy.scm:
    170:14 11 (_)
 In guix/store.scm:
    1346:2 10 (map/accumulate-builds #<store-connection 256.99 7fb179220870> _ _)
 In srfi/srfi-1.scm:
    586:17  9 (map1 (#<<unresolved> things: (("/gnu/store/7hj8kbsqkm3qcpd8dyayx1c53r59ma2v-guile-3.0.2…>))
 In guix/store.scm:
    1305:8  8 (call-with-build-handler #<procedure build-accumulator (continue store things mode)> _)
 In ice-9/boot-9.scm:
   1736:10  7 (with-exception-handler _ _ #:unwind? _ #:unwind-for-type _)
 In guix/scripts/deploy.scm:
     144:6  6 (_)
 In guix/store.scm:
   2066:24  5 (run-with-store #<store-connection 256.99 7fb179220870> _ #:guile-for-build _ #:system _ # …)
 In gnu/machine/ssh.scm:
     450:6  4 (_ _)
 In guix/remote.scm:
     86:17  3 (_ _)
 In ice-9/boot-9.scm:
   1669:16  2 (raise-exception _ #:continuable? _)
   1669:16  1 (raise-exception _ #:continuable? _)
   1669:16  0 (raise-exception _ #:continuable? _)

 ice-9/boot-9.scm:1669:16: In procedure raise-exception:
 ERROR:
   1. &inferior-exception:
       arguments: (system-error "open-file" "~A: ~S" ("No such file or directory" "/gnu/store/4q0sl8b1wg6nwiiz6xzhy8iskmyc43gv-remote-exp.scm") (2))
       inferior: #f
       stack: ()
--8<---------------cut here---------------end--------------->8---

As a workaround, one can build the machine's profile locally (the
default, so by removing (build-locally? #f) or setting the value to #t
in the machines' machine-ssh-configuration).  That's not satisfying
though, as for example for my offload machine I must transfer a system
closure of near 4 GiB instead of simply allowing it to be built
remotely.

I'm marking this as serious, as it is a severe regression of the 'guix
deploy' facility that prevents its use to scale.

Maxim




Information forwarded to bug-guix <at> gnu.org:
bug#46756; Package guix. (Wed, 08 Sep 2021 01:53:02 GMT) Full text and rfc822 format available.

Message #13 received at 46756 <at> debbugs.gnu.org (full text, mbox):

From: Katherine Cox-Buday <cox.katherine.e <at> gmail.com>
To: 46756 <at> debbugs.gnu.org
Subject: Re: bug#46756: guix deploy not copying remote-gexp.scm
Date: Tue, 07 Sep 2021 20:52:27 -0500
I am also seeing this behavior. Further, using =guix copy= on the offending
store item doesn't seem to help as it seems like each invocation of
=guix deploy= is generating a new version of this file in the store.

As such, I cannot specify =(build-locally? #f)= in my machine configuration.

-- 
Katherine




Changed bug title to ''guix deploy' not copying remote-gexp.scm with (build-locally? #f)' from 'guix deploy not copying remote-gexp.scm' Request was from Ludovic Courtès <ludo <at> gnu.org> to control <at> debbugs.gnu.org. (Wed, 27 Oct 2021 21:52:02 GMT) Full text and rfc822 format available.

Reply sent to Ludovic Courtès <ludo <at> gnu.org>:
You have taken responsibility. (Wed, 27 Oct 2021 22:52:02 GMT) Full text and rfc822 format available.

Notification sent to pkill9 <pkill9 <at> runbox.com>:
bug acknowledged by developer. (Wed, 27 Oct 2021 22:52:02 GMT) Full text and rfc822 format available.

Message #20 received at 46756-done <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
Cc: Katherine Cox-Buday <cox.katherine.e <at> gmail.com>, pkill9 <pkill9 <at> runbox.com>,
 46756-done <at> debbugs.gnu.org
Subject: Re: bug#46756: guix deploy not copying remote-gexp.scm
Date: Thu, 28 Oct 2021 00:51:04 +0200
Hi!

Maxim Cournoyer <maxim.cournoyer <at> gmail.com> skribis:

> I get this as well.  Here's the backtrace:
>
>  In ice-9/boot-9.scm:
>    1731:15 19 (with-exception-handler #<procedure 7fb17c1e8870 at ice-9/boot-9.scm:1815:7 (exn)> _ # _ # …)
>  In guix/status.scm:
>      793:4 18 (call-with-status-report _ _)
>  In ice-9/boot-9.scm:
>    1736:10 17 (with-exception-handler _ _ #:unwind? _ #:unwind-for-type _)
>  In guix/store.scm:
>     636:37 16 (thunk)
>     1305:8 15 (call-with-build-handler _ _)
>     1305:8 14 (call-with-build-handler _ _)
>     1305:8 13 (call-with-build-handler _ _)
>     1305:8 12 (call-with-build-handler #<procedure 7fb17922a3f0 at guix/ui.scm:1171:2 (continue store …> …)
>  In guix/scripts/deploy.scm:
>     170:14 11 (_)
>  In guix/store.scm:
>     1346:2 10 (map/accumulate-builds #<store-connection 256.99 7fb179220870> _ _)
>  In srfi/srfi-1.scm:
>     586:17  9 (map1 (#<<unresolved> things: (("/gnu/store/7hj8kbsqkm3qcpd8dyayx1c53r59ma2v-guile-3.0.2…>))
>  In guix/store.scm:
>     1305:8  8 (call-with-build-handler #<procedure build-accumulator (continue store things mode)> _)
>  In ice-9/boot-9.scm:
>    1736:10  7 (with-exception-handler _ _ #:unwind? _ #:unwind-for-type _)
>  In guix/scripts/deploy.scm:
>      144:6  6 (_)
>  In guix/store.scm:
>    2066:24  5 (run-with-store #<store-connection 256.99 7fb179220870> _ #:guile-for-build _ #:system _ # …)
>  In gnu/machine/ssh.scm:
>      450:6  4 (_ _)
>  In guix/remote.scm:
>      86:17  3 (_ _)
>  In ice-9/boot-9.scm:
>    1669:16  2 (raise-exception _ #:continuable? _)
>    1669:16  1 (raise-exception _ #:continuable? _)
>    1669:16  0 (raise-exception _ #:continuable? _)
>
>  ice-9/boot-9.scm:1669:16: In procedure raise-exception:
>  ERROR:
>    1. &inferior-exception:
>        arguments: (system-error "open-file" "~A: ~S" ("No such file or directory" "/gnu/store/4q0sl8b1wg6nwiiz6xzhy8iskmyc43gv-remote-exp.scm") (2))
>        inferior: #f
>        stack: ()
>
> As a workaround, one can build the machine's profile locally (the
> default, so by removing (build-locally? #f) or setting the value to #t
> in the machines' machine-ssh-configuration).  That's not satisfying

I believe this is fixed by b19250eec6f92308f237a09a43e8e3e2355345b9,
lemme know!

Following our discussion on IRC, I noticed that derivations would
actually be built locally, and thus their output (‘remote-exp.scm’
above) would not be found.

Why are they getting built locally?  Because ‘guix deploy’ installs a
build handler.  Thus, when ‘remote-eval’ makes this call:

  (build-derivations remote inputs)

the build handler kicks in and starts building locally rather than on
‘remote’.  In fact, that’s more of a bug in ‘build-accumulator’ in (guix
store); it should check whether it’s talking to the right store.

Thanks,
Ludo’.




Information forwarded to bug-guix <at> gnu.org:
bug#46756; Package guix. (Thu, 28 Oct 2021 01:21:02 GMT) Full text and rfc822 format available.

Message #23 received at 46756 <at> debbugs.gnu.org (full text, mbox):

From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: 46756 <at> debbugs.gnu.org, pkill9 <pkill9 <at> runbox.com>
Subject: Re: bug#46756: guix deploy not copying remote-gexp.scm
Date: Wed, 27 Oct 2021 21:20:43 -0400
Hi!

help-debbugs <at> gnu.org (GNU bug Tracking System) writes:

> I believe this is fixed by b19250eec6f92308f237a09a43e8e3e2355345b9,
> lemme know!
>
> Following our discussion on IRC, I noticed that derivations would
> actually be built locally, and thus their output (‘remote-exp.scm’
> above) would not be found.
>
> Why are they getting built locally?  Because ‘guix deploy’ installs a
> build handler.  Thus, when ‘remote-eval’ makes this call:
>
>   (build-derivations remote inputs)
>
> the build handler kicks in and starts building locally rather than on
> ‘remote’.  In fact, that’s more of a bug in ‘build-accumulator’ in (guix
> store); it should check whether it’s talking to the right store.
>
> Thanks,
> Ludo’.

It works a treat!  Thank you! :-)

It'll make keeping my remote machine updated with 'guix deploy' much
smoother.

Thanks again,

Maxim




Information forwarded to bug-guix <at> gnu.org:
bug#46756; Package guix. (Thu, 28 Oct 2021 20:01:01 GMT) Full text and rfc822 format available.

Message #26 received at 46756 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
Cc: 46756 <at> debbugs.gnu.org, pkill9 <pkill9 <at> runbox.com>
Subject: Re: bug#46756: guix deploy not copying remote-gexp.scm
Date: Thu, 28 Oct 2021 22:00:30 +0200
Hi!

Maxim Cournoyer <maxim.cournoyer <at> gmail.com> skribis:

> help-debbugs <at> gnu.org (GNU bug Tracking System) writes:
>
>> I believe this is fixed by b19250eec6f92308f237a09a43e8e3e2355345b9,
>> lemme know!

[...]

> It works a treat!  Thank you! :-)
>
> It'll make keeping my remote machine updated with 'guix deploy' much
> smoother.

Ah, good!  I came up with a better fix in
2015d3f042870860efef10e801b93eacc0742d38.  Works for me, but lemme know
if you notice anything fishy.

Ludo’.




Information forwarded to bug-guix <at> gnu.org:
bug#46756; Package guix. (Fri, 29 Oct 2021 20:24:02 GMT) Full text and rfc822 format available.

Message #29 received at 46756 <at> debbugs.gnu.org (full text, mbox):

From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: 46756 <at> debbugs.gnu.org, pkill9 <pkill9 <at> runbox.com>
Subject: Re: bug#46756: guix deploy not copying remote-gexp.scm
Date: Fri, 29 Oct 2021 16:23:32 -0400
Ludovic Courtès <ludo <at> gnu.org> writes:

> Hi!
>
> Maxim Cournoyer <maxim.cournoyer <at> gmail.com> skribis:
>
>> help-debbugs <at> gnu.org (GNU bug Tracking System) writes:
>>
>>> I believe this is fixed by b19250eec6f92308f237a09a43e8e3e2355345b9,
>>> lemme know!
>
> [...]
>
>> It works a treat!  Thank you! :-)
>>
>> It'll make keeping my remote machine updated with 'guix deploy' much
>> smoother.
>
> Ah, good!  I came up with a better fix in
> 2015d3f042870860efef10e801b93eacc0742d38.  Works for me, but lemme know
> if you notice anything fishy.

Thanks for following up on this!  I tried it again, still working fine
it seems :-).  Good to see a test, too.

Cheers,

Maxim




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sat, 27 Nov 2021 12:24:06 GMT) Full text and rfc822 format available.

This bug report was last modified 3 years and 205 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.