On 03/07/2006 07:19 PM, Mladen Turk wrote:
> Plüm wrote:
> 
>>
>>
>> First: I am the author.
>>
> 
> Cool. Did someone ever told you to that you
> need to fix your mail client ;).
> I hate your AW:AW:AW...

Sorry I forgot to remove. Stupid Outlook at work. I don't use
it outside as you may notice.

> 
>>>
>>> I would love that we remove the FLUSHING_BANDAID from the code
>>> because it concept breaks the AJP protocol specification.
>>
>>
>> I do not understand how this breaks the spec. There might be reasons
>> to handle this differently, but I see no violation of the specs.
> 
> 
> AJP is packet based, so you can not depend on the fact that the
> flush will happen only when the server is busy, and that is what
> your patch is doing.

Sorry for being persistent on this point. I admit that it does not
always do the right thing because it needs to 'guess' that a server
that sends no further data wanted to flush it. OTH the server may
send data continously and may want to flush it more often. This
is all admitted, but I still see no break of the spec. Please point
to the part of spec where it gets violated and I will never get
back on this point :-).
Don't get me wrong: If I do not understand the spec correctly I want
to know where to have a better understanding of it in the future.

> 
> We need explicit packet flushing until we extend the AJP
> protocol with something like 'FLUSH'.
> 
> Further more, your patch slows down the mod_proxy_ajp by 10%.

Really that much? Astonishing, given the fact that it only adds a apr_poll
after each processed SEND_BODY_CHUNK. I wasn't aware that apr_poll is
that expensive.

> 
>> The flushing bandaid simply tries to detect whether it needs to add
>> a flush bucket or not after the data of *one* packet has been added
>> to the brigade.
> 
> 
> That's wrong. We don't have flush for AJP, and the only solution is
> to eaither flush on each packet, or never.

I still do not see why this is wrong, but if you like, feel free to remove
the bandaid.
Don't get me wrong: Its not that I try to divert work in this case, but I do
not know if I have time to adjust the code until the weekend or on the weekend.
But if you remove the code please add the flush=on option for the worker as
you have proposed, such that mod_proxy_ajp flushes after each AJP message.
People really rely on the possiblity to have some sort of 'early' flushing,
whether its after each packet or the flushing bandaid.


Regards

Rüdiger




Reply via email to