ID:               40479
 Comment by:       gfmailweb at gmail dot com
 Reported By:      rrossi at maggioli dot it
 Status:           No Feedback
 Bug Type:         Reproducible crash
 Operating System: Suse Linux 9.0
 PHP Version:      5.2.1
 New Comment:

Adding 
export USE_ZEND_ALLOC=0
to apache2ctl on Ubuntu Hardy worked for me too.


Previous Comments:
------------------------------------------------------------------------

[2009-11-12 13:38:31] astehlik at intera dot de

I can confirm, that my apache crashed with the error "zend_mm_heap
corrupted" under heavy load. After that I get a lot of Segmentation
faults (11).

OS: CentOS 5.4
PHP: 5.2.11 
Apache: 2.2.14

The server is running as a virtual machine in an ESXi 3.5 Server.

I'm now testing the "export USE_ZEND_ALLOC=0" workaround in my
apachectl. I'll provide more feedback as soon as I know if this helps.

------------------------------------------------------------------------

[2009-10-27 14:54:49] mike at blueroot dot co dot uk

I see this error all the time on my complicated application.  I am
using php-fcgi + nginx + mongodb so I am fairly sure it is something in
core.

I find that even a small change can fix the problem, output buffering
seems to be the culprit for me (ob_end_flush() seems to fix it) which is
maybe why people can only reproduce on production servers?

------------------------------------------------------------------------

[2009-10-14 20:43:45] tulio dot silva at mpt dot gov dot br

Hi all,
in answer to sriram above, here we go:

-bash-3.00$ /usr/local/apache2/bin/httpd -V
Server version: Apache/2.2.13 (Unix)
Server built:   Oct  5 2009 10:20:45
Server's Module Magic Number: 20051115:23
Server loaded:  APR 1.3.8, APR-Util 1.3.9
Compiled using: APR 1.3.8, APR-Util 1.3.9
Architecture:   64-bit
Server MPM:     Prefork
  threaded:     no
    forked:     yes (variable process count)
Server compiled with....
 -D APACHE_MPM_DIR="server/mpm/prefork"
 -D APR_HAS_SENDFILE
 -D APR_HAS_MMAP
 -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
 -D APR_USE_SYSVSEM_SERIALIZE
 -D APR_USE_PTHREAD_SERIALIZE
 -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
 -D APR_HAS_OTHER_CHILD
 -D AP_HAVE_RELIABLE_PIPED_LOGS
 -D DYNAMIC_MODULE_LIMIT=128
 -D HTTPD_ROOT="/usr/local/apache2"
 -D SUEXEC_BIN="/usr/local/apache2/bin/suexec"
 -D DEFAULT_PIDLOG="logs/httpd.pid"
 -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
 -D DEFAULT_LOCKFILE="logs/accept.lock"
 -D DEFAULT_ERRORLOG="logs/error_log"
 -D AP_TYPES_CONFIG_FILE="conf/mime.types"
 -D SERVER_CONFIG_FILE="conf/httpd.conf"

So it is prefork. If ZTS is enabled with --enable-maintainer-zts, then
it´s off. Also, from phpinfo(),
Debug Build     no 
Thread Safety   disabled 
Zend Memory Manager     enabled

and it seems USE_ZEND_ALLOC=0 does nothing for me. I´m on CentOS 4.6 on
multi-core AMD64, with nearly 1GB RAM and a very busy server. There are
plenty of custom systems in this machine, so I can´t tell what is
causing it, but it started after we began using Elxis 2009.0 in
production state (about 15 hits/second).

My configure lines includes a lot of other parameters, like oci and
MySQLi, but if of any use, I´ll compare the relevant items with rrossi´s
(bug opener) config.nice:
'./configure' \
'--with-apxs' \ # idem
'--with-mysql=/usr/local/mysql' \ #'--with-mysql=/usr' (CentOS rpm)
'--with-bz2' \ # no
'--with-mcrypt' \ #no
'--with-pgsql' \ #no
'--without-pear' \ # --with-pear

Apache also includes a lot of modules. The most relevant, I guess, are
rewrite, proxy (http & ajp), ssl, and cache. If any other info needed,
feel free (and please) contact me. It´s been a serious problem down
here.

------------------------------------------------------------------------

[2009-09-18 08:24:48] tdikarim at hotmail dot com

Hi ,

I have tested with the version 5.3 of PHP with no success.
I have this error:
Fatal error: Out of memory (allocated 564920320) (tried to allocate
39063398 bytes) in I:\srvDevPHP\PHP_PEAR\File\PDF.php on line 3191
zend_mm_heap corrupted
The line 3191 is << $this->_buffer .= $s . "\n"; >> of the _out
function.

How can i use the USE_ZEND_ALLOC parameter. I don't find any file for
do that.
Somme info:
EasyPhp 2.0.0.0
     php 5.3.0
     Apache 2.2.13

Thanks
Karim

------------------------------------------------------------------------

[2009-09-18 07:39:11] tdikarim at hotmail dot com

I bring some additional information.
The error occurred with the version of PHP 5.2.1 and version 2.2.13 of
Apache.

This is done by creating a large PDF to do more than 35,000 pages using
File_pdf (last release) PEAR.

I just installed version 5.3 and I'm going with this test without using
USE_ZEND_ALLOC.

For your information, I find pale apachectl.bat file in my apache
directory.

I install apache and php via EasyPhp v2.0.0.0
I advise you to install something else?

I will keep you informed of my test with version 5.3. It will take a
few hours

Again thank you
Karim

------------------------------------------------------------------------

The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
    http://bugs.php.net/40479

-- 
Edit this bug report at http://bugs.php.net/?id=40479&edit=1

Reply via email to