Bug #70249 [NEW]: Segmentation fault while running PHPUnit tests on phpBB 3.2-dev
| From: | rxu at mail dot ru | Date: | Wed, 12 Aug 2015 16:54:24 +0000 |
| Subject: | Bug #70249 [NEW]: Segmentation fault while running PHPUnit tests on phpBB 3.2-dev | ||
| Groups: | php.bugs | ||
| Request: | Send a blank email to php-bugs+get-195159@lists.php.net to get a copy of this message | ||
From: rxu at mail dot ru
Operating system: Ubuntu Linux v.15.04 64 bit
PHP version: 7.0.0beta3
Package: Date/time related
Bug Type: Bug
Bug description:Segmentation fault while running PHPUnit tests on phpBB 3.2-dev
Description:
------------
Installed on Ubuntu 15.04/64bit:
PHP 7.0.0-dev (cli) (built: Aug 10 2015 19:09:38)
Copyright (c) 1997-2015 The PHP Group
Zend Engine v3.0.0-dev, Copyright (c) 1998-2015 Zend Technologies
Configure line:
'./configure' '--prefix=/usr/local/php7'
'--with-config-file-path=/usr/local/php7/etc'
'--with-config-file-scan-dir=/usr/local/php7/etc/conf.d'
'--enable-mbstring' '--enable-zip' '--enable-bcmath'
'--enable-pcntl'
'--enable-ftp' '--enable-exif' '--enable-calendar'
'--enable-sysvmsg'
'--enable-sysvsem' '--enable-sysvshm' '--enable-wddx'
'--with-curl'
'--with-mcrypt' '--with-iconv' '--with-gmp=/usr'
'--with-pspell'
'--with-gd' '--with-jpeg-dir=/usr' '--with-png-dir=/usr'
'--with-zlib-dir=/usr' '--with-xpm-dir=/usr'
'--with-freetype-dir=/usr'
'--enable-gd-native-ttf' '--enable-gd-jis-conv' '--with-openssl'
'--with-mysql=/usr' '--with-pdo-mysql=/usr' '--with-gettext=/usr'
'--with-zlib=/usr' '--with-bz2=/usr' '--with-recode=/usr'
'--with-mysqli=/usr/bin/mysql_config' '--enable-fpm' '--enable-intl'
'--enable-soap' '--without-pear' '--with-apxs2=/usr/bin/apxs2'
'--with-libdir=/lib/x86_64-linux-gnu'
phpunit --version
PHPUnit 4.1.6 by Sebastian Bergmann.
(switching to the latest PHPUnit version doesn't solve the problem).
date.timezone is not set in php.ini.
gdb backtrace:
#0 zend_mm_alloc_small (size=<optimized out>, bin_num=0,
heap=0x7fffece00040) at /usr/local/src/php/Zend/zend_alloc.c:1271
#1 zend_mm_alloc_heap (size=<optimized out>, heap=0x7fffece00040) at
/usr/local/src/php/Zend/zend_alloc.c:1338
#2 zend_mm_realloc_heap (heap=0x7fffece00040, ptr=0x7fffe7ad9200,
size=<optimized out>, copy_size=8) at
/usr/local/src/php/Zend/zend_alloc.c:1601
#3 0x000000000081ada4 in pass_two (op_array=0x7fffe913f6a8) at
/usr/local/src/php/Zend/zend_opcode.c:588
#4 0x0000000000813fc1 in zend_compile_func_decl
(result=result@entry=0x0, ast=ast@entry=0x7fffe641d2e8) at
/usr/local/src/php/Zend/zend_compile.c:4838
#5 0x000000000081211a in zend_compile_stmt (ast=0x7fffe641d2e8) at
/usr/local/src/php/Zend/zend_compile.c:7017
#6 0x0000000000812967 in zend_compile_stmt_list
(ast=ast@entry=0x7fffe641d078) at
/usr/local/src/php/Zend/zend_compile.c:4289
#7 0x0000000000811f9e in zend_compile_stmt
(ast=ast@entry=0x7fffe641d078) at
/usr/local/src/php/Zend/zend_compile.c:6961
#8 0x0000000000812c9d in zend_compile_class_decl
(ast=ast@entry=0x7fffe641d6e8) at
/usr/local/src/php/Zend/zend_compile.c:5234
#9 0x00000000008120b8 in zend_compile_stmt
(ast=ast@entry=0x7fffe641d6e8) at
/usr/local/src/php/Zend/zend_compile.c:7029
#10 0x00000000008142ba in zend_compile_top_stmt (ast=0x7fffe641d6e8) at
/usr/local/src/php/Zend/zend_compile.c:6935
#11 0x00000000008142ff in zend_compile_top_stmt (ast=0x7fffe641d018) at
/usr/local/src/php/Zend/zend_compile.c:6930
#12 0x00000000007effe6 in compile_file (file_handle=<optimized out>,
type=<optimized out>) at Zend/zend_language_scanner.l:607
#13 0x00000000006a9e0f in phar_compile_file (file_handle=<optimized
out>, type=<optimized out>) at /usr/local/src/php/ext/phar/phar.c:3311
#14 0x00000000007f00f5 in compile_filename (type=2,
filename=filename@entry=0x7fffece17cc0) at
Zend/zend_language_scanner.l:647
#15 0x00000000008a7f27 in ZEND_INCLUDE_OR_EVAL_SPEC_CV_HANDLER () at
/usr/local/src/php/Zend/zend_vm_execute.h:29036
#16 0x000000000086318b in execute_ex (ex=<optimized out>) at
/usr/local/src/php/Zend/zend_vm_execute.h:406
#17 0x0000000000817643 in zend_call_function
(fci=fci@entry=0x7fffffffa790, fci_cache=0x7fffece6aa40,
fci_cache@entry=0x7fffffffa760) at
/usr/local/src/php/Zend/zend_execute_API.c:852
#18 0x0000000000842904 in zend_call_method (object=0x7fffecee0488,
obj_ce=<optimized out>, fn_proxy=0x7fffecee0480,
function_name=0x7fffecefc9c8
"composer\\autoload\\classloader::loadclass\001",
function_name_len=<optimized out>, retval_ptr=retval_ptr@entry=0x0,
param_count=param_count@entry=1, arg1=0x7fffece17ba0,
arg2=arg2@entry=0x0) at /usr/local/src/php/Zend/zend_interfaces.c:104
#19 0x00000000007135e0 in zif_spl_autoload_call (execute_data=<optimized
out>, return_value=<optimized out>) at
/usr/local/src/php/ext/spl/php_spl.c:425
#20 0x00000000008176bc in zend_call_function
(fci=fci@entry=0x7fffffffa9e0, fci_cache=fci_cache@entry=0x7fffffffa9b0)
at /usr/local/src/php/Zend/zend_execute_API.c:871
#21 0x0000000000817cf2 in zend_lookup_class_ex
(name=name@entry=0x7fffecebd5a0, key=0x7fffec2134f0,
use_autoload=use_autoload@entry=1) at
/usr/local/src/php/Zend/zend_execute_API.c:1034
#22 0x0000000000818668 in zend_fetch_class_by_name
(class_name=0x7fffecebd5a0, key=<optimized out>,
fetch_type=fetch_type@entry=512) at
/usr/local/src/php/Zend/zend_execute_API.c:1381
#23 0x00000000008a90f3 in ZEND_NEW_SPEC_CONST_HANDLER () at
/usr/local/src/php/Zend/zend_vm_execute.h:3345
#24 0x000000000086318b in execute_ex (ex=<optimized out>) at
/usr/local/src/php/Zend/zend_vm_execute.h:406
#25 0x0000000000817643 in zend_call_function
(fci=fci@entry=0x7fffffffac60, fci_cache=0x7fffecff79e0,
fci_cache@entry=0x7fffffffac30) at
/usr/local/src/php/Zend/zend_execute_API.c:852
#26 0x00000000006c5290 in zim_reflection_method_invokeArgs
(execute_data=<optimized out>, return_value=0x7fffece171a0) at
/usr/local/src/php/ext/reflection/php_reflection.c:3365
#27 0x00000000008ac5bb in ZEND_DO_FCALL_SPEC_HANDLER () at
/usr/local/src/php/Zend/zend_vm_execute.h:835
#28 0x000000000086318b in execute_ex (ex=<optimized out>) at
/usr/local/src/php/Zend/zend_vm_execute.h:406
#29 0x00000000008afa5f in zend_execute
(op_array=op_array@entry=0x7fffece80000,
return_value=return_value@entry=0x0) at
/usr/local/src/php/Zend/zend_vm_execute.h:450
#30 0x0000000000825ede in zend_execute_scripts (type=type@entry=8,
retval=retval@entry=0x0, file_count=file_count@entry=3) at
/usr/local/src/php/Zend/zend.c:1404
#31 0x00000000007c8980 in php_execute_script
(primary_file=primary_file@entry=0x7fffffffd1f0) at
/usr/local/src/php/main/main.c:2475
#32 0x00000000008b12d3 in do_cli (argc=2, argv=0x11a2ce0) at
/usr/local/src/php/sapi/cli/php_cli.c:971
#33 0x000000000044a370 in main (argc=2, argv=0x11a2ce0) at
/usr/local/src/php/sapi/cli/php_cli.c:1338
Actual result:
--------------
There's no actual test script but a set of unit tests, from the phpBB
development repository: https://github.com/phpbb/phpbb/tree/master
Tests failed with the segmentation fault here:
https://travis-ci.org/phpbb/phpbb/jobs/75044512#L627
Later the cause was tracked down to the datetime test here
https://github.com/phpbb/phpbb/blob/179a4700221aa49071b07d638c44b9326c7a14a8/tests/datetime/from_format_test.php#L109-L133
and the issue was fixed by adding the following line to the test case:
date_default_timezone_set('Europe/Paris');
See
https://github.com/phpbb/phpbb/commit/df334b1da8049c57c09eb052313c0e4d869f6cce
Adding date_default_timezone_set('UTC'); didn't solve the problem.
If you then try (additionally to the date_default_timezone_set()) to set
the date.timezone php.ini value, segmentation fault is back.
--
Edit bug report at https://bugs.php.net/bug.php?id=70249&edit=1
--
Try a snapshot (PHP 5.4): https://bugs.php.net/fix.php?id=70249&r=trysnapshot54
Try a snapshot (PHP 5.5): https://bugs.php.net/fix.php?id=70249&r=trysnapshot55
Try a snapshot (trunk): https://bugs.php.net/fix.php?id=70249&r=trysnapshottrunk
Fixed in SVN: https://bugs.php.net/fix.php?id=70249&r=fixed
Fixed in release: https://bugs.php.net/fix.php?id=70249&r=alreadyfixed
Need backtrace: https://bugs.php.net/fix.php?id=70249&r=needtrace
Need Reproduce Script: https://bugs.php.net/fix.php?id=70249&r=needscript
Try newer version: https://bugs.php.net/fix.php?id=70249&r=oldversion
Not developer issue: https://bugs.php.net/fix.php?id=70249&r=support
Expected behavior: https://bugs.php.net/fix.php?id=70249&r=notwrong
Not enough info: https://bugs.php.net/fix.php?id=70249&r=notenoughinfo
Submitted twice: https://bugs.php.net/fix.php?id=70249&r=submittedtwice
register_globals: https://bugs.php.net/fix.php?id=70249&r=globals
PHP 4 support discontinued: https://bugs.php.net/fix.php?id=70249&r=php4
Daylight Savings: https://bugs.php.net/fix.php?id=70249&r=dst
IIS Stability: https://bugs.php.net/fix.php?id=70249&r=isapi
Install GNU Sed: https://bugs.php.net/fix.php?id=70249&r=gnused
Floating point limitations: https://bugs.php.net/fix.php?id=70249&r=float
No Zend Extensions: https://bugs.php.net/fix.php?id=70249&r=nozend
MySQL Configuration Error: https://bugs.php.net/fix.php?id=70249&r=mysqlcfg