rschmitt opened a new pull request, #824:
URL: https://github.com/apache/httpcomponents-client/pull/824

   `close()` did not wait for the server thread to finish, so it could read 
stale state (`requestReceived`, `throwable`) while the thread was still 
running. This caused two intermittent failures:
   
   - "Never received a request": `close()` checked requestReceived before the 
server thread set it after accept() returned.
   - "Exception thrown while TlsHandshakeTimerOuter was running": the server 
thread got an expected IOException or BUFFER_UNDERFLOW when the client timed 
out and disconnected, and `close()` rethrew it.
   
   Fix: store the Thread reference and `join()` it in `close()` after closing 
the sockets. Remove the `requestReceived` and `throwable` checks since all 
server-side exceptions are expected (the client is designed to time out) and 
client-side assertions already validate correctness.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


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

Reply via email to