diff options
author | Frank Ch. Eigler <fche@redhat.com> | 2021-05-14 18:37:30 -0400 |
---|---|---|
committer | Frank Ch. Eigler <fche@redhat.com> | 2021-05-16 17:51:16 -0400 |
commit | 0b454c7e1997b5500bd3fa022370338819848f8b (patch) | |
tree | 4faa2dafe3a8091e9f6d8697d56d8b1db60fcc5a /po/de.po | |
parent | 940b0e7d304459e270ae518d067b40fd82c5caca (diff) | |
download | elfutils-0b454c7e1997b5500bd3fa022370338819848f8b.tar.gz |
PR27859: correct 404-latch bug in debuginfod client reuse
PR27701 implemented curl handle reuse in debuginfod_client objects,
but with an unexpected bug. Server responses returning an error
"latched" because the curl_easy handles for error cases weren't all
systematically removed from the curl multi handle. This prevented
their proper re-addition the next time.
This version of the code simplfies matters by making only the curl
curl_multi handle long-lived. This turns out to be enough, because it
can maintain a pool of long-lived http/https connections and related
data, and lend them out to short-lived curl_easy handles. This mode
handles errors or hung downloads even better, because the easy handles
don't undergo complex state transitions between reuse.
A new test case confirms this correction via the federating debuginfod
instance (cleaning caches between subtests to make sure http* is being
used and reused).
Signed-off-by: Frank Ch. Eigler <fche@redhat.com>
Diffstat (limited to 'po/de.po')
0 files changed, 0 insertions, 0 deletions