Jens Popp created HTTPCLIENT-2404:
-------------------------------------

             Summary: Provide comprehensive timeout configuration documentation 
with interaction matrix and override behavior
                 Key: HTTPCLIENT-2404
                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-2404
             Project: HttpComponents HttpClient
          Issue Type: Wish
          Components: HttpClient (async), HttpClient (classic)
    Affects Versions: 5.5.1, 5.5
            Reporter: Jens Popp


Apache HTTP Client currently exposes numerous timeout settings across different 
configuration points (connection manager, request config, socket config, etc.). 
Right now they are documented (as far as I was able to find) only on the point, 
where they can be set. The lack of comprehensive documentation about their 
interactions, precedence rules, and override behavior makes it difficult to 
configure clients correctly—especially in distributed systems where timeout 
handling is critical for failover and performance.

*Problem Statement:*

As demonstrated my comment in HTTPCLIENT-2386, seemingly minor implementation 
changes can have severe production impacts. In our case, upgrading from 5.5 to 
5.5.1 changed timeout behavior during TLS handshake scenarios. When servers 
under heavy load (100% CPU) could establish socket connections but failed TLS 
handshakes, the increased timeout (defaulted back to request timeout instead of 
connection timeout) prevented proper failover to backup servers, causing 
service degradation.

*Requested Documentation:*
 # *Complete timeout inventory* - All configurable timeouts with their default 
values and scope

 # *Interaction matrix* - How timeouts interact when multiple apply to the same 
operation

 # *Override rules* - Precedence order when timeouts are set at different 
levels (global, connection manager, request)

 # *Lifecycle coverage* - Which timeout applies to each phase (DNS, connect, 
TLS handshake, data transfer)

 # *System best practices* - Recommended patterns for different scenarios



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to