[squid-dev] [PATCH] Parser-NG: Transfer-Encoding:chunked Parser

Amos Jeffries squid3 at treenet.co.nz
Tue Jun 9 01:59:48 UTC 2015


On 8/06/2015 8:34 p.m., Amos Jeffries wrote:
> On 2/06/2015 11:21 a.m., Amos Jeffries wrote:
>> Remove several performance regressions incurred in earlier Parser-NG
>> updates by refactoring the class ChunkedCodingParser to a class
>> Http1::TeChunkedParser which parses an SBuf I/O buffer for chunked
>> encoding data and (for now) copies the chunk payloads into a MemBuf buffer.
>>
>> The new class is inherited from Http1::Parser and presents the same API.
>> Chunk Trailers are now available via the Parser API mimeHeader() method
>> - although none of the rest of Squid makes use of that data yet. It
>> implements parsing using a ::Parser::Tokenizer for (nearly) compliant
>> protocol tokenization. With enumerated states instead of a dynamic
>> function-pointer chain.
>>
>>
>> Measurements:
>>  Co-Advisor shows no compliance change.
>>  Polygraph shows approx 1% speed improvement over trunk.
>>
>> PS. earlier bugs being investigated turned out to be inherited from
>> trunk and are now fixed there already.
>>
>> Amos
>>
> 
> If there are no objections I would like to fast-track this and apply it
> in the next day or so.
> 


Applied as trunk rev.14108

Amos



More information about the squid-dev mailing list