Re: Cygwin clientKeepaliveNextRequest

From: Guido Serassio <guido.serassio@dont-contact.us>
Date: Tue, 30 May 2006 15:44:43 +0200

Hi Henrik,

At 15.19 30/05/2006, Henrik Nordstrom wrote:

>Guido,
>
>in clientKeepaliveNextRequest there is a CYGWIN dependency which looks a
>bit odd..
>
> /*
> * CYGWIN has a problem and is blocking on read() requests when there
> * is no data present.
> * This hack may hit performance a little, but it's better than
> * blocking!.
> */
>#ifdef _SQUID_CYGWIN_
> commSetSelect(conn->fd, COMM_SELECT_READ,
> clientReadRequest, conn, 0);
>#else
> clientReadRequest(conn->fd, conn); /* Read next request */
>#endif
>
>
>
>Is this still needed with current cygwin?
>
>The above code looping the call via the select loop may fail if there is
>pipelined requests waiting on the connection as these may be sitting in
>the read buffer already...

This is a very old code change by Robert (October 2000):

http://www.squid-cache.org/cgi-bin/cvsweb.cgi/squid/src/client_side.c.diff?r1=1.507&r2=1.508

I don't know the story of the patch.

How could be tested the presence of the read problem ?

Regards

Guido

-
========================================================
Guido Serassio
Acme Consulting S.r.l. - Microsoft Certified Partner
Via Lucia Savarino, 1 10098 - Rivoli (TO) - ITALY
Tel. : +39.011.9530135 Fax. : +39.011.9781115
Email: guido.serassio@acmeconsulting.it
WWW: http://www.acmeconsulting.it/
Received on Tue May 30 2006 - 07:44:47 MDT

This archive was generated by hypermail pre-2.1.9 : Thu Jun 01 2006 - 12:00:04 MDT