php 5.4 (php-fpm) segfault

Простые/общие вопросы по UNIX системам. Спросите здесь, если вы новичок

Модераторы: vadim64, terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
abi
проходил мимо
Сообщения: 9
Зарегистрирован: 2012-08-29 19:48:28

php 5.4 (php-fpm) segfault

Непрочитанное сообщение abi » 2012-08-29 20:01:56

Добрый вечер.

Являюсь новичком в *NIX, но вроде старался читать мануалы и людей по напрасну не отвлекать :) Всё было хорошо, пока я решил не обновиться до PHP 5.4 Даже не сколько решил, а порт сделал это за меня. Тогда я впервые столкнулся с вылетом воркеров на одном пуле. Так как PHP 5.4 меня на тот момент не волновал, он был прибит, а на его место возвращён 5.3

Сейчас я решил присмотреться к PHP 5.4 и поставил его опять. К моему удивлению, segfault вернулся, хотя надежда что его вылечат патчами ПХП была.
Выглядит это вот так:

Код: Выделить всё

[29-Aug-2012 16:45:25] WARNING: [pool www] child 75982 exited on signal 11 (SIGSEGV) after 125.391441 seconds from start
Появляется с вероятностью 50% ка каждой странице сайта (это друпал) после очистки кеша.

Так как желание разрбраться всё-таки было, я сократил количество детей на этом пуле до 1 и прицепил к процессу gdb.

Код: Выделить всё

Program received signal SIGSEGV, Segmentation fault.
0x000000000055d26c in zend_llist_add_element ()
(gdb) bt
#0  0x000000000055d26c in zend_llist_add_element ()
#1  0x000000000044a9db in _php_list_set_error_structure ()
#2  0x0000000801249212 in __xmlRaiseError () from /usr/local/lib/libxml2.so.5
#3  0x0000000801283036 in htmlParseErr () from /usr/local/lib/libxml2.so.5
#4  0x000000080128563d in htmlParseEndTag () from /usr/local/lib/libxml2.so.5
#5  0x000000080128a22a in htmlParseContentInternal () from /usr/local/lib/libxml2.so.5
#6  0x000000080128b0ff in htmlParseDocument () from /usr/local/lib/libxml2.so.5
#7  0x0000000802a72ac0 in dom_load_html () from /usr/local/lib/php/20100525/dom.so
#8  0x0000000000593cc6 in zend_do_fcall_common_helper_SPEC ()
#9  0x00000000005998e3 in execute ()
#10 0x000000000055a74a in zend_call_function ()
#11 0x00000000004952d5 in zif_call_user_func_array ()
#12 0x0000000000593cc6 in zend_do_fcall_common_helper_SPEC ()
#13 0x00000000005998e3 in execute ()
#14 0x0000000000566d0e in zend_execute_scripts ()
#15 0x000000000050a45c in php_execute_script ()
#16 0x00000000006126fa in main ()
Я пересобрал порт libxml2, но без всякого успеха. В make.conf никаких модных вещей нет. Гугл говорит, что, похоже, я один такой уникальный.
Прошу совета куда смотреть дальше.

FREEBSD 9.0-STABLE, стоят последние версии из портов.
Последний раз редактировалось f_andrey 2012-08-29 23:09:46, всего редактировалось 1 раз.
Причина: Автору, выбирайте пожалуйста раздел соответствуюший тематике вашего сообщения.

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35456
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: php 5.4 (php-fpm) segfault

Непрочитанное сообщение Alex Keda » 2012-08-29 23:30:08

pecl-APC стоит?
самый последний - глюкавый.
я на предыдущий везде откатывал...
--
а вообще, приянто список софта публиковвать, uname -a опять же...
а гадать можно до бесконечности
Убей их всех! Бог потом рассортирует...

abi
проходил мимо
Сообщения: 9
Зарегистрирован: 2012-08-29 19:48:28

Re: php 5.4 (php-fpm) segfault

Непрочитанное сообщение abi » 2012-08-30 8:35:06

Не стоит, потому что есть подозрение что во всех версиях те или иные вилы закопаны.

Код: Выделить всё

FreeBSD serpent.is 9.0-STABLE FreeBSD 9.0-STABLE #0: Wed Jul  4 16:15:06 UTC 2012     *******@serpent.is:/usr/obj/usr/src/sys/ECHIDNA  amd64

Код: Выделить всё

root@serpent:/home/abi # pkg_info
apache-ant-1.8.3_1  Java- and XML-based build tool, conceptually similar to mak
apr-devrandom-gdbm-db42-1.4.5.1.3.12_1 Apache Portability Library
autoconf-2.69       Automatically configure source code on many Un*x platforms
autoconf-wrapper-20101119 Wrapper script for GNU autoconf
automake-1.12.2     GNU Standards-compliant Makefile generator
automake-wrapper-20101119 Wrapper script for GNU automake
bigreqsproto-1.1.1  BigReqs extension headers
cmake-2.8.8_1       A cross-platform Makefile generator
cmake-modules-2.8.8 Modules and Templates for CMake
compat7x-amd64-7.3.703000.201008_1 A convenience package to install the compat7x libraries
curl-7.24.0         Non-interactive tool to get files from FTP, GOPHER, HTTP(S)
cyrus-sasl-2.1.25_2 RFC 2222 SASL (Simple Authentication and Security Layer)
db42-4.2.52_5       The Berkeley DB package, revision 4.2
diablo-jdk-1.6.0.07.02_19 Java Development Kit 1.6.0_07.02
expat-2.0.1_2       XML 1.0 parser written in C
freetype2-2.4.9_1   A free and portable TrueType font rendering engine
gawk-4.0.1          The GNU version of Awk
gdb-6.6_2           GNU GDB of newer version than comes with the system
gdbm-1.9.1          The GNU database manager
gettext-0.18.1.1    GNU gettext package
gmake-3.82          GNU version of 'make' utility
help2man-1.40.10    Automatically generating simple manual pages from program o
inputproto-2.0.2    Input extension headers
java-zoneinfo-2012.c Updated Java timezone definitions
javavmwrapper-2.4   Wrapper script for various Java Virtual Machines
jpeg-8_3            IJG's jpeg compression utilities
kbproto-1.0.5       KB extension headers
libICE-1.0.7,1      Inter Client Exchange library for X11
libSM-1.2.0,1       Session Management library for X11
libX11-1.4.4,1      X11 library
libXau-1.0.6        Authentication Protocol library for X11
libXaw-1.0.9,2      X Athena Widgets library
libXdmcp-1.1.0      X Display Manager Control Protocol library
libXext-1.3.0_1,1   X11 Extension library
libXi-1.4.5,1       X Input extension library
libXmu-1.1.0,1      X Miscellaneous Utilities libraries
libXp-1.0.1,1       X print library
libXpm-3.5.9        X Pixmap library
libXt-1.1.1,1       X Toolkit library
libXtst-1.2.0       X Test extension
libcheck-0.9.8      A unit test framework for C
libgcrypt-1.5.0     General purpose crypto library based on code used in GnuPG
libgpg-error-1.10   Common error values for all GnuPG components
libiconv-1.14       A character set conversion library
libpthread-stubs-0.3_3 This library provides weak aliases for pthread functions
libsigsegv-2.10     Handling page faults in user mode
libtool-2.4.2       Generic shared library support script
libxcb-1.7          The X protocol C-language Binding (XCB) library
libxml2-2.7.8_3     XML parser library for GNOME
libxslt-1.1.26_3    The XSLT C library for GNOME
m4-1.4.16_1,1       GNU m4
mc-light-4.1.40.p9_8 A lightweight Midnight Commander clone
mysql-client-5.5.25 Multithreaded SQL database (client)
mysql-server-5.5.25 Multithreaded SQL database (server)
mysqlbackup-2.6     Program to create everyday MySQL-database servers backup
nginx-1.2.3,1       Robust and small WWW server
oniguruma-4.7.1     A BSDL Regular Expressions library compatible with POSIX/GN
openfire-3.7.1_1,1  Enterprise instant messaging server
p5-Locale-gettext-1.05_3 Message handling functions
pcre-8.31           Perl Compatible Regular Expressions library
perl-5.12.4_4       Practical Extraction and Report Language
php5-5.4.6          PHP Scripting Language
php5-ctype-5.4.6    The ctype shared extension for php
php5-curl-5.4.6     The curl shared extension for php
php5-dom-5.4.6      The dom shared extension for php
php5-extensions-1.7 A "meta-port" to install PHP extensions
php5-filter-5.4.6   The filter shared extension for php
php5-gd-5.4.6       The gd shared extension for php
php5-hash-5.4.6     The hash shared extension for php
php5-iconv-5.4.6    The iconv shared extension for php
php5-json-5.4.6     The json shared extension for php
php5-mbstring-5.4.6 The mbstring shared extension for php
php5-mysql-5.4.6    The mysql shared extension for php
php5-mysqli-5.4.6   The mysqli shared extension for php
php5-pdo-5.4.6      The pdo shared extension for php
php5-pdo_mysql-5.4.6 The pdo_mysql shared extension for php
php5-phar-5.4.6     The phar shared extension for php
php5-posix-5.4.6    The posix shared extension for php
php5-session-5.4.6  The session shared extension for php
php5-simplexml-5.4.6 The simplexml shared extension for php
php5-soap-5.4.6     The soap shared extension for php
php5-sockets-5.4.6  The sockets shared extension for php
php5-tokenizer-5.4.6 The tokenizer shared extension for php
php5-xml-5.4.6      The xml shared extension for php
php5-xmlreader-5.4.6 The xmlreader shared extension for php
php5-xmlwriter-5.4.6 The xmlwriter shared extension for php
php5-zip-5.4.6      The zip shared extension for php
php5-zlib-5.4.6     The zlib shared extension for php
pkg_cutleaves-20090810 Interactive script for deinstalling 'leaf' packages
pkgconf-0.8.3       pkg-config compatible utility which does not depend on glib
png-1.5.12          Library for manipulating PNG images
portmanager-0.4.1_9 FreeBSD installed ports status and safe update utility
printproto-1.0.5    Print extension headers
python27-2.7.3_3    An interpreted object-oriented programming language
recordproto-1.14.1  RECORD extension headers
sendmail-8.14.5     Reliable, highly configurable mail transfer agent with util
slf4j-1.5.8_1       Simple facade or abstraction for various logging frameworks
sqlite3-3.7.13      An SQL database engine in a C library
subversion-1.7.5    Version control system
t1lib-5.1.2_1,1     A Type 1 Rasterizer Library for UNIX/X11
teamspeak3-server-3.0.5,1 Server side of the TeamSpeak group voice chat system
unzip-6.0_1         List, test and extract compressed files in a ZIP archive
xextproto-7.2.0     XExt extension headers
xproto-7.0.22       X11 protocol headers
zip-3.0             Create/update ZIP files compatible with PKZIP

root@serpent:/home/abi # cat /usr/local/etc/php/extensions.ini
extension=ctype.so
extension=curl.so
extension=dom.so
extension=filter.so
extension=gd.so
extension=hash.so
extension=iconv.so
extension=json.so
extension=mbstring.so
extension=pdo.so
extension=mysql.so
extension=phar.so
extension=posix.so
extension=session.so
extension=simplexml.so
extension=soap.so
extension=sockets.so
extension=tokenizer.so
extension=xml.so
extension=xmlreader.so
extension=xmlwriter.so
extension=mysqli.so
extension=zip.so
extension=zlib.so
extension=pdo_mysql.so

abi
проходил мимо
Сообщения: 9
Зарегистрирован: 2012-08-29 19:48:28

Re: php 5.4 (php-fpm) segfault

Непрочитанное сообщение abi » 2012-08-31 15:55:57

Тот же протокол при собранным PHP с отдадкой:

Код: Выделить всё

(gdb) continue
Continuing.

Program received signal SIGSEGV, Segmentation fault.
0x0000000000634374 in zend_llist_add_element (l=0x0, element=0x7fffffff9030) at /usr/ports/lang/php5/work/php-5.4.6/Zend/zend_llist.c:39
39              zend_llist_element *tmp = pemalloc(sizeof(zend_llist_element)+l->size-1, l->persistent);
(gdb) bt
#0  0x0000000000634374 in zend_llist_add_element (l=0x0, element=0x7fffffff9030) at /usr/ports/lang/php5/work/php-5.4.6/Zend/zend_llist.c:39
#1  0x0000000000463bd0 in _php_list_set_error_structure (error=0x807c30158, msg=0x0) at /usr/ports/lang/php5/work/php-5.4.6/ext/libxml/libxml.c:485
#2  0x0000000000464a7e in php_libxml_structured_error_handler (userData=0x0, error=0x807c30158)
    at /usr/ports/lang/php5/work/php-5.4.6/ext/libxml/libxml.c:716
#3  0x00000008013ef3c2 in __xmlRaiseError () from /usr/local/lib/libxml2.so.5
#4  0x00000008014292c6 in htmlParseErr () from /usr/local/lib/libxml2.so.5
#5  0x000000080142b8cd in htmlParseEndTag () from /usr/local/lib/libxml2.so.5
#6  0x0000000801430a5a in htmlParseContentInternal () from /usr/local/lib/libxml2.so.5
#7  0x0000000801431d18 in htmlParseDocument () from /usr/local/lib/libxml2.so.5
#8  0x0000000802c7a3b1 in dom_load_html () from /usr/local/lib/php/20100525-debug/dom.so
#9  0x0000000802c7a5fb in zim_domdocument_loadHTML () from /usr/local/lib/php/20100525-debug/dom.so
#10 0x00000000006826cc in zend_do_fcall_common_helper_SPEC (execute_data=0x807e4ad90) at /usr/ports/lang/php5/work/php-5.4.6/Zend/zend_vm_execute.h:642
#11 0x00000000006838a5 in ZEND_DO_FCALL_BY_NAME_SPEC_HANDLER (execute_data=0x807e4ad90) at /usr/ports/lang/php5/work/php-5.4.6/Zend/zend_vm_execute.h:752
#12 0x0000000000680ef1 in execute (op_array=0x80848e800) at /usr/ports/lang/php5/work/php-5.4.6/Zend/zend_vm_execute.h:410
#13 0x00000000006316dd in zend_call_function (fci=0x7fffffff9c00, fci_cache=0x7fffffff9bd0)
    at /usr/ports/lang/php5/work/php-5.4.6/Zend/zend_execute_API.c:958
#14 0x00000000004ceb2a in zif_call_user_func_array (ht=2, return_value=0x807e1c5c0, return_value_ptr=0x0, this_ptr=0x0, return_value_used=1)
    at /usr/ports/lang/php5/work/php-5.4.6/ext/standard/basic_functions.c:4749
#15 0x00000000006826cc in zend_do_fcall_common_helper_SPEC (execute_data=0x807e43a70) at /usr/ports/lang/php5/work/php-5.4.6/Zend/zend_vm_execute.h:642
#16 0x000000000068a00b in ZEND_DO_FCALL_SPEC_CONST_HANDLER (execute_data=0x807e43a70) at /usr/ports/lang/php5/work/php-5.4.6/Zend/zend_vm_execute.h:2219
#17 0x0000000000680ef1 in execute (op_array=0x808b48500) at /usr/ports/lang/php5/work/php-5.4.6/Zend/zend_vm_execute.h:410
#18 0x00000000006459ea in zend_execute_scripts (type=8, retval=0x0, file_count=3) at /usr/ports/lang/php5/work/php-5.4.6/Zend/zend.c:1289
#19 0x00000000005b9c93 in php_execute_script (primary_file=0x7fffffffd980) at /usr/ports/lang/php5/work/php-5.4.6/main/main.c:2473
#20 0x000000000079eeda in main (argc=1, argv=0x7fffffffdb10) at /usr/ports/lang/php5/work/php-5.4.6/sapi/fpm/fpm/fpm_main.c:1902
(gdb) frame 12
#12 0x0000000000680ef1 in execute (op_array=0x80848e800) at /usr/ports/lang/php5/work/php-5.4.6/Zend/zend_vm_execute.h:410
410                     if ((ret = OPLINE->handler(execute_data TSRMLS_CC)) > 0) {
Какой вывод? Пытать счастье в багтрекере PHP ? У меня по-прежнему нет простого кода вопроизведения.

Аватара пользователя
FreeBSP
майор
Сообщения: 2020
Зарегистрирован: 2009-05-24 20:20:19
Откуда: Москва

Re: php 5.4 (php-fpm) segfault

Непрочитанное сообщение FreeBSP » 2012-09-01 23:34:24

немного не в тему
какое у вас время генерации страницы друпала и потребляемая память?
Человек начинает получать первые наслаждения от знакомства с unix системами. Ему нужно помочь - дальше он сможет получать наслаждение самостоятельно ©
Ламер — не желающий самостоятельно разбираться. Не путать с новичком: ламер опасен и знает это!

abi
проходил мимо
Сообщения: 9
Зарегистрирован: 2012-08-29 19:48:28

Re: php 5.4 (php-fpm) segfault

Непрочитанное сообщение abi » 2012-09-04 10:15:40

Никогда не интересовался этим. Мощность сервера >> нагрузки на друпал и я кеши и т.п. даже не настраивал. Но это не повод валить PHP :-)

harmless
лейтенант
Сообщения: 719
Зарегистрирован: 2007-08-23 10:56:51
Откуда: Украина, г. Киев, г. Белая Церковь
Контактная информация:

Re: php 5.4 (php-fpm) segfault

Непрочитанное сообщение harmless » 2012-09-09 1:18:32

php -v
php -m
cat /usr/local/etc/php/extensions.ini

abi
проходил мимо
Сообщения: 9
Зарегистрирован: 2012-08-29 19:48:28

Re: php 5.4 (php-fpm) segfault

Непрочитанное сообщение abi » 2012-09-10 11:52:00

Код: Выделить всё

root@serpent:/home/abi # php -v
PHP 5.4.6 (cli) (built: Sep  5 2012 18:59:16)
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2012 Zend Technologies

root@serpent:/home/abi # php -m
[PHP Modules]
Core
ctype
curl
date
dom
ereg
filter
gd
hash
iconv
json
libxml
mbstring
mhash
mysql
mysqli
mysqlnd
openssl
pcre
PDO
pdo_mysql
Phar
posix
Reflection
session
SimpleXML
soap
sockets
SPL
standard
tokenizer
xml
xmlreader
xmlwriter
zip
zlib

root@serpent:/home/abi # cat /usr/local/etc/php/extensions.ini
extension=ctype.so
extension=filter.so
extension=gd.so
extension=hash.so
extension=iconv.so
extension=json.so
extension=mbstring.so
extension=pdo.so
extension=mysql.so
extension=phar.so
extension=posix.so
extension=session.so
extension=sockets.so
extension=tokenizer.so
extension=mysqli.so
extension=zip.so
extension=zlib.so
extension=pdo_mysql.so
extension=openssl.so
extension=curl.so
extension=dom.so
extension=simplexml.so
extension=soap.so
extension=xml.so
extension=xmlreader.so
extension=xmlwriter.so