php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #70684 PHP 5.6 x86 version crash with Composer
Submitted: 2015-10-10 09:23 UTC Modified: 2015-10-20 17:36 UTC
From: pear at laurent-laville dot org Assigned:
Status: Closed Package: timezonedb (PECL)
PHP Version: 5.6.14 OS: Windows
Private report: No CVE-ID: None
View Add Comment Developer Edit
Welcome! If you don't have a Git account, you can't do anything here.
You can add a comment by following this link or if you reported this bug, you can edit this bug over here.
Block user comment
Status: Assign to:
Package:
Bug Type:
Summary:
From: pear at laurent-laville dot org
New email:
PHP Version: OS:

 

 [2015-10-10 09:23 UTC] pear at laurent-laville dot org
Description:
------------
I've recently installed all 2015.7 x86 versions (PHP 7.0, 5.6, 5.4, 5.3) on my windows platform (Vista 32bit).

When I used Composer phar distrib ( Composer version 1.0-dev (7a9eb02190d334513e99a479510f87eed18cf958) 2015-10-07 10:05:33 ), I've no crash with PHP 7.0, 5.4 and 5.3 versions.

But when I used 2015.7 PHP 5.6 x86 version, Composer cannot be executed.

Looking on my Windows Event Observer, I got such Application Error enty :


Nom du journal :Application
Source :       Application Error
Date :         10/10/2015 11:17:01
ID de l'événement :1000
Catégorie de la tâche :(100)
Niveau :       Erreur
Mots clés :    Classique
Utilisateur :  N/A
Ordinateur :   NOMADE
Description :
Application défaillante php.exe, version 5.6.14.0, horodatage 0x560c5571, module défaillant MSVCR110.dll, version 11.0.51106.1, horodatage 0x5098858e, code d’exception 0xc0000005, décalage d’erreur 0x0000e33d, ID du processus 0x1750, heure de début de l’application 0x01d1033c6bf6a95b.
XML de l’événement :
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
  <System>
    <Provider Name="Application Error" />
    <EventID Qualifiers="0">1000</EventID>
    <Level>2</Level>
    <Task>100</Task>
    <Keywords>0x80000000000000</Keywords>
    <TimeCreated SystemTime="2015-10-10T09:17:01.000Z" />
    <EventRecordID>302908</EventRecordID>
    <Channel>Application</Channel>
    <Computer>NOMADE</Computer>
    <Security />
  </System>
  <EventData>
    <Data>php.exe</Data>
    <Data>5.6.14.0</Data>
    <Data>560c5571</Data>
    <Data>MSVCR110.dll</Data>
    <Data>11.0.51106.1</Data>
    <Data>5098858e</Data>
    <Data>c0000005</Data>
    <Data>0000e33d</Data>
    <Data>1750</Data>
    <Data>01d1033c6bf6a95b</Data>
  </EventData>
</Event>
   



Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2015-10-10 10:29 UTC] ab@php.net
-Status: Open +Status: Feedback
 [2015-10-10 10:29 UTC] ab@php.net
Thanks for the report. Can you please provide more info about how to reproduce the crash? Maybe you could also check whether a process dump is already produced and linked in the event log item.

Thanks.
 [2015-10-13 17:16 UTC] pear at laurent-laville dot org
-Status: Feedback +Status: Open
 [2015-10-13 17:16 UTC] pear at laurent-laville dot org
I've got the same issue with PHP 5.5 x86 DLL (now available: see issue #70683).

Here are more info on windows event observer I got 

Version=1
EventType=APPCRASH
EventTime=130892298547674000
ReportType=2
Consent=1
UploadTime=130892298578404000
Response.BucketId=281513395
Response.BucketTable=25
Response.type=4
Sig[0].Name=Nom de l’application
Sig[0].Value=php.exe
Sig[1].Name=Version de l’application
Sig[1].Value=5.5.30.0
Sig[2].Name=Horodatage de l'application
Sig[2].Value=560c4bd7
Sig[3].Name=Nom du module par défaut
Sig[3].Value=MSVCR110.dll
Sig[4].Name=Version du module par défaut
Sig[4].Value=11.0.51106.1
Sig[5].Name=Horodateur du module par défaut
Sig[5].Value=5098858e
Sig[6].Name=Code de l’exception
Sig[6].Value=c0000005
Sig[7].Name=Décalage de l’exception
Sig[7].Value=0000e33d
DynamicSig[1].Name=Version du système
DynamicSig[1].Value=6.0.6002.2.2.0.768.3
DynamicSig[2].Name=Identificateur de paramètres régionaux
DynamicSig[2].Value=1036
DynamicSig[22].Name=Information supplémentaire n° 1
DynamicSig[22].Value=c862
DynamicSig[23].Name=Information supplémentaire n° 2
DynamicSig[23].Value=b3f41f7f6847d4490c7d193672cbbf67
DynamicSig[24].Name=Information supplémentaire n° 3
DynamicSig[24].Value=dc8c
DynamicSig[25].Name=Information supplémentaire n° 4
DynamicSig[25].Value=277421de71c3c4dc2c35e4693e18997d
UI[2]=C:\UwAmp\bin\php\php-5.5.30\php.exe
UI[3]=CLI a cessé de fonctionner
UI[4]=Windows peut rechercher une solution au problème en ligne.
UI[5]=Rechercher une solution en ligne et fermer le programme
UI[6]=Rechercher ultérieurement une solution en ligne et fermer le programme
UI[7]=Fermer le programme
State[0].Key=Transport.DoneStage1
State[0].Value=1
State[1].Key=DataRequest
State[1].Value=Bucket=281513395/nBucketTable=25/nResponse=1/n
FriendlyEventName=Fonctionnement arrêté
ConsentKey=APPCRASH
AppName=CLI
AppPath=C:\UwAmp\bin\php\php-5.5.30\php.exe
 [2015-10-13 17:19 UTC] pear at laurent-laville dot org
And with PHP 5.6

Version=1
EventType=APPCRASH
EventTime=130892302301274000
ReportType=2
Consent=1
UploadTime=130892302332054000
Response.BucketId=275075999
Response.BucketTable=25
Response.type=4
Sig[0].Name=Nom de l’application
Sig[0].Value=php.exe
Sig[1].Name=Version de l’application
Sig[1].Value=5.6.14.0
Sig[2].Name=Horodatage de l'application
Sig[2].Value=560c5571
Sig[3].Name=Nom du module par défaut
Sig[3].Value=MSVCR110.dll
Sig[4].Name=Version du module par défaut
Sig[4].Value=11.0.51106.1
Sig[5].Name=Horodateur du module par défaut
Sig[5].Value=5098858e
Sig[6].Name=Code de l’exception
Sig[6].Value=c0000005
Sig[7].Name=Décalage de l’exception
Sig[7].Value=0000e33d
DynamicSig[1].Name=Version du système
DynamicSig[1].Value=6.0.6002.2.2.0.768.3
DynamicSig[2].Name=Identificateur de paramètres régionaux
DynamicSig[2].Value=1036
DynamicSig[22].Name=Information supplémentaire n° 1
DynamicSig[22].Value=91d7
DynamicSig[23].Name=Information supplémentaire n° 2
DynamicSig[23].Value=7156f06872e178704368362ea1a5ce9b
DynamicSig[24].Name=Information supplémentaire n° 3
DynamicSig[24].Value=e6ea
DynamicSig[25].Name=Information supplémentaire n° 4
DynamicSig[25].Value=21ea895f9d4d08c5e25584700051bda3
UI[2]=C:\UwAmp\bin\php\php-5.6.14\php.exe
UI[3]=CLI a cessé de fonctionner
UI[4]=Windows peut rechercher une solution au problème en ligne.
UI[5]=Rechercher une solution en ligne et fermer le programme
UI[6]=Rechercher ultérieurement une solution en ligne et fermer le programme
UI[7]=Fermer le programme
State[0].Key=Transport.DoneStage1
State[0].Value=1
State[1].Key=DataRequest
State[1].Value=Bucket=275075999/nBucketTable=25/nResponse=1/n
FriendlyEventName=Fonctionnement arrêté
ConsentKey=APPCRASH
AppName=CLI
AppPath=C:\UwAmp\bin\php\php-5.6.14\php.exe
 [2015-10-15 10:11 UTC] ab@php.net
-Status: Open +Status: Feedback
 [2015-10-15 10:11 UTC] ab@php.net
Thanks for the update. Please read how to get a backtrace here https://bugs.php.net/bugs-generating-backtrace-win32.php . We need a backtrace to evaluate the cause of the crash.

Another thing - from what I see, you use UwAmp. Please check whether you have a crash with the vanilla binaries from php.net .

Thanks.
 [2015-10-15 19:12 UTC] pear at laurent-laville dot org
-Status: Feedback +Status: Open
 [2015-10-15 19:12 UTC] pear at laurent-laville dot org
I cannot produced backtrace.

BTW, with your comment on #70721, I've retried to run application (like Composer) that produced crash on PHP 7.0 RC5 and PHP 5.6.15 RC1 that included the bundle version of timezonedb 2015.7 and I got no issue.
 [2015-10-16 10:25 UTC] ab@php.net
-Status: Open +Status: Feedback
 [2015-10-16 10:25 UTC] ab@php.net
Yeah, thanks for the check. The timezonedb ext is primarily intended to be loaded in the lower PHP versions where the bundled version is outdated.

Without a BT it's hard to say what happens on your side, i don't reproduce any crash. So I tend to say it's either something in your configuration, or it's something with the LAMP distribution you use. What does the vanilla PHP show?

Thanks.
 [2015-10-16 20:11 UTC] pear at laurent-laville dot org
-Status: Feedback +Status: Open
 [2015-10-16 20:11 UTC] pear at laurent-laville dot org
I used UwAmp since a long time, and each time there are new PHP versions (either RC or stable), I download binaries from "windows.php.net", replacing older versions by newest.

I have no issue with all DLL downloaded from "pecl.php.net". To be honest, this is the first time (2015.7) I've tested timezonedb. 

Sorry but I don't understand what is vanilla / what it should be suppose to do!

Thanks to take time to reply to my posts.
 [2015-10-16 21:30 UTC] ab@php.net
-Status: Open +Status: Feedback
 [2015-10-16 21:30 UTC] ab@php.net
Yeah, vanilla meant exactly that, the official PHP binaries. Thanks for not giving up :) 

Maybe it could have success to use this approach https://msdn.microsoft.com/en-us/library/windows/desktop/bb787181%28v=vs.85%29.aspx . That way it could possibly produce a crash dump file that you could share. To reproduce the crash, please switch into the PHP dir on cmd run it as follows on console

php.exe -n -d extension_dir=ext -d extension=php_timezone.dll -i

If you've a dump, please share it.


BTW i've just checked the UwAmp distribution 3.0.1 and - the Apache build is done with VS2008 while fe PHP 5.5 is officially built with VS2012. That can bring sporadic crashes when PHP is used as module, especially when some sensitive exts are used (like openssl). It doesn't look like the case you have, but in general I wouldn't recommend using this distribution if you use PHP as module as it mixes binaries done with incompatible CRT versions.

Thanks.
 [2015-10-16 21:55 UTC] pear at laurent-laville dot org
-Status: Feedback +Status: Open
 [2015-10-16 21:55 UTC] pear at laurent-laville dot org
Link provided allow me to share the dump files now.

PHP 5.5.30 => php.exe.4836.dmp
PHP 5.6.14 => php.exe.5512.dmp
 [2015-10-16 21:59 UTC] pear at laurent-laville dot org
Zip files that contains dmp files are available at
http://laurent-laville.org/php/
 [2015-10-17 13:03 UTC] ab@php.net
Thanks for the dumps. Whereby i've asked to run php without any extensions loaded ;) But now from the dump, here's the BT


 	msvcr110.dll!memcpy(unsigned char * dst, unsigned char * src, unsigned long count) Line 305	Unknown
>	php5ts.dll!execute_internal(_zend_execute_data * execute_data_ptr, _zend_fcall_info * fci, int return_value_used, void * * * tsrm_ls) Line 1531	C
 	php5ts.dll!zend_do_fcall_common_helper_SPEC(_zend_execute_data * execute_data, void * * * tsrm_ls) Line 560	C
 	php5ts.dll!ZEND_USER_OPCODE_SPEC_HANDLER(_zend_execute_data * execute_data, void * * * tsrm_ls) Line 1313	C
 	php5ts.dll!execute_ex(_zend_execute_data * execute_data, void * * * tsrm_ls) Line 363	C
 	php5ts.dll!ZEND_USER_OPCODE_SPEC_HANDLER(_zend_execute_data * execute_data, void * * * tsrm_ls) Line 1313	C
 	php5ts.dll!execute_ex(_zend_execute_data * execute_data, void * * * tsrm_ls) Line 363	C
 	php5ts.dll!zend_extension_statement_handler(const _zend_extension * extension, _zend_op_array * op_array, void * * * tsrm_ls) Line 985	C
 	php5ts.dll!ZEND_USER_OPCODE_SPEC_HANDLER(_zend_execute_data * execute_data, void * * * tsrm_ls) Line 1313	C

The research shows, that the crash is most likely caused by xdebug. You could try to upgrade xdebug. Or, if you always use latest PHP, you don't need timezone. I have no idea about compatibility of xdebug and timezonedb, it might make sense you to close this ticket and report to xdebug bugtracker instead.

Thanks.
 [2015-10-20 17:36 UTC] pear at laurent-laville dot org
Ok, as I've already the latest version of xdebug (2.3.3), and it was only a test attempt only. And I got no issues with versions 2015.7 embeded in PHP 5, I think it's acceptable to close this issue.

Thanks BTW, to share how to dump and retrieve crash reports on windows.

Laurent :)
 [2015-10-20 17:36 UTC] pear at laurent-laville dot org
-Status: Open +Status: Closed
 [2015-10-20 17:36 UTC] pear at laurent-laville dot org
See my previous comment
 
PHP Copyright © 2001-2018 The PHP Group
All rights reserved.
Last updated: Mon Nov 19 11:01:25 2018 UTC