Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

php71 mongoDB ext crashing php #681

Closed
aleksandardragojlovic opened this issue Nov 30, 2017 · 24 comments
Closed

php71 mongoDB ext crashing php #681

aleksandardragojlovic opened this issue Nov 30, 2017 · 24 comments

Comments

@aleksandardragojlovic
Copy link

aleksandardragojlovic commented Nov 30, 2017

Description

I have created an issue: https://github.com/Homebrew/homebrew-php/issues/4607 . Andreas told me to create new issue here, since it doesn't seem to be a problem specific to homebrew.

After I install php71-mongodb my php stop working.

I have installed on clean system (High Sierra) php71 with necessary extensions. When I install mongoDB my php stop working. In system.log I see segmentation errors. When I uninstall mongoDB php ext. everything is working correctly.

➜ brew doctor
Your system is ready to brew.

➜ brew list -la
total 0
drwxrwxr-x 67 aleksandar admin 2144 28 Nov 22:55 .
drwxr-xr-x 14 root wheel 448 26 Nov 19:29 ..
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:13 apr
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:13 apr-util
drwxr-xr-x 3 aleksandar admin 96 26 Nov 19:38 autoconf
drwxr-xr-x 3 aleksandar admin 96 26 Nov 19:38 automake
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:14 boost
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:13 c-ares
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:43 colordiff
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:54 composer
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:43 curl
drwxr-xr-x 3 aleksandar admin 96 26 Nov 19:49 fontconfig
drwxr-xr-x 3 aleksandar admin 96 26 Nov 19:49 freetype
drwxr-xr-x 3 aleksandar admin 96 26 Nov 19:50 gd
drwxr-xr-x 3 aleksandar admin 96 26 Nov 19:37 gdbm
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:38 geoip
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:13 gettext
drwxr-xr-x 3 aleksandar admin 96 26 Nov 19:37 git
drwxr-xr-x 3 aleksandar admin 96 28 Nov 11:55 httpd
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:43 icoutils
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:13 icu4c
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:39 imagemagick
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:13 jansson
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:14 jemalloc
drwxr-xr-x 3 aleksandar admin 96 26 Nov 19:49 jpeg
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:13 libev
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:13 libevent
drwxr-xr-x 3 aleksandar admin 96 26 Nov 19:49 libpng
drwxr-xr-x 3 aleksandar admin 96 28 Nov 11:17 libsodium
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:39 libssh2
drwxr-xr-x 3 aleksandar admin 96 26 Nov 19:50 libtiff
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:13 libtool
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:13 libxml2
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:39 libyaml
drwxr-xr-x 3 aleksandar admin 96 28 Nov 09:59 lynx
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:39 mcrypt
drwxr-xr-x 3 aleksandar admin 96 26 Nov 19:38 mercurial
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:39 mhash
drwxr-xr-x 3 aleksandar admin 96 28 Nov 22:55 mongodb
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:50 mysql
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:14 nghttp2
drwxr-xr-x 3 aleksandar admin 96 28 Nov 10:54 nmap
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:54 node
drwxr-xr-x 3 aleksandar admin 96 26 Nov 19:37 openssl
drwxr-xr-x 3 aleksandar admin 96 26 Nov 19:37 openssl@1.1
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:14 pcre
drwxr-xr-x 3 aleksandar admin 96 28 Nov 11:30 php71
drwxr-xr-x 3 aleksandar admin 96 28 Nov 11:37 php71-geoip
drwxr-xr-x 3 aleksandar admin 96 28 Nov 11:37 php71-imagick
drwxr-xr-x 3 aleksandar admin 96 28 Nov 11:38 php71-intl
drwxr-xr-x 3 aleksandar admin 96 28 Nov 11:38 php71-mcrypt
drwxr-xr-x 3 aleksandar admin 96 28 Nov 22:49 php71-mongodb
drwxr-xr-x 3 aleksandar admin 96 28 Nov 11:38 php71-ssh2
drwxr-xr-x 3 aleksandar admin 96 28 Nov 11:38 php71-tidy
drwxr-xr-x 3 aleksandar admin 96 28 Nov 11:38 php71-yaml
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:39 pkg-config
drwxr-xr-x 3 aleksandar admin 96 26 Nov 19:38 python
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:44 rbenv
drwxr-xr-x 3 aleksandar admin 96 26 Nov 19:37 readline
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:44 ruby-build
drwxr-xr-x 3 aleksandar admin 96 26 Nov 19:37 sqlite
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:39 tidy-html5
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:13 unixodbc
drwxr-xr-x 3 aleksandar admin 96 26 Nov 19:50 webp
drwxr-xr-x 3 aleksandar admin 96 26 Nov 19:37 wget
drwxr-xr-x 3 aleksandar admin 96 26 Nov 20:39 xz
drwxr-xr-x 3 aleksandar admin 96 26 Nov 19:50 zlib

Environment

macOS High Sierra 10.13.1 (17B1002)

PHP installed via homebrew. In formula, I believe it uses pecl to install mongodb.

PHP 7.1.11 (cli) (built: Nov 28 2017 11:35:47) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies

php -i

➜  ~ php -i
phpinfo()
PHP Version => 7.1.11

System => Darwin Aleksandars-MacBook-Pro.local 17.2.0 Darwin Kernel Version 17.2.0: Fri Sep 29 18:27:05 PDT 2017; root:xnu-4570.20.62~3/RELEASE_X86_64 x86_64
Build Date => Nov 28 2017 11:34:37
Configure Command =>  './configure'  '--prefix=/usr/local/Cellar/php71/7.1.11_22' '--localstatedir=/usr/local/var' '--sysconfdir=/usr/local/etc/php/7.1' '--with-config-file-path=/usr/local/etc/php/7.1' '--with-config-file-scan-dir=/usr/local/etc/php/7.1/conf.d' '--mandir=/usr/local/Cellar/php71/7.1.11_22/share/man' '--enable-bcmath' '--enable-calendar' '--enable-dba' '--enable-exif' '--enable-ftp' '--enable-gd-native-ttf' '--enable-mbregex' '--enable-mbstring' '--enable-shmop' '--enable-soap' '--enable-sockets' '--enable-sysvmsg' '--enable-sysvsem' '--enable-sysvshm' '--enable-wddx' '--enable-zip' '--with-freetype-dir=/usr/local/opt/freetype' '--with-gd' '--with-gettext=/usr/local/opt/gettext' '--with-iconv-dir=/usr' '--with-icu-dir=/usr/local/opt/icu4c' '--with-jpeg-dir=/usr/local/opt/jpeg' '--with-kerberos=/usr' '--with-mhash' '--with-ndbm=/usr' '--with-png-dir=/usr/local/opt/libpng' '--with-xmlrpc' '--with-zlib=/usr' '--with-readline=/usr/local/opt/readline' '--without-gmp' '--without-snmp' '--with-libxml-dir=/usr/local/opt/libxml2' '--with-pdo-odbc=unixODBC,/usr/local/opt/unixodbc' '--with-unixODBC=/usr/local/opt/unixodbc' '--with-apxs2=/usr/local/bin/apxs' '--libexecdir=/usr/local/Cellar/php71/7.1.11_22/libexec' '--with-bz2=/usr' '--with-openssl=/usr/local/opt/openssl' '--enable-fpm' '--with-fpm-user=_www' '--with-fpm-group=_www' '--with-curl' '--with-xsl=/usr' '--with-ldap' '--with-ldap-sasl=/usr' '--with-mysql-sock=/tmp/mysql.sock' '--with-mysqli=mysqlnd' '--with-pdo-mysql=mysqlnd' '--disable-opcache' '--enable-pcntl' '--without-pear' '--enable-dtrace' '--disable-phpdbg' '--enable-zend-signals'
Server API => Command Line Interface
Virtual Directory Support => disabled
Configuration File (php.ini) Path => /usr/local/etc/php/7.1
Loaded Configuration File => /usr/local/etc/php/7.1/php.ini
Scan this dir for additional .ini files => /usr/local/etc/php/7.1/conf.d
Additional .ini files parsed => /usr/local/etc/php/7.1/conf.d/ext-geoip.ini,
/usr/local/etc/php/7.1/conf.d/ext-imagick.ini,
/usr/local/etc/php/7.1/conf.d/ext-intl.ini,
/usr/local/etc/php/7.1/conf.d/ext-ssh2.ini,
/usr/local/etc/php/7.1/conf.d/ext-tidy.ini,
/usr/local/etc/php/7.1/conf.d/ext-yaml.ini

PHP API => 20160303
PHP Extension => 20160303
Zend Extension => 320160303
Zend Extension Build => API320160303,NTS
PHP Extension Build => API20160303,NTS
Debug Build => no
Thread Safety => disabled
Zend Signal Handling => enabled
Zend Memory Manager => enabled
Zend Multibyte Support => provided by mbstring
IPv6 Support => enabled
DTrace Support => available, disabled

Registered PHP Streams => https, ftps, compress.zlib, compress.bzip2, php, file, glob, data, http, ftp, phar, zip, ssh2.shell, ssh2.exec, ssh2.tunnel, ssh2.scp, ssh2.sftp
Registered Stream Socket Transports => tcp, udp, unix, udg, ssl, sslv3, tls, tlsv1.0, tlsv1.1, tlsv1.2
Registered Stream Filters => zlib.*, bzip2.*, convert.iconv.*, string.rot13, string.toupper, string.tolower, string.strip_tags, convert.*, consumed, dechunk

This program makes use of the Zend Scripting Language Engine:
Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies

 _______________________________________________________________________


Configuration

bcmath

BCMath support => enabled

Directive => Local Value => Master Value
bcmath.scale => 0 => 0

bz2

BZip2 Support => Enabled
Stream Wrapper support => compress.bzip2://
Stream Filter support => bzip2.decompress, bzip2.compress
BZip2 Version => 1.0.6, 6-Sept-2010

calendar

Calendar support => enabled

Core

PHP Version => 7.1.11

Directive => Local Value => Master Value
allow_url_fopen => On => On
allow_url_include => Off => Off
arg_separator.input => & => &
arg_separator.output => & => &
auto_append_file => no value => no value
auto_globals_jit => On => On
auto_prepend_file => no value => no value
browscap => no value => no value
default_charset => UTF-8 => UTF-8
default_mimetype => text/html => text/html
disable_classes => no value => no value
disable_functions => no value => no value
display_errors => STDOUT => STDOUT
display_startup_errors => On => On
doc_root => no value => no value
docref_ext => no value => no value
docref_root => no value => no value
enable_dl => Off => Off
enable_post_data_reading => On => On
error_append_string => no value => no value
error_log => no value => no value
error_prepend_string => no value => no value
error_reporting => 32767 => 32767
expose_php => On => On
extension_dir => /usr/local/Cellar/php71/7.1.11_22/lib/php/extensions/no-debug-non-zts-20160303 => /usr/local/Cellar/php71/7.1.11_22/lib/php/extensions/no-debug-non-zts-20160303
file_uploads => On => On
hard_timeout => 2 => 2
highlight.comment => <font style="color: #FF8000">#FF8000</font> => <font style="color: #FF8000">#FF8000</font>
highlight.default => <font style="color: #0000BB">#0000BB</font> => <font style="color: #0000BB">#0000BB</font>
highlight.html => <font style="color: #000000">#000000</font> => <font style="color: #000000">#000000</font>
highlight.keyword => <font style="color: #007700">#007700</font> => <font style="color: #007700">#007700</font>
highlight.string => <font style="color: #DD0000">#DD0000</font> => <font style="color: #DD0000">#DD0000</font>
html_errors => Off => Off
ignore_repeated_errors => Off => Off
ignore_repeated_source => Off => Off
ignore_user_abort => Off => Off
implicit_flush => On => On
include_path => .: => .:
input_encoding => no value => no value
internal_encoding => no value => no value
log_errors => On => On
log_errors_max_len => 1024 => 1024
mail.add_x_header => On => On
mail.force_extra_parameters => no value => no value
mail.log => no value => no value
max_execution_time => 0 => 0
max_file_uploads => 20 => 20
max_input_nesting_level => 64 => 64
max_input_time => -1 => -1
max_input_vars => 1000 => 1000
memory_limit => 256M => 256M
open_basedir => no value => no value
output_buffering => 0 => 0
output_encoding => no value => no value
output_handler => no value => no value
post_max_size => 200M => 200M
precision => 14 => 14
realpath_cache_size => 4096k => 4096k
realpath_cache_ttl => 120 => 120
register_argc_argv => On => On
report_memleaks => On => On
report_zend_debug => Off => Off
request_order => GP => GP
sendmail_from => no value => no value
sendmail_path => /usr/sbin/sendmail -t -i  => /usr/sbin/sendmail -t -i
serialize_precision => -1 => -1
short_open_tag => Off => Off
SMTP => localhost => localhost
smtp_port => 25 => 25
sql.safe_mode => Off => Off
sys_temp_dir => no value => no value
track_errors => On => On
unserialize_callback_func => no value => no value
upload_max_filesize => 100M => 100M
upload_tmp_dir => no value => no value
user_dir => no value => no value
user_ini.cache_ttl => 300 => 300
user_ini.filename => .user.ini => .user.ini
variables_order => GPCS => GPCS
xmlrpc_error_number => 0 => 0
xmlrpc_errors => Off => Off
zend.assertions => 1 => 1
zend.detect_unicode => On => On
zend.enable_gc => On => On
zend.multibyte => Off => Off
zend.script_encoding => no value => no value
zend.signal_check => Off => Off

ctype

ctype functions => enabled

curl

cURL support => enabled
cURL Information => 7.54.0
Age => 3
Features
AsynchDNS => Yes
CharConv => No
Debug => No
GSS-Negotiate => No
IDN => No
IPv6 => Yes
krb4 => No
Largefile => Yes
libz => Yes
NTLM => Yes
NTLMWB => Yes
SPNEGO => Yes
SSL => Yes
SSPI => No
TLS-SRP => No
HTTP2 => Yes
GSSAPI => Yes
KERBEROS5 => Yes
UNIX_SOCKETS => Yes
PSL => No
Protocols => dict, file, ftp, ftps, gopher, http, https, imap, imaps, ldap, ldaps, pop3, pop3s, rtsp, smb, smbs, smtp, smtps, telnet, tftp
Host => x86_64-apple-darwin17.0
SSL Version => LibreSSL/2.0.20
ZLib Version => 1.2.11

date

date/time support => enabled
timelib version => 2016.05
"Olson" Timezone Database Version => 2017.2
Timezone Database => internal
Default timezone => Europe/Belgrade

Directive => Local Value => Master Value
date.default_latitude => 31.7667 => 31.7667
date.default_longitude => 35.2333 => 35.2333
date.sunrise_zenith => 90.583333 => 90.583333
date.sunset_zenith => 90.583333 => 90.583333
date.timezone => Europe/Belgrade => Europe/Belgrade

dba

DBA support => enabled
Supported handlers => ndbm cdb cdb_make inifile flatfile

Directive => Local Value => Master Value
dba.default_handler => flatfile => flatfile

dom

DOM/XML => enabled
DOM/XML API Version => 20031129
libxml Version => 2.9.7
HTML Support => enabled
XPath Support => enabled
XPointer Support => enabled
Schema Support => enabled
RelaxNG Support => enabled

exif

EXIF Support => enabled
EXIF Version => 1.4 $Id: 8bdc0c8f27c2c9dd1f7551f1f9fe3ab57a06a4b1 $
Supported EXIF Version => 0220
Supported filetypes => JPEG,TIFF

Directive => Local Value => Master Value
exif.decode_jis_intel => JIS => JIS
exif.decode_jis_motorola => JIS => JIS
exif.decode_unicode_intel => UCS-2LE => UCS-2LE
exif.decode_unicode_motorola => UCS-2BE => UCS-2BE
exif.encode_jis => no value => no value
exif.encode_unicode => ISO-8859-15 => ISO-8859-15

fileinfo

fileinfo support => enabled
version => 1.0.5
libmagic => 522

filter

Input Validation and Filtering => enabled
Revision => $Id: cdc5e15bb616f10210b94ecd8789e66c927a375f $

Directive => Local Value => Master Value
filter.default => unsafe_raw => unsafe_raw
filter.default_flags => no value => no value

ftp

FTP support => enabled
FTPS support => enabled

gd

GD Support => enabled
GD Version => bundled (2.1.0 compatible)
FreeType Support => enabled
FreeType Linkage => with freetype
FreeType Version => 2.8.1
GIF Read Support => enabled
GIF Create Support => enabled
JPEG Support => enabled
libJPEG Version => 9 compatible
PNG Support => enabled
libPNG Version => 1.6.34
WBMP Support => enabled
XBM Support => enabled

Directive => Local Value => Master Value
gd.jpeg_ignore_warning => 1 => 1

geoip

geoip support => enabled
geoip extension version => 1.1.1
geoip library version => 1005000

Directive => Local Value => Master Value
geoip.custom_directory => no value => no value

gettext

GetText Support => enabled

hash

hash support => enabled
Hashing Engines => md2 md4 md5 sha1 sha224 sha256 sha384 sha512/224 sha512/256 sha512 sha3-224 sha3-256 sha3-384 sha3-512 ripemd128 ripemd160 ripemd256 ripemd320 whirlpool tiger128,3 tiger160,3 tiger192,3 tiger128,4 tiger160,4 tiger192,4 snefru snefru256 gost gost-crypto adler32 crc32 crc32b fnv132 fnv1a32 fnv164 fnv1a64 joaat haval128,3 haval160,3 haval192,3 haval224,3 haval256,3 haval128,4 haval160,4 haval192,4 haval224,4 haval256,4 haval128,5 haval160,5 haval192,5 haval224,5 haval256,5

MHASH support => Enabled
MHASH API Version => Emulated Support

iconv

iconv support => enabled
iconv implementation => libiconv
iconv library version => 1.11

Directive => Local Value => Master Value
iconv.input_encoding => no value => no value
iconv.internal_encoding => no value => no value
iconv.output_encoding => no value => no value

imagick

imagick module => enabled
imagick module version => 3.4.3
imagick classes => Imagick, ImagickDraw, ImagickPixel, ImagickPixelIterator, ImagickKernel
Imagick compiled with ImageMagick version => ImageMagick 7.0.7-11 Q16 x86_64 2017-11-12 http://www.imagemagick.org
Imagick using ImageMagick library version => ImageMagick 7.0.7-11 Q16 x86_64 2017-11-12 http://www.imagemagick.org
ImageMagick copyright => © 1999-2017 ImageMagick Studio LLC
ImageMagick release date => 2017-11-12
ImageMagick number of supported formats:  => 219
ImageMagick supported formats => 3FR, 3G2, 3GP, AAI, AI, ART, ARW, AVI, AVS, BGR, BGRA, BGRO, BMP, BMP2, BMP3, BRF, CAL, CALS, CANVAS, CAPTION, CIN, CIP, CLIP, CMYK, CMYKA, CR2, CRW, CUR, CUT, DCM, DCR, DCX, DDS, DFONT, DNG, DOT, DPX, DXT1, DXT5, EPDF, EPI, EPS, EPS2, EPS3, EPSF, EPSI, EPT, EPT2, EPT3, ERF, FAX, FILE, FITS, FRACTAL, FTP, FTS, G3, G4, GIF, GIF87, GRADIENT, GRAY, GROUP4, GV, HALD, HDR, HISTOGRAM, HRZ, HTM, HTML, HTTP, HTTPS, ICB, ICO, ICON, IIQ, INFO, INLINE, IPL, ISOBRL, ISOBRL6, JNG, JNX, JPE, JPEG, JPG, JPS, JSON, K25, KDC, LABEL, M2V, M4V, MAC, MAP, MASK, MAT, MATTE, MEF, MIFF, MKV, MNG, MONO, MOV, MP4, MPC, MPEG, MPG, MRW, MSL, MSVG, MTV, MVG, NEF, NRW, NULL, ORF, OTB, OTF, PAL, PALM, PAM, PANGO, PATTERN, PBM, PCD, PCDS, PCL, PCT, PCX, PDB, PDF, PDFA, PEF, PES, PFA, PFB, PFM, PGM, PICON, PICT, PIX, PJPEG, PLASMA, PNG, PNG00, PNG24, PNG32, PNG48, PNG64, PNG8, PNM, PPM, PS, PS2, PS3, PSB, PSD, PTIF, PWP, RADIAL-GRADIENT, RAF, RAS, RAW, RGB, RGBA, RGBO, RGF, RLA, RLE, RMF, RW2, SCR, SCT, SFW, SGI, SHTML, SIX, SIXEL, SPARSE-COLOR, SR2, SRF, STEGANO, SUN, SVG, SVGZ, TEXT, TGA, THUMBNAIL, TIFF, TIFF64, TILE, TIM, TTC, TTF, TXT, UBRL, UBRL6, UIL, UYVY, VDA, VICAR, VID, VIFF, VIPS, VST, WBMP, WMV, WPG, X3F, XBM, XC, XCF, XPM, XPS, XV, YCbCr, YCbCrA, YUV

Directive => Local Value => Master Value
imagick.locale_fix => 0 => 0
imagick.progress_monitor => 0 => 0
imagick.skip_version_check => 0 => 0

intl

Internationalization support => enabled
version => 1.1.0
ICU version => 59.1
ICU Data version => 59.1

Directive => Local Value => Master Value
intl.default_locale => no value => no value
intl.error_level => 0 => 0
intl.use_exceptions => 0 => 0

json

json support => enabled
json version => 1.5.0

ldap

LDAP Support => enabled
RCS Version => $Id: 0779387e5f88edc656159d12b9302a053e82cc79 $
Total Links => 0/unlimited
API Version => 3001
Vendor Name => OpenLDAP
Vendor Version => 20428
SASL Support => Enabled

Directive => Local Value => Master Value
ldap.max_links => Unlimited => Unlimited

libxml

libXML support => active
libXML Compiled Version => 2.9.7
libXML Loaded Version => 20907
libXML streams => enabled

mbstring

Multibyte Support => enabled
Multibyte string engine => libmbfl
HTTP input encoding translation => disabled
libmbfl version => 1.3.2
oniguruma version => 5.9.6

mbstring extension makes use of "streamable kanji code filter and converter", which is distributed under the GNU Lesser General Public License version 2.1.

Multibyte (japanese) regex support => enabled
Multibyte regex (oniguruma) backtrack check => On
Multibyte regex (oniguruma) version => 5.9.6

Directive => Local Value => Master Value
mbstring.detect_order => no value => no value
mbstring.encoding_translation => Off => Off
mbstring.func_overload => 0 => 0
mbstring.http_input => no value => no value
mbstring.http_output => no value => no value
mbstring.http_output_conv_mimetypes => ^(text/|application/xhtml\+xml) => ^(text/|application/xhtml\+xml)
mbstring.internal_encoding => no value => no value
mbstring.language => neutral => neutral
mbstring.strict_detection => Off => Off
mbstring.substitute_character => no value => no value

mysqli

MysqlI Support => enabled
Client API library version => mysqlnd 5.0.12-dev - 20150407 - $Id: b396954eeb2d1d9ed7902b8bae237b287f21ad9e $
Active Persistent Links => 0
Inactive Persistent Links => 0
Active Links => 0

Directive => Local Value => Master Value
mysqli.allow_local_infile => On => On
mysqli.allow_persistent => On => On
mysqli.default_host => no value => no value
mysqli.default_port => 3306 => 3306
mysqli.default_pw => no value => no value
mysqli.default_socket => /tmp/mysql.sock => /tmp/mysql.sock
mysqli.default_user => no value => no value
mysqli.max_links => Unlimited => Unlimited
mysqli.max_persistent => Unlimited => Unlimited
mysqli.reconnect => Off => Off
mysqli.rollback_on_cached_plink => Off => Off

mysqlnd

mysqlnd => enabled
Version => mysqlnd 5.0.12-dev - 20150407 - $Id: b396954eeb2d1d9ed7902b8bae237b287f21ad9e $
Compression => supported
core SSL => supported
extended SSL => supported
Command buffer size => 4096
Read buffer size => 32768
Read timeout => 31536000
Collecting statistics => Yes
Collecting memory statistics => Yes
Tracing => n/a
Loaded plugins => mysqlnd,debug_trace,auth_plugin_mysql_native_password,auth_plugin_mysql_clear_password,auth_plugin_sha256_password
API Extensions => pdo_mysql,mysqli

mysqlnd statistics =>
bytes_sent => 0
bytes_received => 0
packets_sent => 0
packets_received => 0
protocol_overhead_in => 0
protocol_overhead_out => 0
bytes_received_ok_packet => 0
bytes_received_eof_packet => 0
bytes_received_rset_header_packet => 0
bytes_received_rset_field_meta_packet => 0
bytes_received_rset_row_packet => 0
bytes_received_prepare_response_packet => 0
bytes_received_change_user_packet => 0
packets_sent_command => 0
packets_received_ok => 0
packets_received_eof => 0
packets_received_rset_header => 0
packets_received_rset_field_meta => 0
packets_received_rset_row => 0
packets_received_prepare_response => 0
packets_received_change_user => 0
result_set_queries => 0
non_result_set_queries => 0
no_index_used => 0
bad_index_used => 0
slow_queries => 0
buffered_sets => 0
unbuffered_sets => 0
ps_buffered_sets => 0
ps_unbuffered_sets => 0
flushed_normal_sets => 0
flushed_ps_sets => 0
ps_prepared_never_executed => 0
ps_prepared_once_executed => 0
rows_fetched_from_server_normal => 0
rows_fetched_from_server_ps => 0
rows_buffered_from_client_normal => 0
rows_buffered_from_client_ps => 0
rows_fetched_from_client_normal_buffered => 0
rows_fetched_from_client_normal_unbuffered => 0
rows_fetched_from_client_ps_buffered => 0
rows_fetched_from_client_ps_unbuffered => 0
rows_fetched_from_client_ps_cursor => 0
rows_affected_normal => 0
rows_affected_ps => 0
rows_skipped_normal => 0
rows_skipped_ps => 0
copy_on_write_saved => 0
copy_on_write_performed => 0
command_buffer_too_small => 0
connect_success => 0
connect_failure => 0
connection_reused => 0
reconnect => 0
pconnect_success => 0
active_connections => 0
active_persistent_connections => 0
explicit_close => 0
implicit_close => 0
disconnect_close => 0
in_middle_of_command_close => 0
explicit_free_result => 0
implicit_free_result => 0
explicit_stmt_close => 0
implicit_stmt_close => 0
mem_emalloc_count => 0
mem_emalloc_amount => 0
mem_ecalloc_count => 0
mem_ecalloc_amount => 0
mem_erealloc_count => 0
mem_erealloc_amount => 0
mem_efree_count => 0
mem_efree_amount => 0
mem_malloc_count => 0
mem_malloc_amount => 0
mem_calloc_count => 0
mem_calloc_amount => 0
mem_realloc_count => 0
mem_realloc_amount => 0
mem_free_count => 0
mem_free_amount => 0
mem_estrndup_count => 0
mem_strndup_count => 0
mem_estrdup_count => 0
mem_strdup_count => 0
mem_edupl_count => 0
mem_dupl_count => 0
proto_text_fetched_null => 0
proto_text_fetched_bit => 0
proto_text_fetched_tinyint => 0
proto_text_fetched_short => 0
proto_text_fetched_int24 => 0
proto_text_fetched_int => 0
proto_text_fetched_bigint => 0
proto_text_fetched_decimal => 0
proto_text_fetched_float => 0
proto_text_fetched_double => 0
proto_text_fetched_date => 0
proto_text_fetched_year => 0
proto_text_fetched_time => 0
proto_text_fetched_datetime => 0
proto_text_fetched_timestamp => 0
proto_text_fetched_string => 0
proto_text_fetched_blob => 0
proto_text_fetched_enum => 0
proto_text_fetched_set => 0
proto_text_fetched_geometry => 0
proto_text_fetched_other => 0
proto_binary_fetched_null => 0
proto_binary_fetched_bit => 0
proto_binary_fetched_tinyint => 0
proto_binary_fetched_short => 0
proto_binary_fetched_int24 => 0
proto_binary_fetched_int => 0
proto_binary_fetched_bigint => 0
proto_binary_fetched_decimal => 0
proto_binary_fetched_float => 0
proto_binary_fetched_double => 0
proto_binary_fetched_date => 0
proto_binary_fetched_year => 0
proto_binary_fetched_time => 0
proto_binary_fetched_datetime => 0
proto_binary_fetched_timestamp => 0
proto_binary_fetched_string => 0
proto_binary_fetched_json => 0
proto_binary_fetched_blob => 0
proto_binary_fetched_enum => 0
proto_binary_fetched_set => 0
proto_binary_fetched_geometry => 0
proto_binary_fetched_other => 0
init_command_executed_count => 0
init_command_failed_count => 0
com_quit => 0
com_init_db => 0
com_query => 0
com_field_list => 0
com_create_db => 0
com_drop_db => 0
com_refresh => 0
com_shutdown => 0
com_statistics => 0
com_process_info => 0
com_connect => 0
com_process_kill => 0
com_debug => 0
com_ping => 0
com_time => 0
com_delayed_insert => 0
com_change_user => 0
com_binlog_dump => 0
com_table_dump => 0
com_connect_out => 0
com_register_slave => 0
com_stmt_prepare => 0
com_stmt_execute => 0
com_stmt_send_long_data => 0
com_stmt_close => 0
com_stmt_reset => 0
com_stmt_set_option => 0
com_stmt_fetch => 0
com_deamon => 0
bytes_received_real_data_normal => 0
bytes_received_real_data_ps => 0

odbc

ODBC Support => enabled
Active Persistent Links => 0
Active Links => 0
ODBC library => unixODBC
ODBCVER => 0x0380
ODBC_INCLUDE => -I/usr/local/opt/unixodbc/include
ODBC_LFLAGS => -L/usr/local/opt/unixodbc/lib
ODBC_LIBS => -lodbc

Directive => Local Value => Master Value
odbc.allow_persistent => On => On
odbc.check_persistent => On => On
odbc.default_cursortype => Static cursor => Static cursor
odbc.default_db => no value => no value
odbc.default_pw => no value => no value
odbc.default_user => no value => no value
odbc.defaultbinmode => return as is => return as is
odbc.defaultlrl => return up to 4096 bytes => return up to 4096 bytes
odbc.max_links => Unlimited => Unlimited
odbc.max_persistent => Unlimited => Unlimited

openssl

OpenSSL support => enabled
OpenSSL Library Version => OpenSSL 1.0.2m  2 Nov 2017
OpenSSL Header Version => OpenSSL 1.0.2m  2 Nov 2017
Openssl default config => /usr/local/etc/openssl/openssl.cnf

Directive => Local Value => Master Value
openssl.cafile => no value => no value
openssl.capath => no value => no value

pcntl

pcntl support => enabled

pcre

PCRE (Perl Compatible Regular Expressions) Support => enabled
PCRE Library Version => 8.38 2015-11-23
PCRE JIT Support => enabled

Directive => Local Value => Master Value
pcre.backtrack_limit => 1000000 => 1000000
pcre.jit => 1 => 1
pcre.recursion_limit => 100000 => 100000

PDO

PDO support => enabled
PDO drivers => mysql, odbc, sqlite

pdo_mysql

PDO Driver for MySQL => enabled
Client API version => mysqlnd 5.0.12-dev - 20150407 - $Id: b396954eeb2d1d9ed7902b8bae237b287f21ad9e $

Directive => Local Value => Master Value
pdo_mysql.default_socket => /tmp/mysql.sock => /tmp/mysql.sock

PDO_ODBC

PDO Driver for ODBC (unixODBC) => enabled
ODBC Connection Pooling => Enabled, strict matching

pdo_sqlite

PDO Driver for SQLite 3.x => enabled
SQLite Library => 3.15.1

Phar

Phar: PHP Archive support => enabled
Phar EXT version => 2.0.2
Phar API version => 1.1.1
SVN revision => $Id: 59c11f4e29768bfbbf6f41cb469abd81d8655850 $
Phar-based phar archives => enabled
Tar-based phar archives => enabled
ZIP-based phar archives => enabled
gzip compression => enabled
bzip2 compression => enabled
OpenSSL support => enabled


Phar based on pear/PHP_Archive, original concept by Davey Shafik.
Phar fully realized by Gregory Beaver and Marcus Boerger.
Portions of tar implementation Copyright (c) 2003-2009 Tim Kientzle.
Directive => Local Value => Master Value
phar.cache_list => no value => no value
phar.readonly => On => On
phar.require_hash => On => On

posix

Revision => $Id: b691ca925e7a085e6929579c4eba8fed0732e0ef $

readline

Readline Support => enabled
Readline library => 7.0

Directive => Local Value => Master Value
cli.pager => no value => no value
cli.prompt => \b \>  => \b \>

Reflection

Reflection => enabled
Version => $Id: fa936d2e1587e7b6b6c0f7235f4d9df7564a77ad $

session

Session Support => enabled
Registered save handlers => files user
Registered serializer handlers => php_serialize php php_binary wddx

Directive => Local Value => Master Value
session.auto_start => Off => Off
session.cache_expire => 180 => 180
session.cache_limiter => nocache => nocache
session.cookie_domain => no value => no value
session.cookie_httponly => Off => Off
session.cookie_lifetime => 0 => 0
session.cookie_path => / => /
session.cookie_secure => Off => Off
session.gc_divisor => 1000 => 1000
session.gc_maxlifetime => 1440 => 1440
session.gc_probability => 1 => 1
session.lazy_write => On => On
session.name => PHPSESSID => PHPSESSID
session.referer_check => no value => no value
session.save_handler => files => files
session.save_path => no value => no value
session.serialize_handler => php => php
session.sid_bits_per_character => 5 => 5
session.sid_length => 26 => 26
session.upload_progress.cleanup => On => On
session.upload_progress.enabled => On => On
session.upload_progress.freq => 1% => 1%
session.upload_progress.min_freq => 1 => 1
session.upload_progress.name => PHP_SESSION_UPLOAD_PROGRESS => PHP_SESSION_UPLOAD_PROGRESS
session.upload_progress.prefix => upload_progress_ => upload_progress_
session.use_cookies => On => On
session.use_only_cookies => On => On
session.use_strict_mode => Off => Off
session.use_trans_sid => 0 => 0

shmop

shmop support => enabled

SimpleXML

Simplexml support => enabled
Revision => $Id: 50413b12ac745b94b27ffbdd5454e6e0d7809909 $
Schema support => enabled

soap

Soap Client => enabled
Soap Server => enabled

Directive => Local Value => Master Value
soap.wsdl_cache => 1 => 1
soap.wsdl_cache_dir => /tmp => /tmp
soap.wsdl_cache_enabled => 1 => 1
soap.wsdl_cache_limit => 5 => 5
soap.wsdl_cache_ttl => 86400 => 86400

sockets

Sockets Support => enabled

SPL

SPL support => enabled
Interfaces => Countable, OuterIterator, RecursiveIterator, SeekableIterator, SplObserver, SplSubject
Classes => AppendIterator, ArrayIterator, ArrayObject, BadFunctionCallException, BadMethodCallException, CachingIterator, CallbackFilterIterator, DirectoryIterator, DomainException, EmptyIterator, FilesystemIterator, FilterIterator, GlobIterator, InfiniteIterator, InvalidArgumentException, IteratorIterator, LengthException, LimitIterator, LogicException, MultipleIterator, NoRewindIterator, OutOfBoundsException, OutOfRangeException, OverflowException, ParentIterator, RangeException, RecursiveArrayIterator, RecursiveCachingIterator, RecursiveCallbackFilterIterator, RecursiveDirectoryIterator, RecursiveFilterIterator, RecursiveIteratorIterator, RecursiveRegexIterator, RecursiveTreeIterator, RegexIterator, RuntimeException, SplDoublyLinkedList, SplFileInfo, SplFileObject, SplFixedArray, SplHeap, SplMinHeap, SplMaxHeap, SplObjectStorage, SplPriorityQueue, SplQueue, SplStack, SplTempFileObject, UnderflowException, UnexpectedValueException

sqlite3

SQLite3 support => enabled
SQLite3 module version => 7.1.11
SQLite Library => 3.15.1

Directive => Local Value => Master Value
sqlite3.extension_dir => no value => no value

ssh2

SSH2 support => enabled
extension version => 1.1.2
libssh2 version => 1.8.0
banner => SSH-2.0-libssh2_1.8.0

standard

Dynamic Library Support => enabled
Path to sendmail => /usr/sbin/sendmail -t -i

Directive => Local Value => Master Value
assert.active => 1 => 1
assert.bail => 0 => 0
assert.callback => no value => no value
assert.exception => 0 => 0
assert.quiet_eval => 0 => 0
assert.warning => 1 => 1
auto_detect_line_endings => 0 => 0
default_socket_timeout => 60 => 60
from => no value => no value
session.trans_sid_hosts => no value => no value
session.trans_sid_tags => a=href,area=href,frame=src,form= => a=href,area=href,frame=src,form=
url_rewriter.hosts => no value => no value
url_rewriter.tags => form= => form=
user_agent => no value => no value

sysvmsg

sysvmsg support => enabled
Revision => $Id: 37aa0d90288b1385356784f17694f4c700575736 $

sysvsem

Version => 7.1.11

sysvshm

Version => 7.1.11

tidy

Tidy support => enabled
libTidy Version => 5.6.0
libTidy Release => 2017/11/25
Extension Version => 7.1.11 ($Id: f764b98c87afe8ab43162db66290eced256fb9f1 $)

Directive => Local Value => Master Value
tidy.clean_output => no value => no value
tidy.default_config => no value => no value

tokenizer

Tokenizer Support => enabled

wddx

WDDX Support => enabled
WDDX Session Serializer => enabled

xml

XML Support => active
XML Namespace Support => active
libxml2 Version => 2.9.7

xmlreader

XMLReader => enabled

xmlrpc

core library version => xmlrpc-epi v. 0.51
php extension version => 7.1.11
author => Dan Libby
homepage => http://xmlrpc-epi.sourceforge.net
open sourced by => Epinions.com

xmlwriter

XMLWriter => enabled

xsl

XSL => enabled
libxslt Version => 1.1.29
libxslt compiled against libxml Version => 2.9.4
EXSLT => enabled
libexslt Version => 1.1.29

yaml

LibYAML Support => enabled
Module Version => 2.0.0
LibYAML Version => 0.1.7

Directive => Local Value => Master Value
yaml.decode_binary => 0 => 0
yaml.decode_php => 0 => 0
yaml.decode_timestamp => 0 => 0
yaml.output_canonical => 0 => 0
yaml.output_indent => 2 => 2
yaml.output_width => 80 => 80

zip

Zip => enabled
Zip version => 1.13.5
Libzip version => 1.1.2

zlib

ZLib Support => enabled
Stream Wrapper => compress.zlib://
Stream Filter => zlib.inflate, zlib.deflate
Compiled Version => 1.2.11
Linked Version => 1.2.11

Directive => Local Value => Master Value
zlib.output_compression => Off => Off
zlib.output_compression_level => -1 => -1
zlib.output_handler => no value => no value

Additional Modules

Module Name

Environment

Variable => Value
TERM_SESSION_ID => w0t2p0:10357F23-5F1E-4E3F-B282-AE37242F9220
SSH_AUTH_SOCK => /private/tmp/com.apple.launchd.BDWZm6zIZq/Listeners
Apple_PubSub_Socket_Render => /private/tmp/com.apple.launchd.Z5XXFu8RFb/Render
COLORFGBG => 7;0
ITERM_PROFILE => Default
XPC_FLAGS => 0x0
LANG => en_GB.UTF-8
PWD => /Users/aleksandar
SHELL => /bin/zsh
TERM_PROGRAM_VERSION => 3.1.5
TERM_PROGRAM => iTerm.app
PATH => /Users/aleksandar/.rbenv/shims:/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/opt/apr-util/bin:/usr/local/opt/apr/bin:/usr/local/opt/libxml2/bin:/usr/local/opt/icu4c/sbin:/usr/local/opt/icu4c/bin:/usr/local/opt/gettext/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
COLORTERM => truecolor
TERM => xterm-256color
HOME => /Users/aleksandar
TMPDIR => /var/folders/jx/vv0x6y616jx_ryplhj1qj_380000gn/T/
USER => aleksandar
XPC_SERVICE_NAME => 0
LOGNAME => aleksandar
__CF_USER_TEXT_ENCODING => 0x1F5:0x0:0x2
ITERM_SESSION_ID => w0t2p0:10357F23-5F1E-4E3F-B282-AE37242F9220
SHLVL => 1
OLDPWD => /Users/aleksandar
ZSH => /Users/aleksandar/.oh-my-zsh
LDFLAGS => -L/usr/local/opt/openssl/lib
CFLAGS => -I/usr/local/opt/openssl/include
RBENV_SHELL => zsh
PAGER => less
LESS => -R
LC_CTYPE => en_GB.UTF-8
LSCOLORS => Gxfxcxdxbxegedabagacad
_ => /usr/local/bin/php

PHP Variables

Variable => Value
$_SERVER['TERM_SESSION_ID'] => w0t2p0:10357F23-5F1E-4E3F-B282-AE37242F9220
$_SERVER['SSH_AUTH_SOCK'] => /private/tmp/com.apple.launchd.BDWZm6zIZq/Listeners
$_SERVER['Apple_PubSub_Socket_Render'] => /private/tmp/com.apple.launchd.Z5XXFu8RFb/Render
$_SERVER['COLORFGBG'] => 7;0
$_SERVER['ITERM_PROFILE'] => Default
$_SERVER['XPC_FLAGS'] => 0x0
$_SERVER['LANG'] => en_GB.UTF-8
$_SERVER['PWD'] => /Users/aleksandar
$_SERVER['SHELL'] => /bin/zsh
$_SERVER['TERM_PROGRAM_VERSION'] => 3.1.5
$_SERVER['TERM_PROGRAM'] => iTerm.app
$_SERVER['PATH'] => /Users/aleksandar/.rbenv/shims:/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/opt/apr-util/bin:/usr/local/opt/apr/bin:/usr/local/opt/libxml2/bin:/usr/local/opt/icu4c/sbin:/usr/local/opt/icu4c/bin:/usr/local/opt/gettext/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
$_SERVER['COLORTERM'] => truecolor
$_SERVER['TERM'] => xterm-256color
$_SERVER['HOME'] => /Users/aleksandar
$_SERVER['TMPDIR'] => /var/folders/jx/vv0x6y616jx_ryplhj1qj_380000gn/T/
$_SERVER['USER'] => aleksandar
$_SERVER['XPC_SERVICE_NAME'] => 0
$_SERVER['LOGNAME'] => aleksandar
$_SERVER['__CF_USER_TEXT_ENCODING'] => 0x1F5:0x0:0x2
$_SERVER['ITERM_SESSION_ID'] => w0t2p0:10357F23-5F1E-4E3F-B282-AE37242F9220
$_SERVER['SHLVL'] => 1
$_SERVER['OLDPWD'] => /Users/aleksandar
$_SERVER['ZSH'] => /Users/aleksandar/.oh-my-zsh
$_SERVER['LDFLAGS'] => -L/usr/local/opt/openssl/lib
$_SERVER['CFLAGS'] => -I/usr/local/opt/openssl/include
$_SERVER['RBENV_SHELL'] => zsh
$_SERVER['PAGER'] => less
$_SERVER['LESS'] => -R
$_SERVER['LC_CTYPE'] => en_GB.UTF-8
$_SERVER['LSCOLORS'] => Gxfxcxdxbxegedabagacad
$_SERVER['_'] => /usr/local/bin/php
$_SERVER['PHP_SELF'] =>
$_SERVER['SCRIPT_NAME'] =>
$_SERVER['SCRIPT_FILENAME'] =>
$_SERVER['PATH_TRANSLATED'] =>
$_SERVER['DOCUMENT_ROOT'] =>
$_SERVER['REQUEST_TIME_FLOAT'] => 1512035180.6194
$_SERVER['REQUEST_TIME'] => 1512035180
$_SERVER['argv'] => Array
(
)

$_SERVER['argc'] => 0

PHP License
This program is free software; you can redistribute it and/or modify
it under the terms of the PHP License as published by the PHP Group
and included in the distribution in the file:  LICENSE

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

If you did not receive a copy of the PHP license, or have any
questions about PHP licensing, please contact license@php.net.
@aleksandardragojlovic
Copy link
Author

Extension has been removed right now. If I install php71-mongodb my PHP will crash again. If you need anything else please let me know.

@derickr
Copy link
Contributor

derickr commented Nov 30, 2017

We'd need a strack trace made with GDB, as is explained at https://bugs.php.net/bugs-generating-backtrace.php

@aleksandardragojlovic
Copy link
Author

@derickr I am not sure how to generate it in macOS

@derickr
Copy link
Contributor

derickr commented Nov 30, 2017

Exactly the same as on Linux :-) You might have to install GDB though.

@aleksandardragojlovic
Copy link
Author

aleksandardragojlovic commented Nov 30, 2017

@derickr I hope this is it:

➜  ~ sudo gdb /usr/local/bin/httpd
GNU gdb (GDB) 8.0.1
Copyright (C) 2017 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-apple-darwin17.0.0".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /usr/local/bin/httpd...(no debugging symbols found)...done.
(gdb) run -X
Starting program: /usr/local/bin/httpd -X
[New Thread 0x1303 of process 2051]
warning: unhandled dyld version (15)

Thread 2 received signal SIGSEGV, Segmentation fault.
0x00007fff74bfd3a4 in ?? ()
(gdb) bt
#0  0x00007fff74bfd3a4 in ?? ()
#1  0x00007fff74c1778f in ?? ()
#2  0x0000000105e000f0 in ?? ()
#3  0x0000000000000000 in ?? ()
(gdb) bt
#0  0x00007fff74bfd3a4 in ?? ()
#1  0x00007fff74c1778f in ?? ()
#2  0x0000000105e000f0 in ?? ()
#3  0x0000000000000000 in ?? ()
(gdb) quit
A debugging session is active.

	Inferior 1 [process 2051] will be killed.

Quit anyway? (y or n) y

@deboraglory
Copy link

I've made issue #682 and andreas suggest that my issue is same with this one.
But I install mongo-php-driver using pecl, not homebrew.
After I follow instruction to debug with gdb, i have exactly same bug report with @aleksandardragojlovic . So, how to solve it? Thank.

@derickr
Copy link
Contributor

derickr commented Dec 1, 2017

@aleksandardragojlovic, @deboraglory, unfortunately this GDB trace is not useful, as it doesn't give any lines of code etc. This is because apparently your "httpd" has no debugging symbols.

It would be really useful if you could try this on the command line as well, with "gdb --args php", and see whether it happens there as well.

If I may act on a hunch, I think what is happening is that there are two different openssl libraries being used here. One in "httpd" and one for the PHP driver. In order to test this theory, can you also run:

otool -L /usr/local/bin/httpd
and
otool -L /full/path/to/mongodb.so (replace the path in this one, with the one where your mongodb.so file resides.

@deboraglory
Copy link

deboraglory commented Dec 1, 2017

@derickr gdb --args php has the same result

Deboras-MacBook-Air:bin debora$ sudo gdb --args php
GNU gdb (GDB) 8.0.1
Copyright (C) 2017 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-apple-darwin17.0.0".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from php...(no debugging symbols found)...done.
(gdb) run -X
Starting program: /Applications/MAMP/bin/php/php5.6.30/bin/php -X
[New Thread 0x1303 of process 78617]
warning: unhandled dyld version (15)

httpd check

Deboras-MacBook-Air:bin debora$ otool -L /usr/local/bin/httpd
/usr/local/bin/httpd:
	/usr/local/opt/pcre/lib/libpcre.1.dylib (compatibility version 4.0.0, current version 4.9.0)
	/usr/local/opt/apr-util/libexec/lib/libaprutil-1.0.dylib (compatibility version 7.0.0, current version 7.0.0)
	/usr/lib/libexpat.1.dylib (compatibility version 7.0.0, current version 8.0.0)
	/usr/lib/libiconv.2.dylib (compatibility version 7.0.0, current version 7.0.0)
	/usr/local/opt/apr/libexec/lib/libapr-1.0.dylib (compatibility version 7.0.0, current version 7.2.0)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1252.0.0)

Deboras-MacBook-Air:bin debora$ otool -L /Applications/MAMP/bin/php/php5.6.30/lib/php/extensions/no-debug-non-zts-20131226/mongodb.so
/Applications/MAMP/bin/php/php5.6.30/lib/php/extensions/no-debug-non-zts-20131226/mongodb.so:
	/usr/lib/libsasl2.2.dylib (compatibility version 3.0.0, current version 3.15.0)
	/usr/lib/libssl.35.dylib (compatibility version 36.0.0, current version 36.0.0)
	/usr/lib/libcrypto.35.dylib (compatibility version 36.0.0, current version 36.0.0)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1252.0.0)

BTW, when i start MAMP the one httpd run is from /Applications/MAMP/Library/bin/httpd.

Deboras-MacBook-Air:bin debora$ otool -L /Applications/MAMP/Library/bin/httpd
/Applications/MAMP/Library/bin/httpd:
	/usr/lib/libaprutil-1.0.dylib (compatibility version 4.0.0, current version 4.12.0)
	/Applications/MAMP/Library/lib/libexpat.1.dylib (compatibility version 7.0.0, current version 7.2.0)
	/Applications/MAMP/Library/lib/libiconv.2.dylib (compatibility version 8.0.0, current version 8.1.0)
	/usr/lib/libsqlite3.dylib (compatibility version 9.0.0, current version 158.0.0)
	/System/Library/Frameworks/LDAP.framework/Versions/A/LDAP (compatibility version 1.0.0, current version 2.4.0)
	/usr/lib/libapr-1.0.dylib (compatibility version 5.0.0, current version 5.5.0)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1197.1.1)

@jmikola
Copy link
Member

jmikola commented Dec 5, 2017

@aleksandardragojlovic: Can you follow up with otool -L output for your httpd, php, and mongodb.so binaries?

Based on discussion in #682, I think we've concluded that @deboraglory's issue is due to conflicting versions of OpenSSL. Her web server runtime is using OSX's system library (boringssl), but the version of PHP and mongodb.so installed with Homebrew are using the proper version of OpenSSL (installed via Homebrew). This was confirmed by examining otool -L output for the php and mongodb.so binaries installed via Homebrew. While httpd did not report libboringssl.dylib in its otool -L output, we can infer it is being used at runtime thanks to the crash report she provided.

Please see my response in #682 (comment) and let me know if that can be applied in your situation.

@aleksandardragojlovic
Copy link
Author

aleksandardragojlovic commented Dec 5, 2017

Hello,

➜  ~ which php
/usr/local/bin/php

➜  ~ otool -L /usr/local/bin/php
/usr/local/bin/php:
	/usr/local/opt/openssl/lib/libcrypto.1.0.0.dylib (compatibility version 1.0.0, current version 1.0.0)
	/usr/local/opt/openssl/lib/libssl.1.0.0.dylib (compatibility version 1.0.0, current version 1.0.0)
	/usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.11)
	/usr/lib/libexslt.0.dylib (compatibility version 9.0.0, current version 9.15.0)
	/usr/lib/libresolv.9.dylib (compatibility version 1.0.0, current version 1.0.0)
	/usr/local/opt/readline/lib/libreadline.7.dylib (compatibility version 7.0.0, current version 7.0.0)
	/usr/lib/libncurses.5.4.dylib (compatibility version 5.4.0, current version 5.4.0)
	/System/Library/Frameworks/LDAP.framework/Versions/A/LDAP (compatibility version 1.0.0, current version 2.4.0)
	/usr/lib/libiconv.2.dylib (compatibility version 7.0.0, current version 7.0.0)
	/usr/local/opt/gettext/lib/libintl.8.dylib (compatibility version 10.0.0, current version 10.5.0)
	/usr/local/opt/libpng/lib/libpng16.16.dylib (compatibility version 51.0.0, current version 51.0.0)
	/usr/local/opt/jpeg/lib/libjpeg.9.dylib (compatibility version 12.0.0, current version 12.0.0)
	/usr/lib/libcurl.4.dylib (compatibility version 7.0.0, current version 9.0.0)
	/usr/lib/libbz2.1.0.dylib (compatibility version 1.0.0, current version 1.0.5)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1252.0.0)
	/usr/local/opt/libxml2/lib/libxml2.2.dylib (compatibility version 12.0.0, current version 12.7.0)
	/System/Library/Frameworks/Kerberos.framework/Versions/A/Kerberos (compatibility version 5.0.0, current version 6.0.0)
	/usr/local/opt/freetype/lib/libfreetype.6.dylib (compatibility version 22.0.0, current version 22.0.0)
	/usr/local/opt/unixodbc/lib/libodbc.2.dylib (compatibility version 3.0.0, current version 3.0.0)
	/usr/lib/libxslt.1.dylib (compatibility version 3.0.0, current version 3.26.0)
	/usr/lib/libicucore.A.dylib (compatibility version 1.0.0, current version 59.1.0)
	/usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 400.9.0)

➜  ~ which httpd
/usr/local/bin/httpd

➜  ~ otool -L /usr/local/bin/httpd
/usr/local/bin/httpd:
	/usr/local/opt/pcre/lib/libpcre.1.dylib (compatibility version 4.0.0, current version 4.9.0)
	/usr/local/opt/apr-util/libexec/lib/libaprutil-1.0.dylib (compatibility version 7.0.0, current version 7.0.0)
	/usr/lib/libexpat.1.dylib (compatibility version 7.0.0, current version 8.0.0)
	/usr/lib/libiconv.2.dylib (compatibility version 7.0.0, current version 7.0.0)
	/usr/local/opt/apr/libexec/lib/libapr-1.0.dylib (compatibility version 7.0.0, current version 7.2.0)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1252.0.0)

➜  ~ otool -l /usr/local/opt/php71-mongodb/mongodb.so
/usr/local/opt/php71-mongodb/mongodb.so:
Mach header
      magic cputype cpusubtype  caps    filetype ncmds sizeofcmds      flags
 0xfeedfacf 16777223          3  0x00           8    16       1800 0x00018004
Load command 0
      cmd LC_SEGMENT_64
  cmdsize 552
  segname __TEXT
   vmaddr 0x0000000000000000
   vmsize 0x0000000000088000
  fileoff 0
 filesize 557056
  maxprot 0x00000007
 initprot 0x00000005
   nsects 6
    flags 0x0
Section
  sectname __text
   segname __TEXT
      addr 0x00000000000021e0
      size 0x000000000006c978
    offset 8672
     align 2^2 (4)
    reloff 0
    nreloc 0
     flags 0x80000400
 reserved1 0
 reserved2 0
Section
  sectname __stubs
   segname __TEXT
      addr 0x000000000006eb58
      size 0x00000000000019b0
    offset 453464
     align 2^1 (2)
    reloff 0
    nreloc 0
     flags 0x80000408
 reserved1 0 (index into indirect symbol table)
 reserved2 6 (size of stubs)
Section
  sectname __stub_helper
   segname __TEXT
      addr 0x0000000000070508
      size 0x0000000000002ad8
    offset 460040
     align 2^2 (4)
    reloff 0
    nreloc 0
     flags 0x80000400
 reserved1 0
 reserved2 0
Section
  sectname __const
   segname __TEXT
      addr 0x0000000000072fe0
      size 0x0000000000001b38
    offset 471008
     align 2^4 (16)
    reloff 0
    nreloc 0
     flags 0x00000000
 reserved1 0
 reserved2 0
Section
  sectname __cstring
   segname __TEXT
      addr 0x0000000000074b20
      size 0x0000000000012344
    offset 477984
     align 2^4 (16)
    reloff 0
    nreloc 0
     flags 0x00000002
 reserved1 0
 reserved2 0
Section
  sectname __unwind_info
   segname __TEXT
      addr 0x0000000000086e64
      size 0x0000000000001198
    offset 552548
     align 2^2 (4)
    reloff 0
    nreloc 0
     flags 0x00000000
 reserved1 0
 reserved2 0
Load command 1
      cmd LC_SEGMENT_64
  cmdsize 632
  segname __DATA
   vmaddr 0x0000000000088000
   vmsize 0x0000000000010000
  fileoff 557056
 filesize 32768
  maxprot 0x00000007
 initprot 0x00000003
   nsects 7
    flags 0x0
Section
  sectname __nl_symbol_ptr
   segname __DATA
      addr 0x0000000000088000
      size 0x0000000000000010
    offset 557056
     align 2^3 (8)
    reloff 0
    nreloc 0
     flags 0x00000006
 reserved1 1096 (index into indirect symbol table)
 reserved2 0
Section
  sectname __got
   segname __DATA
      addr 0x0000000000088010
      size 0x0000000000000378
    offset 557072
     align 2^3 (8)
    reloff 0
    nreloc 0
     flags 0x00000006
 reserved1 1098 (index into indirect symbol table)
 reserved2 0
Section
  sectname __la_symbol_ptr
   segname __DATA
      addr 0x0000000000088388
      size 0x0000000000002240
    offset 557960
     align 2^3 (8)
    reloff 0
    nreloc 0
     flags 0x00000007
 reserved1 1209 (index into indirect symbol table)
 reserved2 0
Section
  sectname __const
   segname __DATA
      addr 0x000000000008a5d0
      size 0x0000000000003650
    offset 566736
     align 2^4 (16)
    reloff 0
    nreloc 0
     flags 0x00000000
 reserved1 0
 reserved2 0
Section
  sectname __data
   segname __DATA
      addr 0x000000000008dc20
      size 0x0000000000002320
    offset 580640
     align 2^4 (16)
    reloff 0
    nreloc 0
     flags 0x00000000
 reserved1 0
 reserved2 0
Section
  sectname __bss
   segname __DATA
      addr 0x000000000008ff40
      size 0x0000000000007af0
    offset 0
     align 2^4 (16)
    reloff 0
    nreloc 0
     flags 0x00000001
 reserved1 0
 reserved2 0
Section
  sectname __common
   segname __DATA
      addr 0x0000000000097a30
      size 0x0000000000000440
    offset 0
     align 2^3 (8)
    reloff 0
    nreloc 0
     flags 0x00000001
 reserved1 0
 reserved2 0
Load command 2
      cmd LC_SEGMENT_64
  cmdsize 72
  segname __LINKEDIT
   vmaddr 0x0000000000098000
   vmsize 0x000000000002d000
  fileoff 589824
 filesize 183332
  maxprot 0x00000007
 initprot 0x00000001
   nsects 0
    flags 0x0
Load command 3
            cmd LC_DYLD_INFO_ONLY
        cmdsize 48
     rebase_off 589824
    rebase_size 608
       bind_off 590432
      bind_size 5968
  weak_bind_off 596400
 weak_bind_size 56
  lazy_bind_off 596456
 lazy_bind_size 35680
     export_off 632136
    export_size 26792
Load command 4
     cmd LC_SYMTAB
 cmdsize 24
  symoff 661784
   nsyms 2340
  stroff 708444
 strsize 64712
Load command 5
            cmd LC_DYSYMTAB
        cmdsize 80
      ilocalsym 0
      nlocalsym 788
     iextdefsym 788
     nextdefsym 1240
      iundefsym 2028
      nundefsym 312
         tocoff 0
           ntoc 0
      modtaboff 0
        nmodtab 0
   extrefsymoff 0
    nextrefsyms 0
 indirectsymoff 699224
  nindirectsyms 2305
      extreloff 0
        nextrel 0
      locreloff 0
        nlocrel 0
Load command 6
     cmd LC_UUID
 cmdsize 24
    uuid FA6B6BCF-D0D9-36BD-AF92-62469952C0DC
Load command 7
      cmd LC_VERSION_MIN_MACOSX
  cmdsize 16
  version 10.13
      sdk 10.13
Load command 8
      cmd LC_SOURCE_VERSION
  cmdsize 16
  version 0.0
Load command 9
          cmd LC_LOAD_DYLIB
      cmdsize 56
         name /usr/lib/libsasl2.2.dylib (offset 24)
   time stamp 2 Thu Jan  1 01:00:02 1970
      current version 3.15.0
compatibility version 3.0.0
Load command 10
          cmd LC_LOAD_DYLIB
      cmdsize 72
         name /usr/local/opt/openssl/lib/libssl.1.0.0.dylib (offset 24)
   time stamp 2 Thu Jan  1 01:00:02 1970
      current version 1.0.0
compatibility version 1.0.0
Load command 11
          cmd LC_LOAD_DYLIB
      cmdsize 80
         name /usr/local/opt/openssl/lib/libcrypto.1.0.0.dylib (offset 24)
   time stamp 2 Thu Jan  1 01:00:02 1970
      current version 1.0.0
compatibility version 1.0.0
Load command 12
          cmd LC_LOAD_DYLIB
      cmdsize 56
         name /usr/lib/libSystem.B.dylib (offset 24)
   time stamp 2 Thu Jan  1 01:00:02 1970
      current version 1252.0.0
compatibility version 1.0.0
Load command 13
          cmd LC_RPATH
      cmdsize 40
         path /usr/local/opt/openssl/lib (offset 12)
Load command 14
      cmd LC_FUNCTION_STARTS
  cmdsize 16
  dataoff 658928
 datasize 2560
Load command 15
      cmd LC_DATA_IN_CODE
  cmdsize 16
  dataoff 661488
 datasize 296
➜  ~

@aleksandardragojlovic
Copy link
Author

@jmikola I have pasted an output from my Terminal. Thank you.

@jmikola
Copy link
Member

jmikola commented Dec 5, 2017

@aleksandardragojlovic: You may want to edit your last comment. otool -l is not the same as otool -L (re: mongodb.so report).

@aleksandardragojlovic
Copy link
Author

aleksandardragojlovic commented Dec 5, 2017

➜  ~ otool -L /usr/local/opt/php71-mongodb/mongodb.so
/usr/local/opt/php71-mongodb/mongodb.so:
	/usr/lib/libsasl2.2.dylib (compatibility version 3.0.0, current version 3.15.0)
	/usr/local/opt/openssl/lib/libssl.1.0.0.dylib (compatibility version 1.0.0, current version 1.0.0)
	/usr/local/opt/openssl/lib/libcrypto.1.0.0.dylib (compatibility version 1.0.0, current version 1.0.0)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1252.0.0)

@aleksandardragojlovic
Copy link
Author

@jmikola I made a mistake. I have added new comment.

@jmikola
Copy link
Member

jmikola commented Dec 6, 2017

Based on your otool -L output you provided and the fact that Apache, PHP, and the driver have all been installed via Homebrew, I believe you're facing the same issue as @adamwinn in #682. Please read #682 (comment) onward (note that I incorrectly assumed he was using the macOS version of httpd in the first comment linked).

To reiterate here, the root cause of this is httpd loading BoringSSL at runtime, despite PHP and its extensions being compiled against OpenSSL. I don't understand why a version of Apache installed through Homebrew would not utilize Homebrew's OpenSSL library, but that's something I've asked @adamwinn to follow up on (with the Apache formula maintainers).

In the driver itself, we're aiming to utilize Secure Transport instead of OpenSSL on macOS with PHPC-888 for 1.4.0, which would circumvent this issue. That said, the conflict between BoringSSL and OpenSSL is still an open issue (if not for our extension after 1.4.0, then certainly for any other PHP application using OpenSSL -- such as the OpenSSL API itself).

@sibidharan
Copy link

What is the solution for this issue now? Lot of our development environment are unusable due to this issue! @jmikola

@jmikola
Copy link
Member

jmikola commented Dec 11, 2017

What is the solution for this issue now?

@sibidharan: I believe the best workaround at present is to switch from mod_php to PHP FPM, as you've documented in Homebrew/homebrew-core#21475 (comment). Folks in the Homebrew project have observed crashes with at least one other extension (SNMP) and are aware of the issue with Apache loading BoringSSL. That said, this issue is not specific to Homebrew, as the OP in #682 reported a similar crash using MAMP.

I expect PHPC-888 is the best long term solution to this issue (at least for the MongoDB driver).

@sibidharan
Copy link

@jmikola I also observed that if I compile mongodb.so from a macOS Sierra, it is not crashing. So that is a better alternate, if someone is able to compile it on macOS Sierra and use it in macOS High Sierra. This is a easiest and short one. But I need to test it more before documenting it. In that case, we can provide the extension file for everyone who is facing the issue. I am unaware how far it is going to work.

Let's see what the future holds!

@aleksandardragojlovic
Copy link
Author

Switching to php fpm works for me. Thank you very much.

@jmikola
Copy link
Member

jmikola commented Dec 12, 2017

In that case, we can provide the extension file for everyone who is facing the issue.

@sibidharan: We've no plans to start providing object files, although you're certainly free to do so on your own. PECL provides its own DLLs for Windows users, but that's a special case given the complexity of Windows' build environment.

But considering this crash is not unique to Homebrew (at least one user experienced it from a basic PECL install, which didn't involve Homebrew's OpenSSL), I'm doubtful that a pre-compiled mongodb.so file is going to be more reliable than switching to PHP FPM. For instance, if you build mongodb.so for OpenSSL 1.1 and someone attempts to use it with an earlier OpenSSL version, a crash might still occur.

@sibidharan
Copy link

@jmikola That is true. Then for now, let's stick with FPM until 1.4.0 driver for mongodb is out!

@sibidharan
Copy link

@aleksandardragojlovic httpd is not crashing anymore. I said what I did in in Homebrew/homebrew-core#21475 (comment), which solved my issue 💯

libmongoc SSL library is Secure Transport now :D

@jmikola
Copy link
Member

jmikola commented Jan 23, 2018

Per my response in https://github.com/Homebrew/homebrew-php/issues/4607#issuecomment-359929194, this should be addressed by the recently tagged 1.4.0RC1 release. If you build from source, as the Homebrew formula does, you can provide --with-mongodb-ssl=darwin to configure and instruct the driver to utilize macOS Secure Transport instead of OpenSSL (and bypass the BoringSSL conflict).

@jmikola jmikola closed this as completed Jan 23, 2018
bashofmann pushed a commit to bashofmann/homebrew-php that referenced this issue Feb 12, 2018
@alcaeus
Copy link
Member

alcaeus commented Jun 18, 2018

@abinhho the information is heavily outdated.

For one, with ext-mongodb 1.4.0 and later, you can specify which SSL library you want to use using the --with-mongodb-ssl configure switch. Starting with 1.4.3, the configure script automatically prefers Secure Transport on MacOS, so you can simply run pecl install mongodb and it should work out of the box without manually calling configure.

Furthermore, the instructions to install PHP are also outdated and will no longer work - the php71 brew package is long gone in favor of php@7.1. In the future, please ensure instructions are still valid before copy-pasting them from one ticket to another. Thanks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants