bug 1592

From: Adrian Chadd <adrian@dont-contact.us>
Date: Thu, 7 Sep 2006 22:52:26 +0800

Here's what I'm trying to put in the bug report but bugzilla is acting
buggy:

The biggest problem here is that the abort handlers aren't being called. I think Henrik noted it. The transactionComplete() function can see there's an ABORT flag set on the StoreEntry and try to unwind things differently.

This stuff is a test. It seems to fix the problem Robert had by doing this:

adrian@cindy:~/work/squid3/src$ ../tools/squidclient -p 3128 -m HEAD ftp://ftp.easynet.be/ubuntu-iso/6.06/foo

What my stuff does is to forcibly call the abort handlers - which will unwind them top down. It kills the ftpstate, then it kills the forward state through the abort handler. This seems to DTRT in the error case.

What I _think_ transactionComplete() needs to do is check for the ABORT flag and if it finds it tell the forward layer that its hit an error condition. Right now it just treats it as valid - unregisters, closes ctrl.fd, then fwd->complete(). The 2.6 code didn't do it this way.

The patch: http://www.creative.net.au/diffs/ftpstate.diff

adrian
Received on Thu Sep 07 2006 - 08:51:39 MDT

This archive was generated by hypermail pre-2.1.9 : Sun Oct 01 2006 - 12:00:06 MDT