From: "Ludovic Courtès" <ludo@gnu.org>
To: 20145-done@debbugs.gnu.org
Cc: Valentin Ignatev <valentignatev@gmail.com>
Subject: bug#20145: (guix build download) leaks file descriptor on TLS connections
Date: Fri, 03 Jan 2020 16:12:11 +0100 [thread overview]
Message-ID: <87png0poac.fsf@gnu.org> (raw)
In-Reply-To: <87png1qweg.fsf_-_@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\?\= \=\?utf-8\?Q\?\=22's\?\= message of "Fri, 03 Jan 2020 00:19:19 +0100")
Hello again!
Ludovic Courtès <ludo@gnu.org> skribis:
> Back in 2015, I closed <https://issues.guix.gnu.org/issue/20145> saying:
>
>> ludo@gnu.org (Ludovic Courtès) skribis:
>>
>>> When opening an HTTPS connection, the file descriptor beneath the port
>>> returned by ‘tls-wrap’ is leaked.
>>>
>>> This is not a problem in most cases (downloads) because the process is
>>> left as soon as the download is over.
>>>
>>> This is more problematic for ‘guix lint’, which may open a large number
>>> of HTTPS connections for the ‘source’ and ‘home-page’ checkers when
>>> working on all the packages.
>>
>> This is essentially solved by commits
>> 14d6ca3e4dd23ee92adb5e2fcf58546e67534631 and
>> 097a951e96718a037dbfa6d579e2d26f7dab3e82.
>>
>> One still needs to be careful, though, for instance because closing a
>> chunked encoding port (which is a custom binary input port wrapped
>> around the real socket port) still fails to close the raw socket port
>> that’s behind the TLS session record port.
>
> Unfortunately, the bug just reported by Valentin and by Ricardo are
> instances of this problem (at least I checked with crates.io and it
> uses chunked encoding, leading to a file descriptor leak):
>
> https://issues.guix.gnu.org/issue/38857
> https://issues.guix.gnu.org/issue/38836
Commit f4cde9ac4aedb516c050a30fd999673da434bfa0 fixes it for good it
seems! (You can monitor /proc/PID/fd while ‘guix refresh’ or ‘guix
import crate -r’ is running. :-))
There was also a CRAN-specific FD leak fixed in
af0aefd8c10701fa32341506e36297e5105f6143.
Let me know is anything is amiss!
Ludo’.
prev parent reply other threads:[~2020-01-03 15:13 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-03-19 18:16 bug#20145: (guix build download) leaks file descriptor on TLS connections Ludovic Courtès
2016-03-17 22:57 ` Ludovic Courtès
[not found] ` <handler.20145.D20145.145825547831659.notifdone@debbugs.gnu.org>
2020-01-02 23:19 ` Ludovic Courtès
2020-01-03 12:25 ` Valentin Ignatev
2020-01-03 15:12 ` Ludovic Courtès [this message]
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=87png0poac.fsf@gnu.org \
--to=ludo@gnu.org \
--cc=20145-done@debbugs.gnu.org \
--cc=valentignatev@gmail.com \
/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).