From: Lars-Dominik Braun <ldb@leibniz-psychology.org>
To: "Ludovic Courtès" <ludo@gnu.org>
Cc: 41702@debbugs.gnu.org
Subject: bug#41702: `guix environment` performance issues
Date: Mon, 20 Jul 2020 11:50:59 +0200 [thread overview]
Message-ID: <20200720095059.GB3143@zpidnp36> (raw)
In-Reply-To: <20200706125800.GA3176@zpidnp36>
[-- Attachment #1.1: Type: text/plain, Size: 257 bytes --]
Hi Ludo,
a new version has been released, so here is the updated patchset. I’m not sure
if it’s possible to make the #:nodelay optional somehow, i.e. retaining
compatibility with guile-ssh<0.13.0. For now there’s a hard feature check.
Lars
[-- Attachment #1.2: 0001-gnu-guile-ssh-Update-to-0.13.0.patch --]
[-- Type: text/x-diff, Size: 1339 bytes --]
From 42ff75c9d4da4eb2aeece96119ae5a65a9ccac82 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <ldb@leibniz-psychology.org>
Date: Mon, 20 Jul 2020 11:27:35 +0200
Subject: [PATCH 1/2] gnu: guile-ssh: Update to 0.13.0.
* gnu/packages/ssh.scm (guile-ssh): Update to 0.13.0.
---
gnu/packages/ssh.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm
index a612b9dd15..50316ea1be 100644
--- a/gnu/packages/ssh.scm
+++ b/gnu/packages/ssh.scm
@@ -297,7 +297,7 @@ Additionally, various channel-specific options can be negotiated.")
(define-public guile-ssh
(package
(name "guile-ssh")
- (version "0.12.0")
+ (version "0.13.0")
(home-page "https://github.com/artyom-poptsov/guile-ssh")
(source (origin
(method git-fetch)
@@ -307,7 +307,7 @@ Additionally, various channel-specific options can be negotiated.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "054hd9rzfhb48gc1hw3rphhp0cnnd4bs5qmidy5ygsyvy9ravlad"))
+ "1q96h98p6x7ah6nc0d2wfx503fmsj36riv9ka9s79z3lzwaf0k26"))
(modules '((guix build utils)))))
(build-system gnu-build-system)
(outputs '("out" "debug"))
--
2.20.1
[-- Attachment #1.3: 0002-guix-Speed-up-RPC-via-SSH-connections.patch --]
[-- Type: text/x-diff, Size: 2129 bytes --]
From 6a18c9a4533075d1ee9795777a998fde3e64030f Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <ldb@leibniz-psychology.org>
Date: Mon, 20 Jul 2020 11:28:51 +0200
Subject: [PATCH 2/2] guix: Speed up RPC via SSH connections.
See issue #41702
* guix/ssh.scm (open-ssh-session): Enable #:nodelay.
* m4/guix.m4 (GUIX_CHECK_GUILE_SSH): Add feature check for this new parameter.
---
guix/ssh.scm | 5 ++++-
m4/guix.m4 | 6 ++++--
2 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/guix/ssh.scm b/guix/ssh.scm
index 2d7ca7d01d..3bffb0b525 100644
--- a/guix/ssh.scm
+++ b/guix/ssh.scm
@@ -129,7 +129,10 @@ Throw an error on failure."
;; We need lightweight compression when
;; exchanging full archives.
#:compression compression
- #:compression-level 3)))
+ #:compression-level 3
+
+ ;; Speed up RPC.
+ #:nodelay #t)))
;; Honor ~/.ssh/config.
(session-parse-config! session)
diff --git a/m4/guix.m4 b/m4/guix.m4
index 7c27ae74df..cce03045db 100644
--- a/m4/guix.m4
+++ b/m4/guix.m4
@@ -142,14 +142,16 @@ dnl GUIX_CHECK_GUILE_SSH
dnl
dnl Check whether a recent-enough Guile-SSH is available.
AC_DEFUN([GUIX_CHECK_GUILE_SSH], [
- dnl Check whether 'userauth-gssapi!' (introduced in 0.12.0) is present.
+ dnl Check whether '#:nodelay' paramater to 'make-session' (introduced in
+ dnl 0.13.0) is present.
AC_CACHE_CHECK([whether Guile-SSH is available and recent enough],
[guix_cv_have_recent_guile_ssh],
[GUILE_CHECK([retval],
[(and (@ (ssh channel) channel-send-eof)
(@ (ssh popen) open-remote-pipe)
(@ (ssh dist node) node-eval)
- (@ (ssh auth) userauth-gssapi!))])
+ (@ (ssh auth) userauth-gssapi!)
+ ((@ (ssh session) make-session) #:nodelay #t))])
if test "$retval" = 0; then
guix_cv_have_recent_guile_ssh="yes"
else
--
2.20.1
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]
next prev parent reply other threads:[~2020-07-20 9:52 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-06-04 8:23 bug#41702: `guix environment` performance issues Lars-Dominik Braun
2020-06-06 16:08 ` Ludovic Courtès
2020-06-06 21:40 ` Ludovic Courtès
2020-06-08 9:04 ` Lars-Dominik Braun
2020-06-08 21:59 ` Ludovic Courtès
2020-06-09 9:15 ` Lars-Dominik Braun
2020-06-27 21:20 ` Ludovic Courtès
2020-06-30 9:59 ` Lars-Dominik Braun
2020-07-01 10:49 ` Ludovic Courtès
2020-07-01 11:24 ` Lars-Dominik Braun
2020-07-01 21:53 ` Ludovic Courtès
2020-07-02 7:00 ` Lars-Dominik Braun
2020-07-02 12:03 ` Lars-Dominik Braun
2020-07-06 8:49 ` Ludovic Courtès
2020-07-06 12:58 ` Lars-Dominik Braun
2020-07-20 9:50 ` Lars-Dominik Braun [this message]
2020-07-20 21:51 ` Ludovic Courtès
2020-10-22 21:03 ` Maxim Cournoyer
2020-10-23 7:26 ` Lars-Dominik Braun
2020-10-23 13:07 ` bug#44175: [optimization] Grafting is too slow Maxim Cournoyer
2020-10-23 21:17 ` Ludovic Courtès
2020-10-25 2:33 ` Maxim Cournoyer
2020-10-25 16:43 ` Ludovic Courtès
2020-10-26 7:56 ` Lars-Dominik Braun
2020-10-23 14:51 ` bug#41702: `guix environment` performance issues Ludovic Courtès
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://guix.gnu.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200720095059.GB3143@zpidnp36 \
--to=ldb@leibniz-psychology.org \
--cc=41702@debbugs.gnu.org \
--cc=ludo@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/guix.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).