From:             
Operating system: Centos 5.3 x86_64
PHP version:      5.2.13
Package:          Output Control
Bug Type:         Bug
Bug description:zlib.output_compression gets disabled on some processes

Description:
------------
PHP 5.2.13 

Linux r56 2.6.18-164.11.1.el5 #1 SMP Wed Jan 20 07:32:21 EST 2010 x86_64
x86_64 

x86_64 GNU/LinuxApache/2.2.3 (CentOS) mod_ssl/2.2.3
OpenSSL/0.9.8e-fips-rhel5





On a fairly busy server, (50 php req/s) we see that some processes stop 

compressing page output.  I have narrowed it down to where a process pid
which 

transitions to this state, remains in this state until recycled/restarted 

(MaxRequestsPerChild reached).

In this state, where gzip is not working, output headers do not contain
Content 

encodign gzip, so the output is fine.  It's just not using compression.



So when all processes are restarted, page compression works correctly for
some 

indeterminate time, after which, some processes transition to a state where
they 

do not compress the output. Once in this state a process ALWAYS ignores the


compression until recycled.



Some additional info:

We only run a max limit of 100 processes, and typically active processes
are 

about 20 or so.

I have decreased MaxRequestsPerChild to about 40,000 which recycles
processes 

every 2 hours or so, and we still see about 50% of our pages delivered
without 

compression.





Expected result:
----------------
The problem happens with zlib.output_compression on.  If I use
output_handler = 

ob_gzhandler, compression never degrades, and it works as expected.



Actual result:
--------------
I am not sure what the trigger is but would like to help solve this issue. 
If 

someone can give me some insight into this I can debug further.





-- 
Edit bug report at http://bugs.php.net/bug.php?id=51466&edit=1
-- 
Try a snapshot (PHP 5.2):            
http://bugs.php.net/fix.php?id=51466&r=trysnapshot52
Try a snapshot (PHP 5.3):            
http://bugs.php.net/fix.php?id=51466&r=trysnapshot53
Try a snapshot (PHP 6.0):            
http://bugs.php.net/fix.php?id=51466&r=trysnapshot60
Fixed in SVN:                        
http://bugs.php.net/fix.php?id=51466&r=fixed
Fixed in SVN and need be documented: 
http://bugs.php.net/fix.php?id=51466&r=needdocs
Fixed in release:                    
http://bugs.php.net/fix.php?id=51466&r=alreadyfixed
Need backtrace:                      
http://bugs.php.net/fix.php?id=51466&r=needtrace
Need Reproduce Script:               
http://bugs.php.net/fix.php?id=51466&r=needscript
Try newer version:                   
http://bugs.php.net/fix.php?id=51466&r=oldversion
Not developer issue:                 
http://bugs.php.net/fix.php?id=51466&r=support
Expected behavior:                   
http://bugs.php.net/fix.php?id=51466&r=notwrong
Not enough info:                     
http://bugs.php.net/fix.php?id=51466&r=notenoughinfo
Submitted twice:                     
http://bugs.php.net/fix.php?id=51466&r=submittedtwice
register_globals:                    
http://bugs.php.net/fix.php?id=51466&r=globals
PHP 4 support discontinued:          http://bugs.php.net/fix.php?id=51466&r=php4
Daylight Savings:                    http://bugs.php.net/fix.php?id=51466&r=dst
IIS Stability:                       
http://bugs.php.net/fix.php?id=51466&r=isapi
Install GNU Sed:                     
http://bugs.php.net/fix.php?id=51466&r=gnused
Floating point limitations:          
http://bugs.php.net/fix.php?id=51466&r=float
No Zend Extensions:                  
http://bugs.php.net/fix.php?id=51466&r=nozend
MySQL Configuration Error:           
http://bugs.php.net/fix.php?id=51466&r=mysqlcfg

Reply via email to