Files
Frank Ch. Eigler 0b454c7e19 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>
2021-05-16 17:51:16 -04:00
..
2020-12-20 08:00:00 +00:00
2020-07-23 22:46:46 +02:00
2020-07-23 22:46:46 +02:00
2020-07-23 22:46:46 +02:00
2020-07-23 22:46:46 +02:00
2020-07-23 22:46:46 +02:00
2020-07-23 22:46:46 +02:00
2020-07-23 22:46:46 +02:00
2020-07-23 22:46:46 +02:00
2020-07-23 22:46:46 +02:00
2021-05-12 11:56:57 +02:00
2013-11-26 03:10:31 +01:00
2017-07-26 23:22:38 +02:00
2016-07-11 10:22:18 +02:00
2020-10-29 23:59:25 +01:00
2019-07-17 11:48:35 +02:00
2016-01-06 14:27:10 +01:00
2016-06-28 20:09:11 +02:00
2013-11-26 03:10:31 +01:00
2007-05-18 08:59:43 +00:00
2007-05-18 08:59:43 +00:00
2007-08-13 22:58:36 +00:00
2008-04-11 07:01:58 +00:00
2016-07-11 10:22:18 +02:00
2007-05-18 08:59:43 +00:00
2015-03-31 19:01:40 +02:00
2005-07-26 05:00:05 +00:00
2005-07-26 05:00:05 +00:00
2005-07-26 05:00:05 +00:00
2005-07-26 05:00:05 +00:00
2005-07-26 05:00:05 +00:00
2005-07-26 05:00:05 +00:00
2005-07-26 05:00:05 +00:00
2005-07-26 05:00:05 +00:00
2005-07-26 05:00:05 +00:00
2005-07-26 05:00:05 +00:00
2005-07-26 05:00:05 +00:00
2005-07-26 05:00:05 +00:00
2005-07-26 05:00:05 +00:00
2005-07-26 05:00:05 +00:00
2005-07-26 05:00:05 +00:00
2008-04-11 07:01:58 +00:00
2008-04-11 07:01:58 +00:00
2005-07-26 05:00:05 +00:00
2005-07-26 05:00:05 +00:00
2005-07-26 05:00:05 +00:00
2005-08-18 22:01:57 +00:00
2005-08-27 10:33:26 +00:00
2005-08-27 10:33:26 +00:00
2006-04-05 01:35:26 +00:00
2006-04-05 01:35:26 +00:00
2006-08-03 08:52:46 +00:00
2006-08-03 08:52:46 +00:00
2007-05-18 08:59:43 +00:00
2007-05-18 08:59:43 +00:00
2007-05-18 08:59:43 +00:00
2007-05-18 08:59:43 +00:00
2007-05-18 08:59:43 +00:00
2007-05-18 08:59:43 +00:00
2007-08-13 22:58:36 +00:00
2007-08-13 22:58:36 +00:00
2007-08-13 22:58:36 +00:00
2008-04-11 07:01:58 +00:00
2008-04-11 07:01:58 +00:00
2008-04-11 07:01:58 +00:00
2009-05-07 20:58:19 +02:00
2012-10-10 08:04:01 +02:00
2012-10-10 08:08:44 +02:00
2013-01-30 20:34:17 +01:00
2013-01-30 20:34:17 +01:00
2012-10-17 22:17:14 +02:00
2012-10-17 22:17:14 +02:00
2012-11-29 12:50:26 +01:00
2012-11-29 12:50:26 +01:00
2016-06-28 20:09:11 +02:00
2016-07-11 10:22:18 +02:00
2016-07-11 10:22:18 +02:00
2016-07-11 10:22:18 +02:00
2005-07-26 05:00:05 +00:00
2019-07-17 11:48:35 +02:00
2021-05-12 11:56:57 +02:00