Return-Path: Delivered-To: apmail-new-httpd-archive@apache.org Received: (qmail 83352 invoked by uid 500); 8 Aug 2001 22:37:44 -0000 Mailing-List: contact new-httpd-help@apache.org; run by ezmlm Precedence: bulk Reply-To: new-httpd@apache.org list-help: list-unsubscribe: list-post: Delivered-To: mailing list new-httpd@apache.org Received: (qmail 83336 invoked from network); 8 Aug 2001 22:37:44 -0000 Content-Type: text/plain; charset="iso-8859-1" From: Ryan Bloom Reply-To: rbb@covalent.net Organization: Covalent Technologies To: new-httpd@apache.org, "MATHIHALLI,MADHUSUDAN (HP-Cupertino,ex1)" Subject: Re: keepalive status Date: Wed, 8 Aug 2001 15:36:40 -0700 X-Mailer: KMail [version 1.2] References: In-Reply-To: MIME-Version: 1.0 Message-Id: <01080815364012.03684@koj.rkbloom.net> Content-Transfer-Encoding: 8bit X-Spam-Rating: h31.sny.collab.net 1.6.2 0/1000/N Status: O X-Status: X-Keywords: X-UID: 298 Why not register a cleanup with the connection pool? Ryan On Wednesday 08 August 2001 15:31, MATHIHALLI,MADHUSUDAN (HP-Cupertino,ex1) wrote: > Hi Dean, > Thanks for the info. I'm not sure if we can totally rely on > r->connection->aborted flag always - the obvious question will be : how > often do I need to keep checking the flag ?.. One observation is that you > get APR_TIMEUP error when you try to read after a keepalive timeout - is it > a good indication for the modules to cleanup any connection specific data > at that point ?.. > Instead, it'd have been cool if we had a close-connection hook > (similar to pre-connection and process-connection) - so that incase of a > aborted connections OR keepalive connections, as soon as the core decides > to close the socket / connection (for whatever reason), the applications > can be notified immediately to perform any cleanup actions.. Now that > there's no such thing, I was just looking for a ideal place to perform the > cleanup actions ?.. Any ideas are welcome.. > > Thanks > -Madhu > > -----Original Message----- > From: dean gaudet [mailto:dgaudet-list-new-httpd@arctic.org] > Sent: Wednesday, August 08, 2001 3:16 PM > To: 'new-httpd@apache.org' > Subject: Re: keepalive status > > > in apache-1.3 you have two choices -- if you use hard timeouts then you > don't get any notification, the request is aborted and longjmp() takes the > child back to its main loop. if you use soft timeouts then you eventually > can detect a closed connection by studying r->connection->aborted. > (there are examples in the core.) > > in apache-2.0 you only have the second choice, except i'm not exactly sure > of the right syntax... you may have to study the result codes of the > various write operations. > > in either case the kernel doesn't always know the client has gone away > immediately, and application notification can take some time. > > in particular there's no easy way to determine the client is gone if > you're not writing anything to the client (i.e. you're waiting on a > database query or some expensive calculation, and have nothing to write to > the client). > > -dean > > On Mon, 6 Aug 2001, MATHIHALLI,MADHUSUDAN (HP-Cupertino,ex1) wrote: > > Quick Question : If keepalive is enabled, how is a module conveyed of a > > dropped connection - OR in other words, what is a good point when a > > module should clean up data after a connection has been dropped / aborted > > ?.. > > > > Thanks > > -Madhu -- _____________________________________________________________________________ Ryan Bloom rbb@apache.org Covalent Technologies rbb@covalent.net -----------------------------------------------------------------------------