You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by bu...@apache.org on 2010/02/14 00:28:28 UTC

DO NOT REPLY [Bug 48738] New: GzipOutputFilter blocking data to the client browser when flushBuffer is invoked

https://issues.apache.org/bugzilla/show_bug.cgi?id=48738

           Summary: GzipOutputFilter blocking data to the client browser
                    when flushBuffer is invoked
           Product: Tomcat 6
           Version: 6.0.20
          Platform: All
        OS/Version: Mac OS X 10.4
            Status: NEW
          Severity: major
          Priority: P2
         Component: Connectors
        AssignedTo: dev@tomcat.apache.org
        ReportedBy: jiwang@linkedin.com


Created an attachment (id=24979)
 --> (https://issues.apache.org/bugzilla/attachment.cgi?id=24979)
patch for the making GzipOutputFilter work with early flush

As part of our site speed optimizations (at Linkedin) we bumped into a problem
when trying to do partial flush of compressed content stream from Tomcat to the
browser. We discovered the root cause to be a couple of long outstanding JDK
bugs:

 http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4255743
 http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4813885

Basically, with the GzipOutputFilter turned on, the GZIPOutputStream it uses
internally buffers the data that's been sent over, and does not flush to client
(browser) when flushBuffer() is invoked.

We have produced a patch which we verified internally, that it did work to do a
partial flush on the compressed stream. We also have a unit testcase included
in the patch to quickly show the problem. 

Early flush is a quite useful technique that many sites out there can benefit
from to speed up the page download/rendering time, and by having it working in
tomcat would benefit the existing and new customers. 

Thanks!

-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


DO NOT REPLY [Bug 48738] [PATCH]Allow GzipOutputFilter to send partial result when flushBuffer() is called

Posted by bu...@apache.org.
https://issues.apache.org/bugzilla/show_bug.cgi?id=48738

--- Comment #2 from Mark Thomas <ma...@apache.org> 2010-08-24 06:09:31 EDT ---
The patch (with some slight modifications) has been applied to trunk and will
be included in 7.0.3 onwards.

-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


DO NOT REPLY [Bug 48738] [PATCH]Allow GzipOutputFilter to send partial result when flushBuffer() is called

Posted by bu...@apache.org.
https://issues.apache.org/bugzilla/show_bug.cgi?id=48738

James Ward <ja...@jamesward.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |james@jamesward.org

-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


DO NOT REPLY [Bug 48738] [PATCH]Allow GzipOutputFilter to send partial result when flushBuffer() is called

Posted by bu...@apache.org.
https://issues.apache.org/bugzilla/show_bug.cgi?id=48738

Konstantin Kolinko <kn...@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |PatchAvailable
            Summary|GzipOutputFilter blocking   |[PATCH]Allow
                   |data to the client browser  |GzipOutputFilter to send
                   |when flushBuffer is invoked |partial result when
                   |                            |flushBuffer() is called
           Severity|major                       |enhancement

--- Comment #1 from Konstantin Kolinko <kn...@gmail.com> 2010-02-13 23:47:31 UTC ---
Thank you for the patch.
I updated Summary and Severity of this issue.

-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


DO NOT REPLY [Bug 48738] [PATCH]Allow GzipOutputFilter to send partial result when flushBuffer() is called

Posted by bu...@apache.org.
https://issues.apache.org/bugzilla/show_bug.cgi?id=48738

Mark Thomas <ma...@apache.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED

--- Comment #4 from Mark Thomas <ma...@apache.org> 2010-09-07 12:02:03 EDT ---
Patch has been applied to 6.0.x and will be included in 6.0.30 onwards.

Thanks again for your efforts.

-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


DO NOT REPLY [Bug 48738] [PATCH]Allow GzipOutputFilter to send partial result when flushBuffer() is called

Posted by bu...@apache.org.
https://issues.apache.org/bugzilla/show_bug.cgi?id=48738

Mark Thomas <ma...@apache.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #24979|0                           |1
        is obsolete|                            |

--- Comment #3 from Mark Thomas <ma...@apache.org> 2010-08-24 14:59:52 EDT ---
Created an attachment (id=25932)
 --> (https://issues.apache.org/bugzilla/attachment.cgi?id=25932)
Port of TC7 patch for Tomact 6

I'll propose this patch for 6.0.x

-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org