[ 
https://issues.apache.org/jira/browse/THRIFT-1564?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dave Watson updated THRIFT-1564:
--------------------------------

    Attachment: 0006-Minor-fixes-to-TZlibTransport.patch
    
> Minor fixes to TZlibTransport

> ------------------------------
>
>                 Key: THRIFT-1564
>                 URL: https://issues.apache.org/jira/browse/THRIFT-1564
>             Project: Thrift
>          Issue Type: Improvement
>          Components: C++ - Library
>            Reporter: Dave Watson
>            Priority: Minor
>         Attachments: 0006-Minor-fixes-to-TZlibTransport.patch
>
>
> Subject: [PATCH 6/15] Minor fixes to TZlibTransport
> Summary:
> 1. Implement peek() : this avoid the constant exception handling on
> TNonblockingServer side to discover that there is no more data to read
> 2. Make zlib transport do a Z_FULL_FLUSH on flush(). This causes all lzw state
> to be thrown away and prevents dictionaries from being reused for unrelated
> requests - http://www.bolet.org/~pornin/deflate-flush.html
> Both these fixes are an attempt to fix an issue that I am seeing - 2x timeouts
> when connecting over zlib + framed as opposed to framed only, for servers that
> are not really CPU-bound.
> Test Plan:
> 1.Test with a simple client and server to verify that TNonblockingServer does
> not do handle the 'No more data to read' exception after the peek() is
> implemented.
> 2. Run a prod client with Z_FULL_FLUSH and verify no serious changes occur 
> (did
> not push server with this fix). Also verified that current users of
> TZlibTransport only call finish and do not call flush()

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to