Why would a PHP app be generating intermittent segfaults? - php

I'm doing some load testing on a PHP app (it's a symfony app, if that matters), and the logs are full of errors like these. I'm struggling to work out why these segfaults are occurring.
[Wed Mar 13 00:54:47 2013] [notice] child pid 18830 exit signal Bus error (7), possible coredump in /tmp/apache2-gdb-dump
[Wed Mar 13 00:54:55 2013] [notice] child pid 19016 exit signal Bus error (7), possible coredump in /tmp/apache2-gdb-dump
[Wed Mar 13 00:54:56 2013] [notice] child pid 19002 exit signal Bus error (7), possible coredump in /tmp/apache2-gdb-dump
[Wed Mar 13 00:54:58 2013] [notice] child pid 19041 exit signal Bus error (7), possible coredump in /tmp/apache2-gdb-dump
When I generate a backtrace from the core dumps I get
[New LWP 588] [Thread debugging using libthread_db enabled] Using host
libthread_db library
"/lib/i386-linux-gnu/tls/i686/nosegneg/libthread_db.so.1". Core was
generated by `/usr/sbin/apache2 -k start'. Program terminated with
signal 7, Bus error.
0 lex_scan (zendlval=0xb6d2ce38) at /build/buildd/php5-5.4.6/Zend/zend_language_scanner.c:2260
Thread 1 (Thread 0xb7485700 (LWP 588)):
0 lex_scan (zendlval=0xb6d2ce38) at /build/buildd/php5-5.4.6/Zend/zend_language_scanner.c:2260
So perhaps it's something to do with parsing? I know little about php internals however, so am uncertain. What might be causing this?

Related

WordPress is unable to install new plugins, connection aborted at MySQL

My website is working perfectly until I am reading/changing website text content but whenever I am going to install a new plugin, I get the following message:
Installation failed: Connection lost or the server is busy. Please try again later.
After several hours of investigation and tried different solutions, I checked the status of the MySQL host in phpmyadmin. I found every time I hit an install the new plugin button I have an aborted connection variable incremented. Everything is working before/after.
I am hosting a couple of my own websites and all have the same problem now.
I already tried existing solutions for the similar problems, like:
Disabling all plugins.
Switching to the default theme and renaming plugins folder to something else.
Replacing all files of wp-includes and wp-admin with a new copy of WordPress.
Repairing database.
Increasing memory in php.ini and wp-config.php
I also checked errors in apache and I have a segmentation fault every time I try to install a new plugin.
[Mon Sep 24 04:43:03.726633 2018] [core:notice] [pid 18706] AH00051: child pid 18713 exit signal Segmentation fault (11), possible coredump in /etc/apache2
[Mon Sep 24 04:43:05.729536 2018] [core:notice] [pid 18706] AH00051: child pid 18714 exit signal Segmentation fault (11), possible coredump in /etc/apache2
[Mon Sep 24 04:43:07.731804 2018] [core:notice] [pid 18706] AH00051: child pid 18807 exit signal Segmentation fault (11), possible coredump in /etc/apache2
[Mon Sep 24 04:43:42.764302 2018] [core:notice] [pid 18706] AH00051: child pid 21719 exit signal Segmentation fault (11), possible coredump in /etc/apache2
[Mon Sep 24 04:43:43.766767 2018] [core:notice] [pid 18706] AH00051: child pid 26183 exit signal Segmentation fault (11), possible coredump in /etc/apache2
[Mon Sep 24 04:43:45.768930 2018] [core:notice] [pid 18706] AH00051: child pid 26246 exit signal Segmentation fault (11), possible coredump in /etc/apache2
[Mon Sep 24 04:50:31.167685 2018] [core:notice] [pid 18706] AH00051: child pid 18710 exit signal Segmentation fault (11), possible coredump in /etc/apache2
[Mon Sep 24 04:50:34.171751 2018] [core:notice] [pid 18706] AH00051: child pid 26523 exit signal Segmentation fault (11), possible coredump in /etc/apache2

Error Fetching http headers SOAP Client

I am using a SOAP client for placing order in Magento (PHP) and Getting Error Fetching http headers while hitting that webservice.
When I restart httpd then the error disappears and I am able to place order again and again
What I tried
default_socket_timeout : 120
Code Snippet of SOAP CLIENT
$cli = new SoapClient($api_url_v2,
array(
'trace' =>true,
'connection_timeout' => 500000,
'keep_alive' => false,
)
);
checked around the httpd logs and found following
[Mon Oct 17 01:50:24 2016] [error] [client 127.0.0.1] client denied by server configuration: /var/www/html/store/app/etc/local.xml
[Mon Oct 17 01:53:53 2016] [notice] child pid 28113 exit signal Segmentation fault (11)
[Mon Oct 17 01:57:52 2016] [notice] child pid 29400 exit signal Segmentation fault (11)
[Mon Oct 17 02:01:14 2016] [notice] child pid 29401 exit signal Segmentation fault (11)
[Mon Oct 17 02:02:50 2016] [notice] child pid 29398 exit signal Segmentation fault (11)
[Mon Oct 17 02:05:38 2016] [error] [client 127.0.0.1] client denied by server configuration: /var/www/html/store/app/etc/local.xml
[Mon Oct 17 02:06:40 2016] [notice] child pid 28180 exit signal Segmentation fault (11)
Please let me know if any other information I can provide to track this out.
SOAP trace is not showing anything for me. this problem is with this web service only , my soap client is working fine with others.
Try editing php.ini file soap.wsdl_cache_enabled=1 and change it to soap.wsdl_cache_enabled=0

Cakephp is putting webroot in the url Or appears Blank Plage

I've been trying to create a view with data from database, but I have 2 lingering issues:
-> The page stays blank with the message:
No Data Received
ERR_EMPTY_RESPONSE
-> When I click the link to controller that I want, cakephp passes in the url the following url:
myDomain/webroot/controller
I don't know why cakephp is puting webroot in the url.....
In the apache's error.log I have this error:
[Thu Apr 28 16:47:23.169213 2016] [core:notice] [pid 1619] AH00052: child pid 4737 exit signal Segmentation fault (11)
[Thu Apr 28 16:47:23.169217 2016] [core:notice] [pid 1619] AH00052: child pid 4738 exit signal Segmentation fault (11)
[Thu Apr 28 16:47:23.169222 2016] [core:notice] [pid 1619] AH00052: child pid 4800 exit signal Segmentation fault (11)
The Code is here:
gist.github.com/TiagoSilvestre/abc00a8e6da0698754d7f9c1d28d3c9d
I hope someone can help me because this error already appears in 3 differents computers with differents SO(Linux and Windows), but always with apache.
Thanks

APC and child pid XXXXX exit signal Segmentation fault [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 9 years ago.
Improve this question
First I had xCache installed on server, I had xCache on lot of my servers but in this one after couple of days you go nothing except a blank page with this error in apache error log:
child pid XXXXX exit signal Segmentation fault
As far as I know this mean some sort of memory corruption.
So I removed xCache from php.ini and installed APC. But things are worse now. After one hour or less/more server become unresponsive. I can clearly see in my website's server-status that there are lot of connections in W mode. And they dont have any thing in common. Some of them are from Joomla (first page) and some from vBulletin (forums) and some other are about other custom codes.
If I let it for more time I will going to have this error in Apache error log:
Server reached MaxClients setting, consider raising the MaxClients setting
Apache is in mod_php and mod_ruid2 mode.
Here is result of server-status when hanged:
Server uptime: 52 minutes 57 seconds
Total accesses: 31025 - Total Traffic: 279.0 MB
CPU Usage: u418.14 s64.28 cu0 cs0 - 15.2% CPU load
9.77 requests/sec - 89.9 kB/second - 9.2 kB/request
398 requests currently being processed, 27 idle workers
WWWWWWWWWWWWWWWWWWWWWWWWW.......................................
WWWWWWWWWWWWWWWWWWWWWWWWW.......................................
WWWWWWWWWWWWWWWWWWWWWWWWW.......................................
WWWWWWWWWWWWWWWWWWWWWWWWW.......................................
WWWWWWWWWWWWWWWWWWWWWWWWW.......................................
WWWWWWWWWWWWWWWWWWWWWWWWW.......................................
WWWWWWWWWWWWWWWWWWWWWWWWW.......................................
WWWWWWWWWWWWWWWWWWWWWWWWW.......................................
WWWWWWWWWWWWWWWWWWWWWWWWW.......................................
WWWWWWWWWWWWWWWWWWWWWWWWW.......................................
WWWWWWWWWWWWWWWWWWWWWWWWW.......................................
WWWWWWWWWWWWWWWWWWWWWWWWW.......................................
WWWWWWWWWWWWWWWWWWWWWWWWW.......................................
WWWWWWWWWWWWWWWWWWWWWWWWW.......................................
WWWWWWWWWWWWWWWWWWWWWWWWW.......................................
WW___WW_WW_W_WWW__WWWW_W_.......................................
_W___W___WW_W_W_W_W______.......................................
Here is error log for xCache (lot of these lines):
[Thu Mar 28 09:50:38 2013] [notice] child pid 1607 exit signal Aborted (6)
httpd: /usr/src/xcache-2.0.0/utils.c:589: xc_sandbox_error_cb: Assertion `sandbox != ((void *)0)' failed.
[Thu Mar 28 09:51:57 2013] [notice] child pid 1643 exit signal Aborted (6)
httpd: /usr/src/xcache-2.0.0/utils.c:589: xc_sandbox_error_cb: Assertion `sandbox != ((void *)0)' failed.
[Thu Mar 28 09:52:32 2013] [notice] child pid 1724 exit signal Aborted (6)
httpd: /usr/src/xcache-2.0.0/utils.c:589: xc_sandbox_error_cb: Assertion `sandbox != ((void *)0)' failed.
[Thu Mar 28 09:55:21 2013] [notice] child pid 1672 exit signal Aborted (6)
httpd: /usr/src/xcache-2.0.0/utils.c:589: xc_sandbox_error_cb: Assertion `sandbox != ((void *)0)' failed.
[Thu Mar 28 09:55:56 2013] [notice] child pid 1471 exit signal Aborted (6)
httpd: /usr/src/xcache-2.0.0/utils.c:589: xc_sandbox_error_cb: Assertion `sandbox != ((void *)0)' failed.
[Thu Mar 28 09:56:49 2013] [notice] child pid 1753 exit signal Aborted (6)
[Thu Mar 28 09:58:29 2013] [notice] child pid 1810 exit signal Segmentation fault (11)
[Thu Mar 28 09:58:29 2013] [notice] child pid 1877 exit signal Segmentation fault (11)
httpd: /usr/src/xcache-2.0.0/utils.c:589: xc_sandbox_error_cb: Assertion `sandbox != ((void *)0)' failed.
[Thu Mar 28 10:01:34 2013] [notice] child pid 1844 exit signal Segmentation fault (11)
[Thu Mar 28 10:01:34 2013] [notice] child pid 1913 exit signal Aborted (6)
[Thu Mar 28 10:01:34 2013] [notice] child pid 1941 exit signal Segmentation fault (11)
[Thu Mar 28 10:01:36 2013] [notice] child pid 2007 exit signal Segmentation fault (11)
[Thu Mar 28 10:01:37 2013] [notice] child pid 2035 exit signal Segmentation fault (11)
[Thu Mar 28 10:01:37 2013] [notice] child pid 2036 exit signal Segmentation fault (11)
Error log for APC before reaching max client (from one restart to other restart):
[Thu Mar 28 19:17:10 2013] [notice] Apache/2.2.24 (Unix) mod_ssl/2.2.24 OpenSSL/1.0.0-fips DAV/2 PHP/5.2.17 configured -- resuming normal operations
[Thu Mar 28 19:21:40 2013] [notice] child pid 1356 exit signal Segmentation fault (11)
[Thu Mar 28 19:22:41 2013] [notice] child pid 1520 exit signal Segmentation fault (11)
[Thu Mar 28 19:22:42 2013] [notice] child pid 1330 exit signal Segmentation fault (11)
[Thu Mar 28 19:22:42 2013] [notice] child pid 1518 exit signal Segmentation fault (11)
[Thu Mar 28 19:22:46 2013] [notice] child pid 1967 exit signal Segmentation fault (11)
[Thu Mar 28 19:22:46 2013] [notice] child pid 1968 exit signal Segmentation fault (11)
[Thu Mar 28 19:22:49 2013] [notice] child pid 1939 exit signal Segmentation fault (11)
[Thu Mar 28 19:22:50 2013] [notice] child pid 2034 exit signal Segmentation fault (11)
[Thu Mar 28 19:22:51 2013] [notice] child pid 2062 exit signal Segmentation fault (11)
[Thu Mar 28 19:22:57 2013] [notice] child pid 2091 exit signal Segmentation fault (11)
[Thu Mar 28 19:22:58 2013] [notice] child pid 2090 exit signal Segmentation fault (11)
[Thu Mar 28 19:25:34 2013] [notice] caught SIGTERM, shutting down
[Thu Mar 28 19:25:37 2013] [notice] SSL FIPS mode disabled
[Thu Mar 28 19:25:37 2013] [warn] RSA server certificate CommonName (CN) `localhost' does NOT match server name!?
[Thu Mar 28 19:25:37 2013] [warn] Init: Name-based SSL virtual hosts only work for clients with TLS server name indication support (RFC 4366)
[Thu Mar 28 19:25:37 2013] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec)
[Thu Mar 28 19:25:38 2013] [notice] SSL FIPS mode disabled
[Thu Mar 28 19:25:38 2013] [warn] RSA server certificate CommonName (CN) `localhost' does NOT match server name!?
[Thu Mar 28 19:25:38 2013] [warn] Init: Name-based SSL virtual hosts only work for clients with TLS server name indication support (RFC 4366)
[Thu Mar 28 19:25:38 2013] [notice] Apache/2.2.24 (Unix) mod_ssl/2.2.24 OpenSSL/1.0.0-fips DAV/2 PHP/5.2.17 configured -- resuming normal operations
Little from PHP Info:
System Linux xxx.xxxxx.com 2.6.32-358.0.1.el6.x86_64 #1 SMP Wed Feb 27 06:06:45 UTC 2013 x86_64
Build Date Mar 17 2013 12:55:14
Configure Command './configure' '--with-apxs2' '--with-curl=/usr/local/lib' '--with-gd' '--with-ttf' '--with-gettext' '--with-jpeg-dir=/usr/local/lib' '--with-freetype-dir=/usr/local/lib' '--with-kerberos' '--with-openssl' '--with-mcrypt' '--with-mhash' '--with-mysql=/usr' '--with-mysqli=/usr/bin/mysql_config' '--with-pdo-mysql=/usr' '--with-pcre-regex=/usr/local' '--with-pear' '--with-png-dir=/usr/local/lib' '--with-xsl' '--with-zlib' '--with-zlib-dir=/usr/local/lib' '--with-iconv=/usr/local' '--enable-bcmath' '--enable-calendar' '--enable-exif' '--enable-ftp' '--enable-gd-native-ttf' '--enable-magic-quotes' '--enable-safe-mode' '--enable-soap' '--enable-sockets' '--enable-mbstring' '--enable-zip' '--enable-wddx'
Server API Apache 2.0 Handler
Virtual Directory Support enabled
Configuration File (php.ini) Path /usr/local/lib
Loaded Configuration File /usr/local/lib/php.ini
Scan this dir for additional .ini files (none)
additional .ini files parsed (none)
PHP API 20041225
PHP Extension 20060613
Zend Extension 220060519
Debug Build no
Thread Safety enabled
Zend Memory Manager enabled
IPv6 Support enabled
Registered PHP Streams https, ftps, compress.zlib, php, file, data, http, ftp, zip
Registered Stream Socket Transports tcp, udp, unix, udg, ssl, sslv3, sslv2, tls
Registered Stream Filters zlib.*, convert.iconv.*, string.rot13, string.toupper, string.tolower, string.strip_tags, convert.*, consumed
APC settings:
enabled
Version 3.1.13
APC Debugging Disabled
MMAP Support Enabled
MMAP File Mask no value
Locking type pthread read/write Locks
Serialization Support php
Revision $Revision: 327136 $
Build Date Mar 28 2013 12:40:18
Php -v:
PHP 5.2.17 (cli) (built: Mar 17 2013 12:55:24)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2010 Zend Technologies
httpd -V:
Server version: Apache/2.2.24 (Unix)
Server built: Mar 10 2013 09:18:00
Server's Module Magic Number: 20051115:31
Server loaded: APR 1.4.6, APR-Util 1.4.1
Compiled using: APR 1.4.6, APR-Util 1.4.1
Architecture: 64-bit
Server MPM: Worker
threaded: yes (fixed thread count)
forked: yes (variable process count)
Server compiled with....
-D APACHE_MPM_DIR="server/mpm/worker"
-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="/etc/httpd"
-D SUEXEC_BIN="/usr/sbin/suexec"
-D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
-D DEFAULT_ERRORLOG="logs/error_log"
-D AP_TYPES_CONFIG_FILE="conf/mime.types"
-D SERVER_CONFIG_FILE="conf/httpd.conf"
Any Idea?! I will reward 50 :)
From the looks of your server status page, you are trying to run PHP as mod_php with a threaded Apache MPM. Many PHP extensions, likely including APC and Xcache, are not thread-safe. As such, they will crash frequently under load.
You will need to switch Apache to the prefork MPM, or run PHP as CGI or FastCGI.

"[notice] child pid XXXX exit signal Segmentation fault (11)" in apache error.log [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 11 years ago.
Improve this question
I am using Apache/PHP/MySQL stack.
Using as framework CakePHP.
Every now and then I get a blank white page. I can't debug it through Cake, so I peek in the apache error.log and here's what I get:
[Wed Oct 12 15:27:23 2011] [notice] child pid 3580 exit signal Segmentation fault (11)
[Wed Oct 12 15:27:34 2011] [notice] child pid 3581 exit signal Segmentation fault (11)
[Wed Oct 12 15:30:52 2011] [notice] child pid 3549 exit signal Segmentation fault (11)
[Wed Oct 12 16:04:27 2011] [notice] child pid 3579 exit signal Segmentation fault (11)
zend_mm_heap corrupted
[Wed Oct 12 16:26:24 2011] [notice] child pid 3625 exit signal Segmentation fault (11)
[Wed Oct 12 17:57:24 2011] [notice] child pid 3577 exit signal Segmentation fault (11)
[Wed Oct 12 17:58:54 2011] [notice] child pid 3550 exit signal Segmentation fault (11)
[Wed Oct 12 17:59:52 2011] [notice] child pid 3578 exit signal Segmentation fault (11)
[Wed Oct 12 18:01:38 2011] [notice] child pid 3683 exit signal Segmentation fault (11)
[Wed Oct 12 22:20:53 2011] [notice] child pid 3778 exit signal Segmentation fault (11)
[Wed Oct 12 22:29:51 2011] [notice] child pid 3777 exit signal Segmentation fault (11)
[Wed Oct 12 22:33:42 2011] [notice] child pid 3774 exit signal Segmentation fault (11)
What is this segmentation fault, and how can I fix it?
UPDATE:
PHP Version 5.3.4, OSX local development
Server version: Apache/2.2.17 (Unix)
CakePhp: 1.3.10
Attach gdb to one of the httpd child processes and reload or continue working and wait for a crash and then look at the backtrace. Do something like this:
$ ps -ef|grep httpd
0 681 1 0 10:38pm ?? 0:00.45 /Applications/MAMP/Library/bin/httpd -k start
501 690 681 0 10:38pm ?? 0:00.02 /Applications/MAMP/Library/bin/httpd -k start
...
Now attach gdb to one of the child processes, in this case PID 690 (columns are UID, PID, PPID, ...)
$ sudo gdb
(gdb) attach 690
Attaching to process 690.
Reading symbols for shared libraries . done
Reading symbols for shared libraries ....................... done
0x9568ce29 in accept$NOCANCEL$UNIX2003 ()
(gdb) c
Continuing.
Wait for crash... then:
(gdb) backtrace
Or
(gdb) backtrace full
Should give you some clue what's going on. If you file a bug report you should include the backtrace.
If the crash is hard to reproduce it may be a good idea to configure Apache to only use one child processes for handling requests. The config is something like this:
StartServers 1
MinSpareServers 1
MaxSpareServers 1
A segementation fault is an internal error in php (or, less likely, apache). Oftentimes, the segmentation fault is caused by one of the newer and lesser-tested php modules such as imagemagick or subversion.
Try disabling all non-essential modules (in php.ini), and then re-enabling them one-by-one until the error occurs. You may also want to update php and apache.
If that doesn't help, you should report a php bug.
Have you tried to increase output_buffering in your php.ini?
What does "zend_mm_heap corrupted" mean?

Categories