GNU bug report logs - #76558
[PATCH] substitutes: Tolerate GnuTLS push/pull errors when fetching narinfos.

Previous Next

Package: guix-patches;

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

Date: Tue, 25 Feb 2025 16:00:02 UTC

Severity: normal

Tags: patch

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 76558 in the body.
You can then email your comments to 76558 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 guix <at> cbaines.net, dev <at> jpoiret.xyz, ludo <at> gnu.org, othacehe <at> gnu.org, zimon.toutoune <at> gmail.com, me <at> tobias.gr, guix-patches <at> gnu.org:
bug#76558; Package guix-patches. (Tue, 25 Feb 2025 16:00:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Ludovic Courtès <ludo <at> gnu.org>:
New bug report received and forwarded. Copy sent to guix <at> cbaines.net, dev <at> jpoiret.xyz, ludo <at> gnu.org, othacehe <at> gnu.org, zimon.toutoune <at> gmail.com, me <at> tobias.gr, guix-patches <at> gnu.org. (Tue, 25 Feb 2025 16:00:02 GMT) Full text and rfc822 format available.

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

From: Ludovic Courtès <ludo <at> gnu.org>
To: guix-patches <at> gnu.org
Cc: Ludovic Courtès <ludo <at> gnu.org>,
 Timo Wilken <git <at> twilken.net>
Subject: [PATCH] substitutes: Tolerate GnuTLS push/pull errors when fetching
 narinfos.
Date: Tue, 25 Feb 2025 16:58:52 +0100
Fixes <https://issues.guix.gnu.org/75679>.

Fixes this infamous error:

  substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'...   0.0%guix substitute: error: TLS error in procedure 'write_to_session_record_port': Error in the push function.
  guix system: error: `/gnu/store/…-guix-1.4.0-32.5f6fdad/bin/guix substitute' died unexpectedly

* guix/substitutes.scm (call-with-connection-error-handling): Report
‘error/push-error’ and ‘error/pull-error’ as mere warnings.

Reported-by: Timo Wilken <git <at> twilken.net>
Change-Id: Ibc507cb88b164cbb91dff95aa18d9974c573f7c9
---
 guix/substitutes.scm | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

Hi!

At long last.  Note that we'll need to update the ‘guix’ package
to make this change effective.

Ludo’.

diff --git a/guix/substitutes.scm b/guix/substitutes.scm
index e31b3940203..7ca55788d5e 100644
--- a/guix/substitutes.scm
+++ b/guix/substitutes.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013-2021, 2023-2024 Ludovic Courtès <ludo <at> gnu.org>
+;;; Copyright © 2013-2021, 2023-2025 Ludovic Courtès <ludo <at> gnu.org>
 ;;; Copyright © 2014 Nikita Karetnikov <nikita <at> karetnikov.org>
 ;;; Copyright © 2018 Kyle Meyer <kyle <at> kyleam.com>
 ;;; Copyright © 2020 Christopher Baines <mail <at> cbaines.net>
@@ -35,7 +35,10 @@ (define-module (guix substitutes)
                 #:select ((open-connection-for-uri
                            . guix:open-connection-for-uri)
                           resolve-uri-reference))
-  #:autoload   (gnutls) (error->string error/premature-termination)
+  #:autoload   (gnutls) (error->string
+                         error/premature-termination
+                         error/pull-error
+                         error/push-error)
   #:use-module (guix progress)
   #:use-module (ice-9 match)
   #:use-module (ice-9 format)
@@ -154,7 +157,9 @@ (define* (call-with-connection-error-handling uri proc)
                    (system-error-errno `(system-error ,@args)))))
        #f)
       (('gnutls-error error proc . rest)
-       (if (eq? error error/premature-termination)
+       (if (memq error (list error/premature-termination
+                             error/pull-error
+                             error/push-error))
            (begin
              (warning (G_ "~a: TLS connection failed: in ~a: ~a~%") host
                       proc (error->string error))

base-commit: 8e5094497ccb187d712bb3dfcddb87c6be5698f7
-- 
2.48.1





Reply sent to Ludovic Courtès <ludo <at> gnu.org>:
You have taken responsibility. (Tue, 04 Mar 2025 23:34:01 GMT) Full text and rfc822 format available.

Notification sent to Ludovic Courtès <ludo <at> gnu.org>:
bug acknowledged by developer. (Tue, 04 Mar 2025 23:34:02 GMT) Full text and rfc822 format available.

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

From: Ludovic Courtès <ludo <at> gnu.org>
To: 76558-done <at> debbugs.gnu.org
Cc: Josselin Poiret <dev <at> jpoiret.xyz>,
 Simon Tournier <zimon.toutoune <at> gmail.com>, Mathieu Othacehe <othacehe <at> gnu.org>,
 Tobias Geerinckx-Rice <me <at> tobias.gr>, Timo Wilken <git <at> twilken.net>,
 Christopher Baines <guix <at> cbaines.net>
Subject: Re: [bug#76558] [PATCH] substitutes: Tolerate GnuTLS push/pull
 errors when fetching narinfos.
Date: Wed, 05 Mar 2025 00:33:02 +0100
Ludovic Courtès <ludo <at> gnu.org> skribis:

> Fixes <https://issues.guix.gnu.org/75679>.
>
> Fixes this infamous error:
>
>   substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'...   0.0%guix substitute: error: TLS error in procedure 'write_to_session_record_port': Error in the push function.
>   guix system: error: `/gnu/store/…-guix-1.4.0-32.5f6fdad/bin/guix substitute' died unexpectedly
>
> * guix/substitutes.scm (call-with-connection-error-handling): Report
> ‘error/push-error’ and ‘error/pull-error’ as mere warnings.
>
> Reported-by: Timo Wilken <git <at> twilken.net>
> Change-Id: Ibc507cb88b164cbb91dff95aa18d9974c573f7c9

Pushed as c92fbc83d4d2a98cc15e10d1fc4d5bcc13c9af5b.

> At long last.  Note that we'll need to update the ‘guix’ package
> to make this change effective.

Ludo'.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Wed, 02 Apr 2025 11:24:27 GMT) Full text and rfc822 format available.

This bug report was last modified 79 days ago.

Previous Next


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