Re: HTTP client disconnection vs ICAP disconnection

From: John Craws <john.craws_at_gmail.com>
Date: Tue, 1 Feb 2011 12:58:53 -0500

Hi,

Thanks for your reply. However, I should have added that:

1. I do not see FDs reused if the request is aborted. I see them
reused if the request completes.
2. This is the case even with 'icap_persistent_connections off'.

Thanks,

John Craws

----------------

On 01/02/11 09:04, John Craws wrote:

    Hello,

    I am going through the source code of 3.1.9/3.1.10 trying to find the
    cause of a problem I am seeing with a squid instance configured to use
    an ICAP service.

    The setup works fine, but if the client (wget) is disconnected while
    the response is being transferred (CTRL-C while receiving relatively
    large data), the ICAP socket is never disconnected. This leads to a
    situation where the ICAP service is perpetually timing out on a read
    operation on that socket.

    I have not seen this occur with other ICAP services.

    I would definitely appreciate if someone with better knowledge of this
    part of the code could help me pinpoint where the relationship between
    those two is implemented.

As I understand it ICAP should not be aware of the client and has an
independent set of persistent connections.

The client disconnecting should set the ICAP output handlers to
discard the rest of the transaction and push the FD into an IdleFdList
waiting for another client request to use it.

Alex or Christos know more about the finer details.

Amos

--
Please be using
  Current Stable Squid 2.7.STABLE9 or 3.1.10
  Beta testers wanted for 3.2.0.4
Received on Tue Feb 01 2011 - 17:59:01 MST

This archive was generated by hypermail 2.2.0 : Tue Feb 01 2011 - 12:00:07 MST