View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0001763 | Xdebug | Code Coverage | public | 2020-03-15 16:47 | 2020-03-24 18:20 |
Reporter | JeremyDunn | Assigned To | derick | ||
Priority | high | Severity | crash | Reproducibility | always |
Status | closed | Resolution | fixed | ||
Product Version | 2.9.3 | ||||
Fixed in Version | 2.9.4 | ||||
Summary | 0001763: Crash while setting opcode overrides in ZTS mode | ||||
Description | I've been using xdebug for many years. Most recently, apache 2.4.41 + PHP 7.3.13 + xdebug 2.8.0b1 (all x64 version) today I upgraded to PHP 7.3.15 and xdebug 2.9.3. No change to apache. Now, apache crashes on every request. Windows event log shows: Faulting application name: httpd.exe, version: 2.4.41.0, time stamp: 0x5d4d8786 | ||||
Steps To Reproduce | make any request to local website | ||||
Additional Information | PHP Version drop-down only includes 7.3.14. I have just installed 7.3.15 (thread-safe, VC15, x64) from here: | ||||
Tags | No tags attached. | ||||
Attached Files | |||||
Operating System | Windows 8.1 Pro | ||||
PHP Version | 7.3.10-7.3.14 | ||||
|
reverting to xdebug 2.9.2 works fine. |
|
Same here. I'm using Apache 2.4.37 with this configuration: PHPIniDir "C:\Dev\PHP7.2" I'm using PHP 7.2.28 with this configuration: When browsing to the website (even without starting the xdebug session), I have the same Exception code (0xc0000005) in the Windows Event Viewer. |
|
I'm the developer of Wampserver since version 3 and xDebug is integrated in every version of PHP. |
|
Can any of you reproduce this with the built-in PHP webserver, instead of apache? Serving your "docroot" with "php -dxdebug.remote_enable=1 -dxdebug.remote_autoconnect -S localhost:8123" and then requesting a PHP script through http://localhost:8123/scriptphp" should do the trick. It looks like this is only related to Windows, and I haven't been able to reproduce this with Linux on ZTS, and I don't have a Windows install. |
|
It is not just Windows |
|
If you want to email me or IM me exact instructions I can test for you. |
|
@jjo5555 — thanks. I don't really have Apache (And it shouldn't really be needed to reproduce this), so I am looking for a way to reproduce this locally. Preferably without Apache. A docker container/setup could be helpful if you know how to make one? In any case, without having the exact steps to reproduce this locally, there is not too much I can do :-/ |
|
xdebug 2.9.3 does NOT fail, running with the command specified in https://bugs.xdebug.org/view.php?id=1763#c5304, outside of apache however if I leave 2.9.3 enabled in php.ini, and restart apache but requesting any page gives the same error as originally reported: Faulting application name: httpd.exe, version: 2.4.41.0, time stamp: 0x5d4d8786 I don't know if it's of any value to you (or perhaps others helping to debug) , but I've attached the Windows Error Reporting (WER) file generated when apache crashes.... Perhaps this part of the report would be helpful? https://stackoverflow.com/questions/17168982/exception-error-c0000005-in-vc does the "Offset" value give a clue as to which line of code is faulting ? Report.wer (17,108 bytes)
Version=1 EventType=APPCRASH EventTime=132292699512408238 ReportType=2 Consent=1 UploadTime=132292699516991544 ReportIdentifier=9e6a0d5c-6b75-11ea-8295-b4b676b69bd4 IntegratorReportIdentifier=9e6a0d5b-6b75-11ea-8295-b4b676b69bd4 NsAppName=httpd.exe Response.type=4 Sig[0].Name=Application Name Sig[0].Value=httpd.exe Sig[1].Name=Application Version Sig[1].Value=2.4.41.0 Sig[2].Name=Application Timestamp Sig[2].Value=5d4d8786 Sig[3].Name=Fault Module Name Sig[3].Value=php_xdebug-2.9.3-7.3-vc15-x86_64.dll Sig[4].Name=Fault Module Version Sig[4].Value=2.9.3.2 Sig[5].Name=Fault Module Timestamp Sig[5].Value=5e6bbef6 Sig[6].Name=Exception Code Sig[6].Value=c0000005 Sig[7].Name=Exception Offset Sig[7].Value=000000000000bf10 DynamicSig[1].Name=OS Version DynamicSig[1].Value=6.3.9600.2.0.0.256.48 DynamicSig[2].Name=Locale ID DynamicSig[2].Value=1033 DynamicSig[22].Name=Additional Information 1 DynamicSig[22].Value=6a31 DynamicSig[23].Name=Additional Information 2 DynamicSig[23].Value=6a318d875a8e1bcb28cb6b95a72c92f5 DynamicSig[24].Name=Additional Information 3 DynamicSig[24].Value=361e DynamicSig[25].Name=Additional Information 4 DynamicSig[25].Value=361e87ae87c5b12b8b9a334d829add20 UI[2]=C:\Program Files\Apache2.4.41\bin\httpd.exe UI[3]=Apache HTTP Server has stopped working UI[4]=Windows can check online for a solution to the problem. UI[5]=Check online for a solution (recommended) UI[6]=Check for a solution later (recommended) UI[7]=Close UI[8]=Apache HTTP Server stopped working and was closed UI[9]=A problem caused the application to stop working correctly. Windows will notify you if a solution is available. UI[10]=&Close LoadedModule[0]=C:\Program Files\Apache2.4.41\bin\httpd.exe LoadedModule[1]=C:\Windows\SYSTEM32\ntdll.dll LoadedModule[2]=C:\Windows\system32\KERNEL32.DLL LoadedModule[3]=C:\Windows\system32\KERNELBASE.dll LoadedModule[4]=C:\Program Files\Apache2.4.41\bin\libhttpd.dll LoadedModule[5]=C:\Program Files\Apache2.4.41\bin\libaprutil-1.dll LoadedModule[6]=C:\Program Files\Apache2.4.41\bin\libapr-1.dll LoadedModule[7]=C:\Windows\SYSTEM32\VCRUNTIME140.dll LoadedModule[8]=C:\Windows\SYSTEM32\api-ms-win-crt-runtime-l1-1-0.dll LoadedModule[9]=C:\Windows\SYSTEM32\api-ms-win-crt-stdio-l1-1-0.dll LoadedModule[10]=C:\Windows\SYSTEM32\api-ms-win-crt-string-l1-1-0.dll LoadedModule[11]=C:\Windows\SYSTEM32\api-ms-win-crt-math-l1-1-0.dll LoadedModule[12]=C:\Windows\SYSTEM32\api-ms-win-crt-locale-l1-1-0.dll LoadedModule[13]=C:\Windows\SYSTEM32\api-ms-win-crt-heap-l1-1-0.dll LoadedModule[14]=C:\Program Files\Apache2.4.41\bin\pcre.dll LoadedModule[15]=C:\Windows\system32\WS2_32.dll LoadedModule[16]=C:\Windows\system32\ADVAPI32.dll LoadedModule[17]=C:\Windows\SYSTEM32\api-ms-win-crt-convert-l1-1-0.dll LoadedModule[18]=C:\Windows\SYSTEM32\api-ms-win-crt-environment-l1-1-0.dll LoadedModule[19]=C:\Windows\SYSTEM32\api-ms-win-crt-utility-l1-1-0.dll LoadedModule[20]=C:\Windows\SYSTEM32\api-ms-win-crt-time-l1-1-0.dll LoadedModule[21]=C:\Program Files\Apache2.4.41\bin\libapriconv-1.dll LoadedModule[22]=C:\Windows\SYSTEM32\api-ms-win-crt-multibyte-l1-1-0.dll LoadedModule[23]=C:\Windows\SYSTEM32\MSWSOCK.dll LoadedModule[24]=C:\Windows\system32\RPCRT4.dll LoadedModule[25]=C:\Windows\system32\SHELL32.dll LoadedModule[26]=C:\Windows\SYSTEM32\api-ms-win-crt-conio-l1-1-0.dll LoadedModule[27]=C:\Windows\SYSTEM32\ucrtbase.DLL LoadedModule[28]=C:\Windows\system32\NSI.dll LoadedModule[29]=C:\Windows\system32\msvcrt.dll LoadedModule[30]=C:\Windows\SYSTEM32\sechost.dll LoadedModule[31]=C:\Windows\system32\SspiCli.dll LoadedModule[32]=C:\Windows\SYSTEM32\combase.dll LoadedModule[33]=C:\Windows\system32\USER32.dll LoadedModule[34]=C:\Windows\system32\SHLWAPI.dll LoadedModule[35]=C:\Windows\system32\GDI32.dll LoadedModule[36]=C:\Windows\system32\nvinitx.dll LoadedModule[37]=C:\Windows\SYSTEM32\VERSION.dll LoadedModule[38]=C:\Windows\SYSTEM32\shcore.dll LoadedModule[39]=C:\Windows\SYSTEM32\CRYPTSP.dll LoadedModule[40]=C:\Windows\system32\rsaenh.dll LoadedModule[41]=C:\Windows\SYSTEM32\bcrypt.dll LoadedModule[42]=C:\Windows\SYSTEM32\CRYPTBASE.dll LoadedModule[43]=C:\Windows\SYSTEM32\bcryptPrimitives.dll LoadedModule[44]=C:\Windows\SYSTEM32\api-ms-win-crt-filesystem-l1-1-0.dll LoadedModule[45]=C:\Program Files\Apache2.4.41\bin\libssl-1_1-x64.dll LoadedModule[46]=C:\Program Files\Apache2.4.41\bin\libcrypto-1_1-x64.dll LoadedModule[47]=C:\Program Files\Apache2.4.41\modules\mod_access_compat.so LoadedModule[48]=C:\Program Files\Apache2.4.41\modules\mod_alias.so LoadedModule[49]=C:\Program Files\Apache2.4.41\modules\mod_authz_core.so LoadedModule[50]=C:\Program Files\Apache2.4.41\modules\mod_deflate.so LoadedModule[51]=C:\Program Files\Apache2.4.41\bin\zlib1.dll LoadedModule[52]=C:\Program Files\Apache2.4.41\modules\mod_dir.so LoadedModule[53]=C:\Program Files\Apache2.4.41\modules\mod_expires.so LoadedModule[54]=C:\Program Files\Apache2.4.41\modules\mod_filter.so LoadedModule[55]=C:\Program Files\Apache2.4.41\modules\mod_headers.so LoadedModule[56]=C:\Program Files\Apache2.4.41\modules\mod_http2.so LoadedModule[57]=C:\Program Files\Apache2.4.41\bin\nghttp2.dll LoadedModule[58]=C:\Program Files\Apache2.4.41\modules\mod_include.so LoadedModule[59]=C:\Program Files\Apache2.4.41\modules\mod_log_config.so LoadedModule[60]=C:\Program Files\Apache2.4.41\modules\mod_log_rotate.so LoadedModule[61]=C:\Program Files\Apache2.4.41\modules\mod_mime.so LoadedModule[62]=C:\Program Files\Apache2.4.41\modules\mod_rewrite.so LoadedModule[63]=C:\Program Files\Apache2.4.41\modules\mod_setenvif.so LoadedModule[64]=C:\Program Files\Apache2.4.41\modules\mod_socache_shmcb.so LoadedModule[65]=C:\Program Files\Apache2.4.41\modules\mod_socache_dbm.so LoadedModule[66]=C:\Program Files\Apache2.4.41\modules\mod_ssl.so LoadedModule[67]=C:\Program Files\Apache2.4.41\modules\mod_actions.so LoadedModule[68]=C:\Program Files\Apache2.4.41\modules\mod_authn_file.so LoadedModule[69]=C:\Program Files\Apache2.4.41\modules\mod_authn_core.so LoadedModule[70]=C:\Program Files\php7.3.15\php7apache2_4.dll LoadedModule[71]=C:\Program Files\php7.3.15\php7ts.dll LoadedModule[72]=C:\Windows\SYSTEM32\IPHLPAPI.DLL LoadedModule[73]=C:\Windows\system32\ole32.dll LoadedModule[74]=C:\Windows\SYSTEM32\DNSAPI.dll LoadedModule[75]=C:\Windows\SYSTEM32\WINNSI.DLL LoadedModule[76]=C:\Program Files\php7.3.15\ext\php_opcache.dll LoadedModule[77]=C:\Program Files\php7.3.15\ext\php_xdebug-2.9.3-7.3-vc15-x86_64.dll LoadedModule[78]=C:\Program Files\php7.3.15\ext\php_bz2.dll LoadedModule[79]=C:\Program Files\php7.3.15\ext\php_curl.dll LoadedModule[80]=C:\Windows\system32\WLDAP32.dll LoadedModule[81]=C:\Windows\system32\Normaliz.dll LoadedModule[82]=C:\Program Files\Apache2.4.41\bin\libssh2.dll LoadedModule[83]=C:\Program Files\php7.3.15\ext\php_fileinfo.dll LoadedModule[84]=C:\Program Files\php7.3.15\ext\php_gd2.dll LoadedModule[85]=C:\Program Files\php7.3.15\ext\php_imap.dll LoadedModule[86]=C:\Windows\SYSTEM32\WINMM.dll LoadedModule[87]=C:\Windows\SYSTEM32\Secur32.dll LoadedModule[88]=C:\Windows\system32\CRYPT32.dll LoadedModule[89]=C:\Windows\SYSTEM32\WINMMBASE.dll LoadedModule[90]=C:\Windows\system32\MSASN1.dll LoadedModule[91]=C:\Windows\SYSTEM32\cfgmgr32.dll LoadedModule[92]=C:\Windows\SYSTEM32\DEVOBJ.dll LoadedModule[93]=C:\Program Files\php7.3.15\ext\php_mbstring.dll LoadedModule[94]=C:\Program Files\php7.3.15\ext\php_openssl.dll LoadedModule[95]=C:\Program Files\php7.3.15\ext\php_pdo_odbc.dll LoadedModule[96]=C:\Windows\SYSTEM32\ODBC32.dll LoadedModule[97]=C:\Program Files\php7.3.15\ext\php_pdo_sqlite.dll LoadedModule[98]=C:\Program Files\php7.3.15\ext\php_soap.dll LoadedModule[99]=C:\Program Files\php7.3.15\ext\php_sockets.dll LoadedModule[100]=C:\Program Files\php7.3.15\ext\php_sqlite3.dll LoadedModule[101]=C:\Program Files\php7.3.15\ext\php_xsl.dll LoadedModule[102]=C:\Program Files\php7.3.15\ext\php_apcu-5.1.18-7.3-ts-x64.dll LoadedModule[103]=C:\Program Files\php7.3.15\ext\php_pdo_sqlsrv_73_ts_x64.dll LoadedModule[104]=C:\Windows\SYSTEM32\MSVCP140.dll LoadedModule[105]=C:\Program Files\php7.3.15\ext\php_sync-1.1.1-7.3-ts-x64.dll LoadedModule[106]=C:\Program Files\php7.3.15\ext\php_igbinary-3.1.2-7.3-ts-x64.dll FriendlyEventName=Stopped working ConsentKey=APPCRASH AppName=Apache HTTP Server AppPath=C:\Program Files\Apache2.4.41\bin\httpd.exe NsPartner=windows NsGroup=windows8 ApplicationIdentity=B6BF1E879AC9A8C21492956707765F2D |
|
@derick - if you have (or can create) a build of xdebug which emits a ton of debugging information (maybe line-by-line tracing?) then email it to me or send me a link where I can download - I'll run it and return output here, if that would be helpful. alternately if there is any xdebug setting I can enable which would show debug info for xdebug itself, please tell me what is that setting and I will try it and return the results. There is nothing obvious to me on this page: https://xdebug.org/docs/all_settings Finally, here are my xdebug settings from php.ini: |
|
@derick - If I can be of any use, it will be with pleasure, of course provided you tell me what to set up and do. |
|
I've just spend some time getting Centos with apache, php 7.3 and Xdebug going, and for me it starts fine. @JeremyDunn I can't really change Xdebug to have that information line by line. It's also not going to be helpful as there is likely some memory corruption that that will not show in the right place. If I can't reproduce it myself, I can't fix it. So please provide a set-up where this is already broken, or the exact steps for me to run in a clean (Linux) OS install to reproduce this issue. Assume I know nothing about your set-up. If you want, feel free to drop by in Freenode/#xdebug on IRC (https://webchat.freenode.net/#xdebug). |
|
@derick - thank you very much for your attention to this matter. From everything that has been written, it seems to affect only Windows; so how would it help to "run in a clean (Linux) OS install" ?? I might be able to setup a Windows environment in which this problem can be reproduced, and give you root access (e.g. a small AWS instance). Would this be useful ?? |
|
@JeremyDunn - no see my report 1765. This is Centos/Linux |
|
It starts fine but does it server PHP pages?
Happy to let you SSH into my production box. Ideally from a fixed IP I can let through the firewall and for a set time period because I will have to upgrade again and thus break a production box. |
|
Yes, no problem at all.
That sounds a bit scary, especially because you shouldn't really run Xdebug in production :-) And, would I be able to poke around and start/stop things at leisure? |
|
Not really sure why I am. I figured it is running as it is part of my PHP/PECL set-up and was required. I have not consciously turned it on.
Yes in a set time window as long as you are able to revert things back after. |
|
OK so I commented out the line: By the way this may be relevant: I am using PHP ZTS (Zend Thread Safety) module and pthreads |
|
Thanks for that hint @jjo5555 — It definitely needs ZTS, but not pthreads. I can now reproduce this and get the following valgrind error:
|
|
Same story here. Debugged (heh) for days. Problem was with xdebug version 2.9.3 (TS x64). Reproduced with PHP 7.2/3/4 on both laragon and xampp; xdebug that came with xampp worked as it was xdebug v2.8.1 and that helped me pin point the problem. |
|
I have a potential fix. Can you all please test the following: @JeremyDunn: Download https://ci.appveyor.com/api/buildjobs/5naxtrg30ij5d1od/artifacts/php_xdebug-c9c23258-7.3-vc15-x86_64.zip to replace C:\Program Files\php7.3.15\ext\php_xdebug-2.9.3-7.3-vc15-x86_64.dll Windows binaries for other PHP versions are also being built. Select the right option from https://ci.appveyor.com/project/derickr/xdebug/builds/31637026, and then click on the Artifacts tab to find other .zip files. |
|
that FIXED the problem:
Thanks! |
|
Sorry @derick I'm not set up with a compiler on that box. |
|
Thanks |
|
Thanks for testing. I'll go and release 2.9.4 now with that fix. |
|
Any reason why the Windows DLLs for 2.9.4 are not available on the PECL website? See https://windows.php.net/downloads/pecl/releases/xdebug and https://pecl.php.net/package/xdebug/2.9.4/windows |
|
Just to confirm that 2.9.4 fixes this bug for my on the Centos environment too. |
Date Modified | Username | Field | Change |
---|---|---|---|
2020-03-15 16:47 | JeremyDunn | New Issue | |
2020-03-15 16:51 | JeremyDunn | Note Added: 0005298 | |
2020-03-17 15:51 | mlocati | Note Added: 0005299 | |
2020-03-18 16:56 | Otomatic | Note Added: 0005300 | |
2020-03-18 20:49 | derick | Relationship added | has duplicate 0001765 |
2020-03-21 11:09 | derick | Relationship added | has duplicate 0001767 |
2020-03-21 11:21 | derick | Assigned To | => derick |
2020-03-21 11:21 | derick | Status | new => feedback |
2020-03-21 11:21 | derick | Note Added: 0005304 | |
2020-03-21 11:27 | jjo5555 | Note Added: 0005305 | |
2020-03-21 11:28 | jjo5555 | Note Added: 0005306 | |
2020-03-21 11:47 | derick | Note Added: 0005307 | |
2020-03-21 13:21 | JeremyDunn | File Added: Report.wer | |
2020-03-21 13:21 | JeremyDunn | Note Added: 0005308 | |
2020-03-21 13:21 | JeremyDunn | Status | feedback => assigned |
2020-03-21 13:34 | JeremyDunn | Note Added: 0005309 | |
2020-03-21 15:51 | Otomatic | Note Added: 0005310 | |
2020-03-21 16:40 | derick | Note Added: 0005311 | |
2020-03-21 16:51 | JeremyDunn | Note Added: 0005312 | |
2020-03-21 19:48 | jjo5555 | Note Added: 0005313 | |
2020-03-21 19:52 | jjo5555 | Note Added: 0005314 | |
2020-03-21 20:15 | derick | Note Added: 0005316 | |
2020-03-21 20:26 | jjo5555 | Note Added: 0005317 | |
2020-03-21 21:35 | jjo5555 | Note Added: 0005318 | |
2020-03-22 11:12 | derick | Status | assigned => confirmed |
2020-03-22 11:12 | derick | Note Added: 0005319 | |
2020-03-22 12:45 | xeuron | Note Added: 0005320 | |
2020-03-22 18:03 | derick | Summary | apache 2.4.41 crashes with PHP 7.3.15 and xdebug 2.9.3 => Crash while setting opcode overrides in ZTS mode |
2020-03-22 18:24 | derick | Status | confirmed => feedback |
2020-03-22 18:24 | derick | Note Added: 0005321 | |
2020-03-22 19:46 | JeremyDunn | Note Added: 0005323 | |
2020-03-22 19:46 | JeremyDunn | Status | feedback => assigned |
2020-03-22 19:55 | jjo5555 | Note Added: 0005324 | |
2020-03-23 08:05 | Otomatic | Note Added: 0005329 | |
2020-03-23 11:17 | derick | Status | assigned => closed |
2020-03-23 11:17 | derick | Resolution | open => fixed |
2020-03-23 11:17 | derick | Fixed in Version | => 2.9.4 |
2020-03-23 11:17 | derick | Note Added: 0005331 | |
2020-03-23 11:17 | derick | Category | Installation => Code Coverage |
2020-03-23 15:07 | mlocati | Note Added: 0005335 | |
2020-03-24 18:20 | jjo5555 | Note Added: 0005344 |