php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #34779 Default value of "output_buffering" (4096) causes memory overflow on Windows XP
Submitted: 2005-10-07 14:53 UTC Modified: 2005-11-01 11:57 UTC
Votes:3
Avg. Score:4.7 ± 0.5
Reproduced:0 of 0 (0.0%)
From: jan dot lachman at stringdata dot cz Assigned:
Status: Not a bug Package: Output Control
PHP Version: 5CVS-2005-10-07 OS: WindowsXP
Private report: No CVE-ID: None
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: jan dot lachman at stringdata dot cz
New email:
PHP Version: OS:

 

 [2005-10-07 14:53 UTC] jan dot lachman at stringdata dot cz
Description:
------------
On MS Windows XP Pro (SP2) and Apache 2.0.5.4 has PHP(php5apache2.dll module) a serious problem with value output_buffering = 4096. When I start the web-server, then  I run benchmarking programs (like siege or ab.exe or OpenSTA) and I try to access a small script that includes phpinfo (with 50-100 simulated user connections), I get memory load about 10MB within !one! minute (and growing) - until the RAM (715MB) is available.  Then total crash follows after this.

After two-days testing, we found (with my team-mate) little way to solve this problem. If we set output_buffering = On , it's working perfectly.


Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2005-10-07 15:39 UTC] sniper@php.net
Please try using this CVS snapshot:

  http://snaps.php.net/php5-latest.tar.gz
 
For Windows:
 
  http://snaps.php.net/win32/php5-win32-latest.zip


 [2005-10-07 16:57 UTC] jan dot lachman at stringdata dot cz
Nothing. I mean without change. With default value (output_buffering = 4096) bad, with output_buffering = On working perfectly. On request I may send screenshot of Task Manager (with-and-without directive). Thanks.
 [2005-10-24 00:28 UTC] edink@php.net
I have just tried 10000 connections to phpinfo() page an memory usage has stablized at around 21 MB for 10 concurrent connections.

Please post a complite test script that would allow us to trace the problem.
 [2005-10-24 09:34 UTC] jan dot lachman at stringdata dot cz
Ok. I use "standard" ab.exe(Win) or OpenSTA(Win) or Siege(from linux), etc on "client" side. On server side I have small script (like index.php) that includes:
<?
phpinfo();
sleep 5;
?>
nothing else. How it works you know. I know that if my php use output_buffering = 4096 - our server goes down, but when I use output_buffering = On, it works perfectly!
 [2005-11-01 11:57 UTC] sniper@php.net
This is impossible. If you set output_buffering to 'On' it's exactly same as setting it to 4096. So you're really doing something else or not telling us everything.

 
PHP Copyright © 2001-2025 The PHP Group
All rights reserved.
Last updated: Wed Feb 05 20:01:30 2025 UTC