Bill Barker wrote:
>
>> Bill Barker wrote:
>>
>>>
>>>> billbarker@apache.org wrote:
>>>>
>>>>> billbarker 2004/11/19 19:04:28
>>>>>
>>>>> Modified: http11/src/java/org/apache/coyote/http11
>>>>> Http11Processor.java
>>>>> Log:
>>>>> If we are in the error state, we aren't going to keep-alive. So
>>>>> don't lie to the UA that we >are.
>>>>> Fix for Bug #32292
>>>>>
>>>> -1. I disagree with this change, sorry. We are going to keepalive
>>>> in this case (anything which isn't a status drop, which is the
>>>> whole point). The error flag can be set by a sendError, which could
>>>> send any status code.
>>>
>>>
>>>
>>> You're vote would be more convincing if anything that you said was
>>> actually true ;-). We're note going to keepalive, and you can't set
>>> if from sendError.
>>
>>
>> It's not true ? Did I miss something ? The thing with sendError and
>> not closing the connection is that often sendError is used to trigger
>> pretty standard error pages.
>
>
> This is the 'error' flag in Http11Processor. It's set in various
> 'catch' blocks, and for a couple of places where the request can't be
> parsed (mostly the Host header and the Protocol). In particular, it
> isn't visible to the Response :). Once it is set, it is never
> cleared, and being set causes the Processor to drop out of the
> keep-alive loop.
Thanks for the explanation (you don't have to revert a patch right away,
BTW). As the error flag is used in the loop, and does not depend on
sendError, then the patch was fine. I didn't look in detail at that code
for a while, and I forgot the subtelties.
Rémy
---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-dev-help@jakarta.apache.org
|