conncache: connection healthiness fix

Update the `lastchecked` timestamp on connection health checks when
successful to prevent repeated recalcs for a second.

Rename `seems_dead` to `seems_healthy` because the world is already
depressing enough.

Consider pending input on connection only unhealthy when the connection
has no transfers and is not multiplexed.

Closes #22412
This commit is contained in:
Stefan Eissing 2026-07-28 10:43:30 +02:00 committed by Daniel Stenberg
parent 079a11bcba
commit 53565fbfd6
No known key found for this signature in database
GPG key ID: 5CC908FDB71E12C2
4 changed files with 42 additions and 53 deletions

View file

@ -545,9 +545,9 @@ static bool http2_connisalive(struct Curl_cfilter *cf, struct Curl_easy *data,
*input_pending = FALSE;
result = Curl_cf_recv_bufq(cf->next, data, &ctx->inbufq, 0, &nread);
CURL_TRC_CF(data, cf, "connisalive, recv pending input -> %d, %zu",
(int)result, nread);
if(!result) {
CURL_TRC_CF(data, cf, "%zu bytes stray data read before trying "
"h2 connection", nread);
result = h2_process_pending_input(cf, data);
if(result)
/* immediate error, considered dead */