php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #56997 Apache children segfault after several days of use
Submitted: 2006-05-03 01:22 UTC Modified: 2006-09-10 06:35 UTC
From: bob at norcalttora dot com Assigned:
Status: Closed Package: APC (PECL)
PHP Version: 5.1.2 OS: FreeBSD 5.3-Stable
Private report: No CVE-ID: None
 [2006-05-03 01:22 UTC] bob at norcalttora dot com
Description:
------------
I'm using 3.0.10 of apc. My site serves around 250,000 PHP 
scripts a day. Primarily that's a vBulletin site with second 
place being a mediawiki installation.

APC runs great for ~2 days before it starts causing 
segfaults nearly randomly in httpd child processes. There's 
not much in the log file to indicate what's going on. This 
excerpt looks more or less just like all of the other ones.

[Sat Apr 29 12:36:38 2006] [notice] child pid 6014 exit 
signal Segmentation fault (11)
[Sat Apr 29 12:37:54 2006] [error] [client 70.133.78.73] 
File does not exist: /www/mysite.com/photos/data/500/medium/
DSC00008.JPG, referer: http://mysite.com/forum/
showthread.php?t=33993&page=1&pp=40
[Sat Apr 29 12:38:06 2006] [error] [client 216.77.68.70] 
File does not exist: /w
ww/mysite.com/forum/showthread
[Sat Apr 29 12:39:22 2006] [error] [client 72.30.128.154] 
File does not exist: /
www/mysite.com/robots.txt
[Sat Apr 29 12:40:36 2006] [notice] child pid 6124 exit 
signal Segmentation faul
t (11)
[Sat Apr 29 12:40:36 2006] [notice] child pid 6009 exit 
signal Segmentation faul
t (11)
[Sat Apr 29 12:40:36 2006] [notice] child pid 5920 exit 
signal Segmentation faul
t (11)
[Sat Apr 29 12:40:37 2006] [notice] child pid 6125 exit 
signal Segmentation faul
t (11)
[Sat Apr 29 12:41:10 2006] [notice] child pid 6148 exit 
signal Segmentation faul
t (11)
[Sat Apr 29 12:41:11 2006] [notice] child pid 6149 exit 
signal Segmentation faul
t (11)
[Sat Apr 29 12:41:11 2006] [notice] child pid 6137 exit 
signal Segmentation faul
t (11)
[Sat Apr 29 12:41:11 2006] [notice] child pid 6129 exit 
signal Segmentation faul
t (11)

I have these php modules installed (pkg_version output)
php5
php5-bz2
php5-ctype
php5-dom
php5-ftp
php5-gettext
php5-iconv
php5-imap
php5-ldap
php5-mbstring
php5-mcrypt
php5-mhash
php5-mysql
php5-mysqli
php5-openssl
php5-pcre
php5-pear
php5-session
php5-simplexml
php5-sysvshm
php5-xml
php5-zlib

This is the APC section of my php.ini (disabled to stop the 
segfaults):

apc.enabled="0"
;apc.cachedir="/var/apc_cache"
apc.shm_size="30"
auto_globals_jit = Off
apc.filters="horde"
apc.ttl=3600
apc.user_ttl = 1800

I really really want to use apc as it lowers resource 
utilization to the point that it will stall me having to 
purchase new hardware by a few months (based on current site 
growth rates).

I don't have a corefile. I run httpd in prefork mode with:
StartServers         25                                                         
MinSpareServers      15                                                         
MaxSpareServers     20                                                          
MaxClients         150                                                          
MaxRequestsPerChild  512 

If I could get apache to dump the core file without me 
having to do much else that jeopardizes my site I'd be happy 
to do that (running a single process attached to stdout is 
unacceptable). I'm very willing to work with the developers 
to get this solved. The caveat is that this is a production 
server.

I'm going to try building the port WITH_MMAP and 
WITH_SEMAPHORES. Know more in a few days I guess. I've added 
this to php.ini:
apc.mmap_file_mask="/tmp/apc/apc.XXXXXX"

As of now (~5000 requests in to it) there's nothing in /tmp/
apc/



Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2006-05-03 01:37 UTC] rasmus@php.net
With a gdb backtrace there is nothing to go on here.
 [2006-05-03 13:59 UTC] gopalv82 at yahoo dot com
Btw, are you sure you turned back apc.enabled to 1 ?
 [2006-05-03 14:19 UTC] bob at norcalttora dot com
Yes, the apc admin page shows hits/misses.

Perhaps this is relevant: This status page tends to 
fluctuate. The hits and misses build up over a period of 
what seems like a few hours. Then suddenly it starts over. 
The memory usage, etc go back down to nothing and it starts 
over.

I'd be very happy to provide a backtrace via gdb if someone 
can tell me how to do it without compromising the 
performance of my machine.
 [2006-05-16 04:17 UTC] gopalv82 at yahoo dot com
Please take a look at the following link on more info on how to obtain a coredump from apache. 

http://httpd.apache.org/dev/debugging.html#crashes

After you've got the coredump, you can 

bash$ gdb /usr/sbin/apache2 <path_to_core>
...
(gdb) bt full

Currently I am testing cache allocation failure code and the associated cleanup code. There are a couple of issues which have already been fixed in CVS (random memory corruptions).
 [2006-05-16 12:13 UTC] bob at norcalttora dot com
Great, thanks for posting a useful comment :-) I've followed 
the directions for enabling core dumps and reenabled apc. I'll 
follow up in a few days when I've got my corefile.
 [2006-05-17 12:15 UTC] bob at norcalttora dot com
It segfaulted again, but I apparently wasn't quite setup for 
it. I've found that on FreeBSD I may need to:

sysctl kern.sugid_coredump=1
(http://lists.freebsd.org/pipermail/freebsd-apache/2005-
January/000113.html)
Trying again.
 [2006-05-24 12:37 UTC] bob at norcalttora dot com
Since setting up the machine to drop the corefiles I haven't 
seen a core file yet. It's been running for several days 
without any problems. Nothing else changed :-\ Overall usage 
of the site remains at the same, reasonably high, levels.

I wouldn't close the bug just yet. But for some odd reason its 
running well at the moment.
 [2006-05-25 11:28 UTC] bob at norcalttora dot com
The system finally got itself into a shitty state. This 
time, instead of coring, it threw these in the error log. 
The effect was the same, however, apache would essentially 
return 0 bytes to the client and drop the connection.

[Thu May 25 08:22:57 2006] [apc-error] apc_sma_free: could 
not locate address 0x83d974c
[Thu May 25 08:22:58 2006] [apc-error] apc_sma_free: could 
not locate address 0x83d588c
[Thu May 25 08:22:58 2006] [apc-error] apc_sma_free: could 
not locate address 0x83d188c
[Thu May 25 08:22:58 2006] [apc-error] apc_sma_free: could 
not locate address 0x83d188c
[Thu May 25 08:22:58 2006] [apc-error] apc_sma_free: could 
not locate address 0x83c6c4c
 [2006-05-26 20:30 UTC] bob at norcalttora dot com
Ok, I've got a 38MB core file. Here's the backtrace. Let me 
know if you need anything else.


#0  0x28d5657c in my_fetch_global_vars ()
   from /usr/local/lib/php/20050922/apc.so
(gdb) bt
#0  0x28d5657c in my_fetch_global_vars ()
   from /usr/local/lib/php/20050922/apc.so
#1  0x28d565f7 in apc_copy_op_array_for_execution ()
   from /usr/local/lib/php/20050922/apc.so
#2  0x28d577e6 in cached_compile () from /usr/local/lib/php/
20050922/apc.so
#3  0x28d57989 in my_compile_file () from /usr/local/lib/
php/20050922/apc.so
#4  0x285fe7a2 in ?? () from /usr/local/libexec/apache2/
libphp5.so
#5  0xbfbfd040 in ?? ()
#6  0x00000002 in ?? ()
#7  0x08313e0c in ?? ()
#8  0x082ff958 in ?? ()
#9  0xbfbfd090 in ?? ()
#10 0xbfbfd1a0 in ?? ()
#11 0x00000000 in ?? ()
#12 0x285ef2b2 in ?? () from /usr/local/libexec/apache2/
libphp5.so
#13 0x08313e0c in ?? ()
#14 0x000000f6 in ?? ()
#15 0xbfbfd058 in ?? ()
#16 0x283af774 in free () from /lib/libc.so.5
#17 0x286352ab in ?? () from /usr/local/libexec/apache2/
libphp5.so
#18 0x00000002 in ?? ()
#19 0x082ff9a4 in ?? ()
#20 0xbfbfd0e8 in ?? ()
#21 0x283af643 in ldexp () from /lib/libc.so.5
#22 0x2862ea99 in ?? () from /usr/local/libexec/apache2/
libphp5.so
#23 0xbfbfd1a0 in ?? ()
#24 0x00000001 in ?? ()
#25 0xbfbfd168 in ?? ()
#26 0x285f113a in ?? () from /usr/local/libexec/apache2/
libphp5.so
#27 0x082f6c0c in ?? ()
#28 0x00000001 in ?? ()
#29 0x4476a65d in ?? ()
#30 0x283aed01 in ldexp () from /lib/libc.so.5
#31 0x286184dc in ?? () from /usr/local/libexec/apache2/
libphp5.so
#32 0x082f680c in ?? ()
#33 0x00000000 in ?? ()
#34 0x00000002 in ?? ()
#35 0x283af65f in ldexp () from /lib/libc.so.5
#36 0x285e40b6 in ?? () from /usr/local/libexec/apache2/
libphp5.so
#37 0x00000008 in ?? ()
#38 0x00000000 in ?? ()
#39 0x00000003 in ?? ()
#40 0x00000000 in ?? ()
#41 0xbfbfe800 in ?? ()
#42 0x00000000 in ?? ()
#43 0x00000029 in ?? ()
#44 0x08514a0c in ?? ()
#45 0x2871002f in ?? () from /usr/local/libexec/apache2/
libphp5.so
---Type <return> to continue, or q <return> to quit---
#46 0x0832ca4c in ?? ()
#47 0xbfbfd368 in ?? ()
#48 0x2862b3cb in ?? () from /usr/local/libexec/apache2/
libphp5.so
#49 0x0836260c in ?? ()
#50 0x28dd8ccc in ?? ()
#51 0x0000000a in ?? ()
#52 0x20558bef in ?? ()
#53 0xbfbfd378 in ?? ()
#54 0x00000004 in ?? ()
#55 0xbfbfd334 in ?? ()
#56 0x00000001 in ?? ()
#57 0x084fbbac in ?? ()
#58 0x28dd970c in ?? ()
#59 0x00000009 in ?? ()
#60 0x00000000 in ?? ()
#61 0x00000000 in ?? ()
#62 0x084cdd18 in ?? ()
#63 0x00000007 in ?? ()
#64 0x084cdd18 in ?? ()
#65 0x28dd9600 in ?? ()
#66 0x28dd597c in ?? ()
#67 0xbfbfd3b8 in ?? ()
#68 0x2863123d in ?? () from /usr/local/libexec/apache2/
libphp5.so
#69 0x08383f8c in ?? ()
#70 0x28dd970c in ?? ()
#71 0x00000009 in ?? ()
#72 0xbfbfd410 in ?? ()
#73 0x08374f0c in ?? ()
#74 0xbfbfd410 in ?? ()
#75 0xbfbfd3c8 in ?? ()
#76 0x2864c3e4 in ?? () from /usr/local/libexec/apache2/
libphp5.so
#77 0xbfbfd394 in ?? ()
#78 0x28dd59e0 in ?? ()
#79 0x08362b40 in ?? ()
#80 0x0000000a in ?? ()
#81 0x0000000b in ?? ()
#82 0x28dd8d0c in ?? ()
#83 0xbfbfd3d8 in ?? ()
#84 0x2860c4dc in ?? () from /usr/local/libexec/apache2/
libphp5.so
#85 0x0814c6c0 in ?? ()
#86 0x28dd8d0c in ?? ()
#87 0x0000000b in ?? ()
#88 0xbfbfd3bc in ?? ()
#89 0xbfbfd6f8 in ?? ()
#90 0xbfbfdb40 in ?? ()
#91 0xbfbfd3d8 in ?? ()
#92 0x00000000 in ?? ()
#93 0x08430c0c in ?? ()
---Type <return> to continue, or q <return> to quit---
#94 0x28dd5964 in ?? ()
#95 0x00000001 in ?? ()
#96 0x281f1412 in apr_bucket_alloc ()
   from /usr/local/lib/apache2/libaprutil-0.so.9
#97 0x2869170c in ?? () from /usr/local/libexec/apache2/
libphp5.so
#98 0xbfbfe800 in ?? ()
#99 0x0830f9c8 in ?? ()
#100 0x00000070 in ?? ()
#101 0x2847fdb8 in __JCR_LIST__ () from /usr/local/libexec/
apache2/mod_mime.so
#102 0x00000000 in ?? ()
#103 0x084cf270 in ?? ()
#104 0x08135e38 in ?? ()
#105 0x0830f9c8 in ?? ()
#106 0x0830e005 in ?? ()
#107 0x0830f2b0 in ?? ()
#108 0x0836220c in ?? ()
#109 0x082f6c0c in ?? ()
#110 0x285f14ec in ?? () from /usr/local/libexec/apache2/
libphp5.so
#111 0x285e2d84 in ?? () from /usr/local/libexec/apache2/
libphp5.so
#112 0x285e2d98 in ?? () from /usr/local/libexec/apache2/
libphp5.so
#113 0x00000000 in ?? ()
#114 0x0830e000 in ?? ()
#115 0x0830f998 in ?? ()
#116 0x0830e018 in ?? ()
#117 0x0805f8a8 in ap_set_content_type ()
#118 0x08064516 in ap_run_handler ()
#119 0x08064a36 in ap_invoke_handler ()
#120 0x08061c6c in ap_process_request ()
#121 0x0805d426 in ap_process_http_connection ()
#122 0x0806d196 in ap_run_process_connection ()
#123 0x0806d457 in ap_process_connection ()
#124 0x08063091 in child_main ()
#125 0x080631ee in make_child ()
#126 0x0806340d in perform_idle_server_maintenance ()
#127 0x080637e6 in ap_mpm_run ()
#128 0x08068f65 in main ()
 [2006-07-11 07:42 UTC] quentin at unblog dot fr
Hey,
I use vbulletin and apc, and have been adviced to add this line to the configuration file:

apc.filters = "class_bbcode_alt.php"

That may not give the cause of the problem, but maybe help you not seeing those segfaults again.
aparently this specific vbulletin file is creating problems with APC (don't ask me which).

I have similar problems currently with a wordpress installation generating segfaults after a random period. I don't know if it's the same problem or not. I will try using the tips here to see if i can get the extra info needed to understand what happens.
 [2006-07-26 01:36 UTC] kerplunk at kerplunk dot net
I run vBulletin too and I have the same problems as everyone here. After a few days of running, APC segfaults. This only started happening I upgraded from vBulletin 3.0 to vBulletin 3.5. The major thing that I notice doesn't work after the segfaults occur is the new AJAX stuff. 

The reason I know the segfaulting is because of APC is because I can use eAccelerator or no PHP cache at all and it works fine. I really love APC... if only this bug was fixed.

I would be happy to show you a backtrace, if I knew how to do it.
 [2006-07-27 11:15 UTC] gopalv82 at yahoo dot com
Follow the links to the apache docs (or the freebsd one for that). And please, build APC with debug symbols enabled (CFLAGS="-g") so that I at least have a line number to start with. 

Btw, the current CVS HEAD of apc should fix the "Cannot access parent::" errors if you have any of those.
 [2006-07-29 00:11 UTC] kerplunk at kerplunk dot net
Alright, I hope this helps. I am posting four backtraces. Here they are:


[root@core admin]# gdb /usr/local/apache2/bin/httpd /tmp/core.30140
GNU gdb Red Hat Linux (6.3.0.0-1.96rh)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-redhat-linux-gnu"...Using host libthread_db library "/lib/tls/libthread_db.so.1".

Core was generated by `/usr/local/apache2/bin/httpd -k start'.
Program terminated with signal 11, Segmentation fault.
Reading symbols from /usr/lib/libz.so.1...done.
Loaded symbols for /usr/lib/libz.so.1
Reading symbols from /lib/tls/libm.so.6...done.
Loaded symbols for /lib/tls/libm.so.6
Reading symbols from /usr/local/apache2/lib/libaprutil-1.so.0...done.
Loaded symbols for /usr/local/apache2/lib/libaprutil-1.so.0
Reading symbols from /usr/lib/libexpat.so.0...done.
Loaded symbols for /usr/lib/libexpat.so.0
Reading symbols from /usr/local/apache2/lib/libapr-1.so.0...done.
Loaded symbols for /usr/local/apache2/lib/libapr-1.so.0
Reading symbols from /lib/libuuid.so.1...done.
Loaded symbols for /lib/libuuid.so.1
Reading symbols from /lib/tls/librt.so.1...done.
Loaded symbols for /lib/tls/librt.so.1
Reading symbols from /lib/libcrypt.so.1...done.
Loaded symbols for /lib/libcrypt.so.1
Reading symbols from /lib/tls/libpthread.so.0...done.
Loaded symbols for /lib/tls/libpthread.so.0
Reading symbols from /lib/libdl.so.2...done.
Loaded symbols for /lib/libdl.so.2
Reading symbols from /lib/tls/libc.so.6...done.
Loaded symbols for /lib/tls/libc.so.6
Reading symbols from /lib/ld-linux.so.2...done.
Loaded symbols for /lib/ld-linux.so.2
Reading symbols from /lib/libnss_files.so.2...done.
Loaded symbols for /lib/libnss_files.so.2
Reading symbols from /usr/local/apache2/modules/libphp5.so...done.
Loaded symbols for /usr/local/apache2/modules/libphp5.so
Reading symbols from /usr/local/freetds/lib/libsybdb.so.5...done.
Loaded symbols for /usr/local/freetds/lib/libsybdb.so.5
Reading symbols from /usr/lib/libgd.so.2...done.
Loaded symbols for /usr/lib/libgd.so.2
Reading symbols from /lib/libresolv.so.2...done.
Loaded symbols for /lib/libresolv.so.2
Reading symbols from /lib/libnsl.so.1...done.
Loaded symbols for /lib/libnsl.so.1
Reading symbols from /usr/lib/libxml2.so.2...done.
Loaded symbols for /usr/lib/libxml2.so.2
Reading symbols from /usr/X11R6/lib/libXpm.so.4...done.
Loaded symbols for /usr/X11R6/lib/libXpm.so.4
Reading symbols from /usr/X11R6/lib/libX11.so.6...done.
Loaded symbols for /usr/X11R6/lib/libX11.so.6
Reading symbols from /usr/lib/libjpeg.so.62...done.
Loaded symbols for /usr/lib/libjpeg.so.62
Reading symbols from /usr/lib/libfreetype.so.6...done.
Loaded symbols for /usr/lib/libfreetype.so.6
Reading symbols from /usr/lib/libpng12.so.0...done.
Loaded symbols for /usr/lib/libpng12.so.0
Reading symbols from /usr/X11R6/lib/libXext.so.6...done.
Loaded symbols for /usr/X11R6/lib/libXext.so.6
Reading symbols from /usr/local/lib/php/extensions/no-debug-non-zts-20050922/memcache.so...done.
Loaded symbols for /usr/local/lib/php/extensions/no-debug-non-zts-20050922/memcache.so
Reading symbols from /usr/local/lib/php/extensions/no-debug-non-zts-20050922/pdo.so...done.
Loaded symbols for /usr/local/lib/php/extensions/no-debug-non-zts-20050922/pdo.so
Reading symbols from /usr/local/lib/php/extensions/no-debug-non-zts-20050922/apc.so...done.
Loaded symbols for /usr/local/lib/php/extensions/no-debug-non-zts-20050922/apc.so
Reading symbols from /usr/lib/gconv/ISO8859-1.so...done.
Loaded symbols for /usr/lib/gconv/ISO8859-1.so
#0  0x0068ccb0 in zend_hash_find (ht=0x9c3e594, arKey=0x9d233ac "url", nKeyLength=4, pData=0x0) at /apps/php-5.1.4/Zend/zend_hash.c:850
850             p = ht->arBuckets[nIndex];
(gdb) bt full
#0  0x0068ccb0 in zend_hash_find (ht=0x9c3e594, arKey=0x9d233ac "url", nKeyLength=4, pData=0x0) at /apps/php-5.1.4/Zend/zend_hash.c:850
        nIndex = 0
        p = Variable "p" is not available.
(gdb) 



[root@core admin]# gdb /usr/local/apache2/bin/httpd /tmp/core.18509
GNU gdb Red Hat Linux (6.3.0.0-1.96rh)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-redhat-linux-gnu"...Using host libthread_db library "/lib/tls/libthread_db.so.1".

Core was generated by `/usr/local/apache2/bin/httpd -k start'.
Program terminated with signal 11, Segmentation fault.
Reading symbols from /usr/lib/libz.so.1...done.
Loaded symbols for /usr/lib/libz.so.1
Reading symbols from /lib/tls/libm.so.6...done.
Loaded symbols for /lib/tls/libm.so.6
Reading symbols from /usr/local/apache2/lib/libaprutil-1.so.0...done.
Loaded symbols for /usr/local/apache2/lib/libaprutil-1.so.0
Reading symbols from /usr/lib/libexpat.so.0...done.
Loaded symbols for /usr/lib/libexpat.so.0
Reading symbols from /usr/local/apache2/lib/libapr-1.so.0...done.
Loaded symbols for /usr/local/apache2/lib/libapr-1.so.0
Reading symbols from /lib/libuuid.so.1...done.
Loaded symbols for /lib/libuuid.so.1
Reading symbols from /lib/tls/librt.so.1...done.
Loaded symbols for /lib/tls/librt.so.1
Reading symbols from /lib/libcrypt.so.1...done.
Loaded symbols for /lib/libcrypt.so.1
Reading symbols from /lib/tls/libpthread.so.0...done.
Loaded symbols for /lib/tls/libpthread.so.0
Reading symbols from /lib/libdl.so.2...done.
Loaded symbols for /lib/libdl.so.2
Reading symbols from /lib/tls/libc.so.6...done.
Loaded symbols for /lib/tls/libc.so.6
Reading symbols from /lib/ld-linux.so.2...done.
Loaded symbols for /lib/ld-linux.so.2
Reading symbols from /lib/libnss_files.so.2...done.
Loaded symbols for /lib/libnss_files.so.2
Reading symbols from /usr/local/apache2/modules/libphp5.so...done.
Loaded symbols for /usr/local/apache2/modules/libphp5.so
Reading symbols from /usr/local/freetds/lib/libsybdb.so.5...done.
Loaded symbols for /usr/local/freetds/lib/libsybdb.so.5
Reading symbols from /usr/lib/libgd.so.2...done.
Loaded symbols for /usr/lib/libgd.so.2
Reading symbols from /lib/libresolv.so.2...done.
Loaded symbols for /lib/libresolv.so.2
Reading symbols from /lib/libnsl.so.1...done.
Loaded symbols for /lib/libnsl.so.1
Reading symbols from /usr/lib/libxml2.so.2...done.
Loaded symbols for /usr/lib/libxml2.so.2
Reading symbols from /usr/X11R6/lib/libXpm.so.4...done.
Loaded symbols for /usr/X11R6/lib/libXpm.so.4
Reading symbols from /usr/X11R6/lib/libX11.so.6...done.
Loaded symbols for /usr/X11R6/lib/libX11.so.6
Reading symbols from /usr/lib/libjpeg.so.62...done.
Loaded symbols for /usr/lib/libjpeg.so.62
Reading symbols from /usr/lib/libfreetype.so.6...done.
Loaded symbols for /usr/lib/libfreetype.so.6
Reading symbols from /usr/lib/libpng12.so.0...done.
Loaded symbols for /usr/lib/libpng12.so.0
Reading symbols from /usr/X11R6/lib/libXext.so.6...done.
Loaded symbols for /usr/X11R6/lib/libXext.so.6
Reading symbols from /usr/local/lib/php/extensions/no-debug-non-zts-20050922/memcache.so...done.
Loaded symbols for /usr/local/lib/php/extensions/no-debug-non-zts-20050922/memcache.so
Reading symbols from /usr/local/lib/php/extensions/no-debug-non-zts-20050922/pdo.so...done.
Loaded symbols for /usr/local/lib/php/extensions/no-debug-non-zts-20050922/pdo.so
Reading symbols from /usr/local/lib/php/extensions/no-debug-non-zts-20050922/apc.so...done.
Loaded symbols for /usr/local/lib/php/extensions/no-debug-non-zts-20050922/apc.so
Reading symbols from /usr/lib/gconv/ISO8859-1.so...done.
Loaded symbols for /usr/lib/gconv/ISO8859-1.so
#0  0x00672051 in shutdown_memory_manager (silent=0, full_shutdown=0) at /apps/php-5.1.4/Zend/zend_alloc.c:511
511                                     REMOVE_POINTER_FROM_LIST(ptr);
(gdb) bt full
#0  0x00672051 in shutdown_memory_manager (silent=0, full_shutdown=0) at /apps/php-5.1.4/Zend/zend_alloc.c:511
        i = 0
        j = 0
        ptr = (zend_mem_header *) 0xb0066978
        p = Variable "p" is not available.
(gdb) 



[root@core admin]# gdb /usr/local/apache2/bin/httpd /tmp/core.18509
GNU gdb Red Hat Linux (6.3.0.0-1.96rh)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-redhat-linux-gnu"...Using host libthread_db library "/lib/tls/libthread_db.so.1".

Core was generated by `/usr/local/apache2/bin/httpd -k start'.
Program terminated with signal 11, Segmentation fault.
Reading symbols from /usr/lib/libz.so.1...done.
Loaded symbols for /usr/lib/libz.so.1
Reading symbols from /lib/tls/libm.so.6...done.
Loaded symbols for /lib/tls/libm.so.6
Reading symbols from /usr/local/apache2/lib/libaprutil-1.so.0...done.
Loaded symbols for /usr/local/apache2/lib/libaprutil-1.so.0
Reading symbols from /usr/lib/libexpat.so.0...done.
Loaded symbols for /usr/lib/libexpat.so.0
Reading symbols from /usr/local/apache2/lib/libapr-1.so.0...done.
Loaded symbols for /usr/local/apache2/lib/libapr-1.so.0
Reading symbols from /lib/libuuid.so.1...done.
Loaded symbols for /lib/libuuid.so.1
Reading symbols from /lib/tls/librt.so.1...done.
Loaded symbols for /lib/tls/librt.so.1
Reading symbols from /lib/libcrypt.so.1...done.
Loaded symbols for /lib/libcrypt.so.1
Reading symbols from /lib/tls/libpthread.so.0...done.
Loaded symbols for /lib/tls/libpthread.so.0
Reading symbols from /lib/libdl.so.2...done.
Loaded symbols for /lib/libdl.so.2
Reading symbols from /lib/tls/libc.so.6...done.
Loaded symbols for /lib/tls/libc.so.6
Reading symbols from /lib/ld-linux.so.2...done.
Loaded symbols for /lib/ld-linux.so.2
Reading symbols from /lib/libnss_files.so.2...done.
Loaded symbols for /lib/libnss_files.so.2
Reading symbols from /usr/local/apache2/modules/libphp5.so...done.
Loaded symbols for /usr/local/apache2/modules/libphp5.so
Reading symbols from /usr/local/freetds/lib/libsybdb.so.5...done.
Loaded symbols for /usr/local/freetds/lib/libsybdb.so.5
Reading symbols from /usr/lib/libgd.so.2...done.
Loaded symbols for /usr/lib/libgd.so.2
Reading symbols from /lib/libresolv.so.2...done.
Loaded symbols for /lib/libresolv.so.2
Reading symbols from /lib/libnsl.so.1...done.
Loaded symbols for /lib/libnsl.so.1
Reading symbols from /usr/lib/libxml2.so.2...done.
Loaded symbols for /usr/lib/libxml2.so.2
Reading symbols from /usr/X11R6/lib/libXpm.so.4...done.
Loaded symbols for /usr/X11R6/lib/libXpm.so.4
Reading symbols from /usr/X11R6/lib/libX11.so.6...done.
Loaded symbols for /usr/X11R6/lib/libX11.so.6
Reading symbols from /usr/lib/libjpeg.so.62...done.
Loaded symbols for /usr/lib/libjpeg.so.62
Reading symbols from /usr/lib/libfreetype.so.6...done.
Loaded symbols for /usr/lib/libfreetype.so.6
Reading symbols from /usr/lib/libpng12.so.0...done.
Loaded symbols for /usr/lib/libpng12.so.0
Reading symbols from /usr/X11R6/lib/libXext.so.6...done.
Loaded symbols for /usr/X11R6/lib/libXext.so.6
Reading symbols from /usr/local/lib/php/extensions/no-debug-non-zts-20050922/memcache.so...done.
Loaded symbols for /usr/local/lib/php/extensions/no-debug-non-zts-20050922/memcache.so
Reading symbols from /usr/local/lib/php/extensions/no-debug-non-zts-20050922/pdo.so...done.
Loaded symbols for /usr/local/lib/php/extensions/no-debug-non-zts-20050922/pdo.so
Reading symbols from /usr/local/lib/php/extensions/no-debug-non-zts-20050922/apc.so...done.
Loaded symbols for /usr/local/lib/php/extensions/no-debug-non-zts-20050922/apc.so
Reading symbols from /usr/lib/gconv/ISO8859-1.so...done.
Loaded symbols for /usr/lib/gconv/ISO8859-1.so
#0  0x00672051 in shutdown_memory_manager (silent=0, full_shutdown=0) at /apps/php-5.1.4/Zend/zend_alloc.c:511
511                                     REMOVE_POINTER_FROM_LIST(ptr);
(gdb) bt full
#0  0x00672051 in shutdown_memory_manager (silent=0, full_shutdown=0) at /apps/php-5.1.4/Zend/zend_alloc.c:511
        i = 0
        j = 0
        ptr = (zend_mem_header *) 0xb0066978
        p = Variable "p" is not available.
(gdb) 



[root@core tmp]# gdb /usr/local/apache2/bin/httpd /tmp/core.31289
GNU gdb Red Hat Linux (6.3.0.0-1.96rh)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-redhat-linux-gnu"...Using host libthread_db library "/lib/tls/libthread_db.so.1".

Core was generated by `/usr/local/apache2/bin/httpd -k start'.
Program terminated with signal 11, Segmentation fault.
Reading symbols from /usr/lib/libz.so.1...done.
Loaded symbols for /usr/lib/libz.so.1
Reading symbols from /lib/tls/libm.so.6...done.
Loaded symbols for /lib/tls/libm.so.6
Reading symbols from /usr/local/apache2/lib/libaprutil-1.so.0...done.
Loaded symbols for /usr/local/apache2/lib/libaprutil-1.so.0
Reading symbols from /usr/lib/libexpat.so.0...done.
Loaded symbols for /usr/lib/libexpat.so.0
Reading symbols from /usr/local/apache2/lib/libapr-1.so.0...done.
Loaded symbols for /usr/local/apache2/lib/libapr-1.so.0
Reading symbols from /lib/libuuid.so.1...done.
Loaded symbols for /lib/libuuid.so.1
Reading symbols from /lib/tls/librt.so.1...done.
Loaded symbols for /lib/tls/librt.so.1
Reading symbols from /lib/libcrypt.so.1...done.
Loaded symbols for /lib/libcrypt.so.1
Reading symbols from /lib/tls/libpthread.so.0...done.
Loaded symbols for /lib/tls/libpthread.so.0
Reading symbols from /lib/libdl.so.2...done.
Loaded symbols for /lib/libdl.so.2
Reading symbols from /lib/tls/libc.so.6...done.
Loaded symbols for /lib/tls/libc.so.6
Reading symbols from /lib/ld-linux.so.2...done.
Loaded symbols for /lib/ld-linux.so.2
Reading symbols from /lib/libnss_files.so.2...done.
Loaded symbols for /lib/libnss_files.so.2
Reading symbols from /usr/local/apache2/modules/libphp5.so...done.
Loaded symbols for /usr/local/apache2/modules/libphp5.so
Reading symbols from /usr/local/freetds/lib/libsybdb.so.5...done.
Loaded symbols for /usr/local/freetds/lib/libsybdb.so.5
Reading symbols from /usr/lib/libgd.so.2...done.
Loaded symbols for /usr/lib/libgd.so.2
Reading symbols from /lib/libresolv.so.2...done.
Loaded symbols for /lib/libresolv.so.2
Reading symbols from /lib/libnsl.so.1...done.
Loaded symbols for /lib/libnsl.so.1
Reading symbols from /usr/lib/libxml2.so.2...done.
Loaded symbols for /usr/lib/libxml2.so.2
Reading symbols from /usr/X11R6/lib/libXpm.so.4...done.
Loaded symbols for /usr/X11R6/lib/libXpm.so.4
Reading symbols from /usr/X11R6/lib/libX11.so.6...done.
Loaded symbols for /usr/X11R6/lib/libX11.so.6
Reading symbols from /usr/lib/libjpeg.so.62...done.
Loaded symbols for /usr/lib/libjpeg.so.62
Reading symbols from /usr/lib/libfreetype.so.6...done.
Loaded symbols for /usr/lib/libfreetype.so.6
Reading symbols from /usr/lib/libpng12.so.0...done.
Loaded symbols for /usr/lib/libpng12.so.0
Reading symbols from /usr/X11R6/lib/libXext.so.6...done.
Loaded symbols for /usr/X11R6/lib/libXext.so.6
Reading symbols from /usr/local/lib/php/extensions/no-debug-non-zts-20050922/memcache.so...done.
Loaded symbols for /usr/local/lib/php/extensions/no-debug-non-zts-20050922/memcache.so
Reading symbols from /usr/local/lib/php/extensions/no-debug-non-zts-20050922/pdo.so...done.
Loaded symbols for /usr/local/lib/php/extensions/no-debug-non-zts-20050922/pdo.so
Reading symbols from /usr/local/lib/php/extensions/no-debug-non-zts-20050922/apc.so...done.
Loaded symbols for /usr/local/lib/php/extensions/no-debug-non-zts-20050922/apc.so
Reading symbols from /usr/lib/gconv/ISO8859-1.so...done.
Loaded symbols for /usr/lib/gconv/ISO8859-1.so
#0  0x0068ccb0 in zend_hash_find (ht=0x9bcd42c, arKey=0x9c50cc4 "url", nKeyLength=4, pData=0x0) at /apps/php-5.1.4/Zend/zend_hash.c:850
850             p = ht->arBuckets[nIndex];
(gdb) bt full
#0  0x0068ccb0 in zend_hash_find (ht=0x9bcd42c, arKey=0x9c50cc4 "url", nKeyLength=4, pData=0x0) at /apps/php-5.1.4/Zend/zend_hash.c:850
        nIndex = 0
        p = Variable "p" is not available.
(gdb) 



[root@core tmp]# gdb /usr/local/apache2/bin/httpd /tmp/core.19590
GNU gdb Red Hat Linux (6.3.0.0-1.96rh)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-redhat-linux-gnu"...Using host libthread_db library "/lib/tls/libthread_db.so.1".

Core was generated by `/usr/local/apache2/bin/httpd -k start'.
Program terminated with signal 11, Segmentation fault.
Reading symbols from /usr/lib/libz.so.1...done.
Loaded symbols for /usr/lib/libz.so.1
Reading symbols from /lib/tls/libm.so.6...done.
Loaded symbols for /lib/tls/libm.so.6
Reading symbols from /usr/local/apache2/lib/libaprutil-1.so.0...done.
Loaded symbols for /usr/local/apache2/lib/libaprutil-1.so.0
Reading symbols from /usr/lib/libexpat.so.0...done.
Loaded symbols for /usr/lib/libexpat.so.0
Reading symbols from /usr/local/apache2/lib/libapr-1.so.0...done.
Loaded symbols for /usr/local/apache2/lib/libapr-1.so.0
Reading symbols from /lib/libuuid.so.1...done.
Loaded symbols for /lib/libuuid.so.1
Reading symbols from /lib/tls/librt.so.1...done.
Loaded symbols for /lib/tls/librt.so.1
Reading symbols from /lib/libcrypt.so.1...done.
Loaded symbols for /lib/libcrypt.so.1
Reading symbols from /lib/tls/libpthread.so.0...done.
Loaded symbols for /lib/tls/libpthread.so.0
Reading symbols from /lib/libdl.so.2...done.
Loaded symbols for /lib/libdl.so.2
Reading symbols from /lib/tls/libc.so.6...done.
Loaded symbols for /lib/tls/libc.so.6
Reading symbols from /lib/ld-linux.so.2...done.
Loaded symbols for /lib/ld-linux.so.2
Reading symbols from /lib/libnss_files.so.2...done.
Loaded symbols for /lib/libnss_files.so.2
Reading symbols from /usr/local/apache2/modules/libphp5.so...done.
Loaded symbols for /usr/local/apache2/modules/libphp5.so
Reading symbols from /usr/local/freetds/lib/libsybdb.so.5...done.
Loaded symbols for /usr/local/freetds/lib/libsybdb.so.5
Reading symbols from /usr/lib/libgd.so.2...done.
Loaded symbols for /usr/lib/libgd.so.2
Reading symbols from /lib/libresolv.so.2...done.
Loaded symbols for /lib/libresolv.so.2
Reading symbols from /lib/libnsl.so.1...done.
Loaded symbols for /lib/libnsl.so.1
Reading symbols from /usr/lib/libxml2.so.2...done.
Loaded symbols for /usr/lib/libxml2.so.2
Reading symbols from /usr/X11R6/lib/libXpm.so.4...done.
Loaded symbols for /usr/X11R6/lib/libXpm.so.4
Reading symbols from /usr/X11R6/lib/libX11.so.6...done.
Loaded symbols for /usr/X11R6/lib/libX11.so.6
Reading symbols from /usr/lib/libjpeg.so.62...done.
Loaded symbols for /usr/lib/libjpeg.so.62
Reading symbols from /usr/lib/libfreetype.so.6...done.
Loaded symbols for /usr/lib/libfreetype.so.6
Reading symbols from /usr/lib/libpng12.so.0...done.
Loaded symbols for /usr/lib/libpng12.so.0
Reading symbols from /usr/X11R6/lib/libXext.so.6...done.
Loaded symbols for /usr/X11R6/lib/libXext.so.6
Reading symbols from /usr/local/lib/php/extensions/no-debug-non-zts-20050922/memcache.so...done.
Loaded symbols for /usr/local/lib/php/extensions/no-debug-non-zts-20050922/memcache.so
Reading symbols from /usr/local/lib/php/extensions/no-debug-non-zts-20050922/pdo.so...done.
Loaded symbols for /usr/local/lib/php/extensions/no-debug-non-zts-20050922/pdo.so
Reading symbols from /usr/local/lib/php/extensions/no-debug-non-zts-20050922/apc.so...done.
Loaded symbols for /usr/local/lib/php/extensions/no-debug-non-zts-20050922/apc.so
#0  0x00672051 in shutdown_memory_manager (silent=0, full_shutdown=0) at /apps/php-5.1.4/Zend/zend_alloc.c:511
511                                     REMOVE_POINTER_FROM_LIST(ptr);
(gdb) bt full
#0  0x00672051 in shutdown_memory_manager (silent=0, full_shutdown=0) at /apps/php-5.1.4/Zend/zend_alloc.c:511
        i = 0
        j = 0
        ptr = (zend_mem_header *) 0xb0066978
        p = Variable "p" is not available.
(gdb) 



Thanks, I would REALLY enjoy seeing this bug fixed as it causes segfaults to Apache every 20 hours or so. Thanks guys!
 [2006-08-19 15:36 UTC] kerplunk at kerplunk dot net
Any progress on this? I have had to switch to eAccelerator because of this bug.
 [2006-08-19 17:50 UTC] rasmus@php.net
You tell us.  Does it happen with 3.0.11?
 [2006-09-08 11:36 UTC] kerplunk at kerplunk dot net
I am very happy to say, Rasmus, that it appears this bug is fixed. We are using 3.0.12p2 and have had no issues with this (or anything else for that matter). Thank you very much. :) APC is the best PHP cache available and I am very excited to see it make its way into PHP 6.
 [2006-09-10 06:35 UTC] gopalv82 at yahoo dot com
*phew* dodged that one ;)

Just let the vbulletin guys know that you don't need filters anymore.
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Fri Apr 19 19:01:28 2024 UTC