Guix related downloads from ftp.gnu.org are slow over IPv6

  • Open
  • quality assurance status badge
Details
2 participants
  • Christopher Baines
  • Maxime Devos
Owner
unassigned
Submitted by
Christopher Baines
Severity
normal
C
C
Christopher Baines wrote on 12 Dec 2021 16:13
(address . bug-guix@gnu.org)
8735mx26qr.fsf@cbaines.net
900 times slower by my measurements. I noticed this when downloading the
release .tar.xz:

Resolving ftp.gnu.org (ftp.gnu.org)... 209.51.188.20
Connecting to ftp.gnu.org (ftp.gnu.org)|209.51.188.20|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 91030312 (87M) [application/x-xz]
Saving to: ‘guix-binary-1.3.0.x86_64-linux.tar.xz’

guix-binary-1.3.0.x 100%[===================>] 86.81M 29.4MB/s in 2.9s

2021-12-12 14:07:32 (29.4 MB/s) - ‘guix-binary-1.3.0.x86_64-linux.tar.xz’ saved [91030312/91030312]


Resolving ftp.gnu.org (ftp.gnu.org)... 2001:470:142:3::b
Connecting to ftp.gnu.org (ftp.gnu.org)|2001:470:142:3::b|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 91030312 (87M) [application/x-xz]
Saving to: ‘guix-binary-1.3.0.x86_64-linux.tar.xz.1’

guix-binary-1.3.0.x86_64-linux.tar.xz.1 100%[===================================================================>] 86.81M 32.4KB/s in 43m 36s

2021-12-12 14:51:14 (34.0 KB/s) - ‘guix-binary-1.3.0.x86_64-linux.tar.xz.1’ saved [91030312/91030312]
-----BEGIN PGP SIGNATURE-----

iQKlBAEBCgCPFiEEPonu50WOcg2XVOCyXiijOwuE9XcFAmG2ElxfFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDNF
ODlFRUU3NDU4RTcyMEQ5NzU0RTBCMjVFMjhBMzNCMEI4NEY1NzcRHG1haWxAY2Jh
aW5lcy5uZXQACgkQXiijOwuE9XdqtQ/+M8r9LRYS2QT8NfG6Svvp4k0qUYluT3j9
EtkkidUl2wb+oC72srJYI5yHo/z8cnw5aIdqAKKY9Rop1fkUG7w2j2qqKtc9h0vY
U8HQpmOEvP2GyFXldJ4kQqN9BR4VMVyNURWvnbmkP6cIWu4cSQz0U/eRWhjd7B3W
EbkwM4aBvHQm6m/+HmxuV2b5lgJpKbJBfLOBm2fvjUIUhvfeDrWcaOcfoqsDdfv2
R8OuTPsoSVXR2KccB0CeYVol4r/uaM+MObhDHVqX2cXzoquL8qWYfUZBirYMMvcQ
dipyjHYqy7laPlZJFRVtTkBB1dCk4jULnpODBoIqaxuCFW1Z0nT7muR9QgJroFq7
hEQpWeMcHoF3bLNgufAhHYWuWXxOGQZxAg/6/1NJY9ayAqKmfQGpF/+y55MkkKZv
efvJ7Fa2A2G1HTQXXfA9QXYXAJQseR+Nb8ZjoKrRLEUYJ7+XXOmsztkHIStiJ2My
/SwhHMqKs+7Ujki7jd1W4LNfBWwRzZot5wUEeMgZ4ytG2pcRFi9kGegW2TfsiQqB
UjHaJEae+UEk6bgrPkrNro53Y8VLrWg2XRLVMMrqPfk2qFrVtzxB7mus2g6xYqPr
g09j4jUEXMpgWvcDccoZ2h1oeggc+a2DjCcSKEYAhtWpYmlAtgUy+hjigOpKMuUm
BAu6H0SD7C4=
=NM4+
-----END PGP SIGNATURE-----

M
M
Maxime Devos wrote on 22 Dec 2021 20:14
Re: PATCH v2 2/4] activation: Add 'lchown-recursive'.
(address . 52452@debbugs.gnu.org)
2877ff704a262640a315063c536e67b0efc2d487.camel@telenet.be
Toggle quote (18 lines)
>+(define (lchown-recursive file owner group)
>+ "As 'lchown' but recursively, change ownership of FILE to the
>integer values
>+OWNER and GROUP without dereferencing symbolic links it encounter."
>+ (nftw file
>+ (lambda (filename statinfo flag base level)
>+ (catch 'system-error
>+ (lambda ()
>+ (when (member flag '(regular directory symlink))
>+ (lchown filename owner group)))
>+ (lambda args
>+ (format (current-error-port)
>+ "warning: failed to chown ~s: ~a~%"
>+ filename
>+ (strerror (system-error-errno args)))))
>+ #t)
>+ 'physical))

This is racy (compare with mkdir-p/perms for example).
This race can be resolved by using 'openat' & 'chownat' &
'AT_SYMLINK_NOFOLLOW' from

Greetings,
Maxime.
?