2015-08-23 3 views
3

J'ai un problème avec php5-fpm. Très souvent, il obtient un segfault et bloque tout le traitement php, donc aucune réponse n'est servie au client. Pour moi, le backtrace ressemble à une boucle infinie, mais je ne vois pas si c'est un script ou un module php interne.Erreur de segfault PHP-FPM 6

Y a-t-il une chance de voir quel script/module est impliqué?

Le Segfault est toujours à la recherche comme ça (dmesg):

php5-fpm[1858]: segfault at 7fffa4de4fa0 ip 0000000000691515 sp 00007fffa4de4f90 error 6 in php5-fpm[400000+800000] 

PHP Version:

php -v 
PHP 5.5.9-1ubuntu4.11 (cli) (built: Jul 2 2015 15:23:08) 
Copyright (c) 1997-2014 The PHP Group 
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies 
    with Zend OPcache v7.0.3, Copyright (c) 1999-2014, by Zend Technologies 

Backtrace de Coredump:

(gdb) bt 
#0 0x0000000000691515 in ??() 
#1 0x0000000000692a64 in vspprintf() 
#2 0x0000000000707359 in zend_spprintf() 
#3 0x00000000006e4a46 in _convert_to_string() 
#4 0x0000000000725859 in ??() 
#5 0x0000000000717668 in execute_ex() 
#6 0x00000000006dd7c9 in dtrace_execute_ex() 
#7 0x000000000079df80 in ??() 
#8 0x0000000000717668 in execute_ex() 
#9 0x00000000006dd7c9 in dtrace_execute_ex() 
#10 0x000000000079df80 in ??() 
#11 0x0000000000717668 in execute_ex() 
#12 0x00000000006dd7c9 in dtrace_execute_ex() 
#13 0x000000000079df80 in ??() 
#14 0x0000000000717668 in execute_ex() 
#15 0x00000000006dd7c9 in dtrace_execute_ex() 
#16 0x000000000079df80 in ??() 
#17 0x0000000000717668 in execute_ex() 
#18 0x00000000006dd7c9 in dtrace_execute_ex() 
#19 0x000000000079df80 in ??() 
#20 0x0000000000717668 in execute_ex() 
#21 0x00000000006dd7c9 in dtrace_execute_ex() 
#22 0x000000000079df80 in ??() 
#23 0x0000000000717668 in execute_ex() 
#24 0x00000000006dd7c9 in dtrace_execute_ex() 
#25 0x000000000079df80 in ??() 
#26 0x0000000000717668 in execute_ex() 
#27 0x00000000006dd7c9 in dtrace_execute_ex() 
#28 0x000000000079df80 in ??() 
#29 0x0000000000717668 in execute_ex() 
#30 0x00000000006dd7c9 in dtrace_execute_ex() 
#31 0x000000000079df80 in ??() 
#32 0x0000000000717668 in execute_ex() 
#33 0x00000000006dd7c9 in dtrace_execute_ex() 
#34 0x000000000079df80 in ??() 
#35 0x0000000000717668 in execute_ex() 
#36 0x00000000006dd7c9 in dtrace_execute_ex() 
#37 0x000000000079df80 in ??() 
#38 0x0000000000717668 in execute_ex() 
#39 0x00000000006dd7c9 in dtrace_execute_ex() 
#40 0x000000000079df80 in ??() 
#41 0x0000000000717668 in execute_ex() 
#42 0x00000000006dd7c9 in dtrace_execute_ex() 
#43 0x000000000079df80 in ??() 
#44 0x0000000000717668 in execute_ex() 
#45 0x00000000006dd7c9 in dtrace_execute_ex() 
#46 0x000000000079df80 in ??() 
(...) 
#68150 0x0000000000717668 in execute_ex() 
#68151 0x00000000006dd7c9 in dtrace_execute_ex() 
#68152 0x000000000079df80 in ??() 
#68153 0x0000000000717668 in execute_ex() 
#68154 0x00000000006dd7c9 in dtrace_execute_ex() 
#68155 0x000000000079df80 in ??() 
#68156 0x0000000000717668 in execute_ex() 
#68157 0x00000000006dd7c9 in dtrace_execute_ex() 
#68158 0x000000000079cec1 in ??() 
#68159 0x0000000000717668 in execute_ex() 
#68160 0x00000000006dd7c9 in dtrace_execute_ex() 
#68161 0x00000000006ef250 in zend_execute_scripts() 
#68162 0x000000000068f065 in php_execute_script() 
#68163 0x0000000000463b00 in main() 

Backtrace obtenir Nom du fichier:

(gdb) print (char *)executor_globals.active_op_array->filename 
Attempt to extract a component of a value that is not a structure. 

packages installés:

dpkg -l | grep php 
ii php5-apcu       4.0.2-2build1      amd64  APC User Cache for PHP 5 
ii php5-cli       5.5.9+dfsg-1ubuntu4.11    amd64  command-line interpreter for the php5 scripting language 
ii php5-common       5.5.9+dfsg-1ubuntu4.11    amd64  Common files for packages built from the php5 source 
ii php5-curl       5.5.9+dfsg-1ubuntu4.11    amd64  CURL module for php5 
ii php5-fpm       5.5.9+dfsg-1ubuntu4.11    amd64  server-side, HTML-embedded scripting language (FPM-CGI binary) 
ii php5-gd        5.5.9+dfsg-1ubuntu4.11    amd64  GD module for php5 
ii php5-json       1.3.2-2build1      amd64  JSON module for php5 
ii php5-mcrypt       5.4.6-0ubuntu5      amd64  MCrypt module for php5 
ii php5-mysqlnd      5.5.9+dfsg-1ubuntu4.11    amd64  MySQL module for php5 (Native Driver) 
ii php5-readline      5.5.9+dfsg-1ubuntu4.11    amd64  Readline module for php5 
+0

[PHP info] (http://pastebin.com/raw.php?i=Z4P6vQji) –

Répondre

0

APC est compatible avec PHP 5.5. Vous devriez le désactiver. Cependant, Opcache est inclus, vous pouvez donc l'utiliser à la place. Je ne suis pas sûr si cela va résoudre votre problème, mais pourrait très bien être le coupable.

D'autres éléments peuvent également vous aider: quand la segfault se produit-elle? Quand le processus commence? Ou quand une demande est faite?

+0

C'est le module de cache utilisateur d'APC qu'il a installé, pas l'opcache. – redburn