Apache child exits when PHP memory limit reached
| Bug #40770 | Apache child exits when PHP memory limit reached | ||||
|---|---|---|---|---|---|
| Submitted: | 2007-03-10 03:24 UTC | Modified: | 2007-03-12 17:00 UTC | ||
| From: | php at edwardk dot info | Assigned: | dmitry (profile) | ||
| Status: | Closed | Package: | Reproducible crash | ||
| PHP Version: | 5.2.1 | OS: | Windows 2003 | ||
| Private report: | No | CVE-ID: | None | ||
[2007-03-10 03:24 UTC] php at edwardk dot info
Description:
------------
Running Apache 1.3.37 with PHP 5.2.1 on Windows 2003 Standard 32bit
The following PHP code was called from a browser with the size=149 (to simulate 149MB use) and the PHP memory limit is 160M.
Reproduce code:
---------------
<?
ini_set('display_errors',true);
if (isset($_GET['size']) && $_GET['size'] < 200) {
$mb = intval($_GET['size']);
}
else {
$mb=5;
}
$var = '';
echo 'Memory limit: '.ini_get('memory_limit').'<br>';
for ($i=0; $i<=$mb; $i++) {
$var.= str_repeat('a',1*1024*1024);
echo memory_get_usage().'<br>';
}
echo 'String length: '. strlen($var);
?>
Expected result:
----------------
PHP should, if it did run out of memory, exit with something along the lines of
Fatal error: Allowed memory size of xxx bytes exhausted (tried to allocate yyy bytes)
otherwise, the script should execute without crashing.
Actual result:
--------------
Apache child exits, browser waiting for the result of the page get a TCP connection reset and no page loaded.
Patches
Pull Requests
History
AllCommentsChangesGit/SVN commits
[2007-03-11 14:52 UTC] iliaa@php.net
[2007-03-11 21:35 UTC] php at edwardk dot info
[2007-03-12 03:27 UTC] edink@php.net
[2007-03-12 03:36 UTC] edink@php.net