php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #38333 Seg fault on graceful restart
Submitted: 2006-08-04 15:26 UTC Modified: 2006-08-16 01:00 UTC
Votes:4
Avg. Score:3.8 ± 0.8
Reproduced:1 of 1 (100.0%)
Same Version:0 (0.0%)
Same OS:0 (0.0%)
From: mail at dasprids dot de Assigned:
Status: No Feedback Package: Apache2 related
PHP Version: 5.2.0RC2-dev OS: SuSE 9.3
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 this is not your bug, you can add a comment by following this link.
If this is your bug, but you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: mail at dasprids dot de
New email:
PHP Version: OS:

 

 [2006-08-04 15:26 UTC] mail at dasprids dot de
Description:
------------
Everytime when Confixx or myself does a graceful restart on apache2, it crashes with the following notice:

[notice] seg fault or similar nasty error detected in the parent process

Some more people reported the same bug on some forums, but noone did every get this solved. As far as I know at the moment, they tracked it down to mysql and mysqli, but at my point it did not help.

I'm using no accelerators or other 3rd party software on my server.

Here is my .configure, pasted from phpinfo():
'./configure' '--prefix=/usr' '--datadir=/usr/share/php' '--mandir=/usr/share/man' '--bindir=/usr/bin' '--libdir=/usr/share' '--includedir=/usr/include' '--sysconfdir=/etc' '--with-_lib=lib' '--with-config-file-path=/etc' '--with-exec-dir=/usr/lib/php/bin' '--disable-debug' '--enable-inline-optimization' '--enable-memory-limit' '--enable-magic-quotes' '--enable-safe-mode' '--enable-sigchild' '--enable-ctype' '--enable-session' '--with-mysql' '--enable-cli' '--with-pear=/usr/share/pear' '--with-openssl' '--with-apxs2=/usr/sbin/apxs2-prefork' 'i586-suse-linux' '--with-gd' '--with-png-dir=/usr/lib' '--with-tiff-dir=/usr/lib' '--with-jpeg-dir=/usr/lib' '--with-libjpeg=/usr/lib' '--with-gif-dir=/usr/lib' '--with-zlib-dir=/usr/lib' '--with-freetype-dir=/usr/lib' '--with-gettext' '--enable-gd-native-ttf' '--enable-soap' '--with-zip' '--enable-ftp' '--enable-mbstring' '--enable-sockets' '--with-regex=php' '--enable-bcmath' '--with-mcript' '--with-bz2' '--with-iconv' '--enable-exif' '--enable-filepro' '--enable-xml' '--with-domxml' '--with-exif' '--with-bcmath' '--with-zlib' '--with-xml'


Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2006-08-04 15:40 UTC] tony2001@php.net
Please try using this CVS snapshot:

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

If you're still able to reproduce it - please provide the GDB backtrace.
 [2006-08-06 08:39 UTC] mail at dasprids dot de
Well, I still can crash the Apache2 with a graceful restart.
Here I provide the gdb backtrace until the graceful restart:

Program received signal SIGUSR1, User defined signal 1.
[Switching to Thread 1077000416 (LWP 17060)]
0xffffe410 in ?? ()
(gdb) bt
#0  0xffffe410 in ?? ()
#1  0xbfad3ae8 in ?? ()
#2  0x00003a98 in ?? ()
#3  0x00000001 in ?? ()
#4  0x402b291d in poll () from /lib/tls/libc.so.6
#5  0x40172c6a in apr_poll () from /usr/lib/libapr-0.so.0
#6  0x401730f8 in apr_wait_for_io_or_timeout () from /usr/lib/libapr-0.so.0
#7  0x40168530 in apr_socket_recv () from /usr/lib/libapr-0.so.0
#8  0x4003bba5 in apr_bucket_socket_create () from /usr/lib/libaprutil-0.so.0
#9  0x4003ae5e in apr_brigade_split_line () from /usr/lib/libaprutil-0.so.0
#10 0x080806f4 in ap_custom_response ()
#11 0x080771f6 in ap_get_brigade ()
#12 0x08080197 in ap_custom_response ()
#13 0x080771f6 in ap_get_brigade ()
#14 0x0807a0c8 in ap_rgetline_core ()
#15 0x0807aa37 in ap_read_request ()
#16 0x08061125 in _start ()
#17 0x082ffb90 in ?? ()
#18 0x00001000 in ?? ()
#19 0x00000001 in ?? ()
#20 0x082ffbd8 in ?? ()
#21 0x08189938 in ?? ()
#22 0x082ffab8 in ?? ()
#23 0x00000001 in ?? ()
#24 0x08098ce8 in ?? ()
#25 0x0821b7a8 in ?? ()
#26 0x00000000 in ?? ()
#27 0xbfad3e38 in ?? ()
#28 0x08074908 in ap_run_process_connection ()
#29 0x08074908 in ap_run_process_connection ()
#30 0x08074a40 in ap_process_connection ()
#31 0x08067f6f in ap_graceful_stop_signalled ()
#32 0x0806816f in ap_graceful_stop_signalled ()
#33 0x0806828d in ap_graceful_stop_signalled ()
#34 0x08068acb in ap_mpm_run ()
#35 0x0806f777 in main ()
 [2006-08-06 12:46 UTC] tony2001@php.net
Please reconfigure PHP with --enable-debug and try to generate the backtrace again.
I can't reproduce it so far and the backtrace shows nothing related to PHP itself.
 [2006-08-06 13:08 UTC] mail at dasprids dot de
Uhm, with --enable-debug I get less than before:

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

Program received signal SIGUSR1, User defined signal 1.
[Switching to Thread 1077000416 (LWP 10250)]
0xffffe410 in ?? ()
(gdb) bt
#0  0xffffe410 in ?? ()
#1  0xbfa129a8 in ?? ()
#2  0x4017587c in ?? () from /usr/lib/libapr-0.so.0
#3  0xbfa12980 in ?? ()
#4  0x401f5511 in accept () from /lib/tls/libpthread.so.0
#5  0x40169f9b in apr_socket_accept () from /usr/lib/libapr-0.so.0
#6  0x4016a0eb in apr_accept () from /usr/lib/libapr-0.so.0
#7  0x08087f08 in unixd_accept ()
#8  0x08067e13 in ap_graceful_stop_signalled ()
#9  0x0806816f in ap_graceful_stop_signalled ()
#10 0x0806828d in ap_graceful_stop_signalled ()
#11 0x08068acb in ap_mpm_run ()
#12 0x0806f777 in main ()
 [2006-08-06 13:25 UTC] tony2001@php.net
Well, as you can see, it has nothing to do with PHP.
 [2006-08-06 13:55 UTC] mail at dasprids dot de
No, it must have something todo with PHP 5, because without PHP-Module or with PHP 4.4.3 it works great. And as I said, I am not the only one with this problem.
 [2006-08-06 14:50 UTC] tony2001@php.net
Then provide more information, as I can't reproduce it.
 [2006-08-08 09:11 UTC] mail at dasprids dot de
Ok, I got so far now, that I could reduce to error to the mysql- and mysqli-module. If I have enabled both or once of them, a graceful restart does not work. If I disable both, it works great. Could it have something to do with my old MySQL-Version (4.1.10a-Max)? Maybe this is bogus, but it has something to do with MySQL in any way.
 [2006-08-08 11:47 UTC] tony2001@php.net
Could you plz check if updating MySQL and rebuilding PHP helps?
 [2006-08-16 01:00 UTC] php-bugs at lists dot php dot net
No feedback was provided for this bug for over a week, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Fri Apr 19 22:01:28 2024 UTC