From: thetaphi@php.net
Operating system: Solaris 2.9
PHP version: 5CVS-2006-04-14 (snap)
PHP Bug Type: SOAP related
Bug description: Frequent crashs in SOAP extension with new WSDL caching code in multithread WS
Description:
------------
Yesterday I tried the newest PHP 5.1 snapshot on my SunONE webserver (I am
the maintainer of the NSAPI SAPI code). This webserver is multithreaded so
your new WSDL caching code in ext/soap should work great. But it doesn't.
The first call to a php script that uses SoapClient works correct
(everytime). Further requests to the same script crash the webserver with
SIGSERV, SIGBUS, SIGILL (illegal instruction!!!).
Because of the SIGILL I suspect that the caching code overwrites some
executale code.
The problem is that it happens at totally different locations, most times
there is not even a core dump available that can be analyzed (stack is
corrupt so no dump availabe). When I disable soap.wsdl-cache completely,
everything works again without any crash. I have seen that with the new
code no longer /tmp/wsdl-XXXXX files are generated. Is there a possibility
to switch
to the older file-based caching code? For eaxample as enumeration in the
wsdl-cache php.ini configuration option? Is there any other possibility to
disable the wsdl cache code without undoing a lot of soap patches? I want
to update the webserver because of security
reasons to latest snapshot.
Do you have similar problems with other webservers that are multithreaded?
Sorry that I cannot give more helpful information (the crashes are totally
different and the corefiles are mostly useless).
Reproduce code:
---------------
The first time after restart this code works without problems. Later calls
(when using the cashed WSDL) mostly crash:
$ws=new
SoapClient('http://ws.pangaea.de/ws/services/PangaVista?wsdl',array('encoding'=>'ISO-8859-1'));
$ua=isset($_SERVER['HTTP_USER_AGENT'])?$_SERVER['HTTP_USER_AGENT']:'nobrowser/0.0';
$sess=$ws->registerSession($this->session,$ua,$_SERVER['REMOTE_HOST'],"PangaVista");
$search=new stdClass();
$search->queryString='grobe';
$res=$ws->advSearch($sess,$search,$this->offset,$this->count,'thumb');
print_r($res);
Expected result:
----------------
No crash :)
Actual result:
--------------
All crashs from server log:
[13/Apr/2006:16:47:26] catastrophe (23690): CORE3260: Server crash
detected (signal SIGSEGV)
[13/Apr/2006:16:47:26] info (23690): CORE3261: Crash occurred in NSAPI SAF
php5_execute
[13/Apr/2006:16:47:43] catastrophe (25142): CORE3260: Server crash
detected (signal SIGSEGV)
[13/Apr/2006:16:47:43] info (25142): CORE3261: Crash occurred in NSAPI SAF
php5_execute
[13/Apr/2006:16:48:33] catastrophe (25149): CORE3260: Server crash
detected (signal SIGILL)
[13/Apr/2006:16:48:33] info (25149): CORE3261: Crash occurred in NSAPI SAF
php5_execute
[13/Apr/2006:16:49:35] catastrophe (25237): CORE3260: Server crash
detected (signal SIGILL)
[13/Apr/2006:16:49:35] info (25237): CORE3261: Crash occurred in NSAPI SAF
php5_execute
[13/Apr/2006:18:38:15] catastrophe ( 8381): CORE3260: Server crash
detected (signal SIGBUS)
[13/Apr/2006:18:38:15] info ( 8381): CORE3261: Crash occurred in NSAPI SAF
php5_execute
[13/Apr/2006:18:38:15] info ( 8381): CORE3262: Crash occurred in function
master_to_xml from module /pangaea/webserver61/bin/libphp5.so
[13/Apr/2006:18:39:13] catastrophe (10615): CORE3260: Server crash
detected (signal SIGBUS)
[13/Apr/2006:18:39:13] info (10615): CORE3261: Crash occurred in NSAPI SAF
php5_execute
[13/Apr/2006:18:39:13] info (10615): CORE3262: Crash occurred in function
master_to_xml from module /pangaea/webserver61/bin/libphp5.so
[13/Apr/2006:18:39:43] catastrophe (11680): CORE3260: Server crash
detected (signal SIGILL)
[13/Apr/2006:18:39:43] info (11680): CORE3261: Crash occurred in NSAPI SAF
php5_execute
[13/Apr/2006:18:44:03] catastrophe (11702): CORE3260: Server crash
detected (signal SIGSEGV)
[13/Apr/2006:18:44:03] info (11702): CORE3261: Crash occurred in NSAPI SAF
php5_execute
[13/Apr/2006:18:44:03] info (11702): CORE3262: Crash occurred in function
encode_reset_ns from module /pangaea/webserver61/bin/libphp5.so
[13/Apr/2006:18:45:48] catastrophe (11763): CORE3260: Server crash
detected (signal SIGSEGV)
[13/Apr/2006:18:45:48] info (11763): CORE3261: Crash occurred in NSAPI SAF
php5_execute
[13/Apr/2006:18:45:59] catastrophe (11823): CORE3260: Server crash
detected (signal SIGSEGV)
[13/Apr/2006:18:45:59] info (11823): CORE3261: Crash occurred in NSAPI SAF
php5_execute
[13/Apr/2006:18:59:50] catastrophe (12139): CORE3260: Server crash
detected (signal SIGILL)
[13/Apr/2006:18:59:50] info (12139): CORE3261: Crash occurred in NSAPI SAF
php5_execute
[13/Apr/2006:19:00:26] catastrophe (12148): CORE3260: Server crash
detected (signal SIGSEGV)
[13/Apr/2006:19:00:26] info (12148): CORE3261: Crash occurred in NSAPI SAF
php5_execute
[13/Apr/2006:19:02:17] catastrophe (12182): CORE3260: Server crash
detected (signal SIGSEGV)
[13/Apr/2006:19:02:17] info (12182): CORE3261: Crash occurred in NSAPI SAF
php5_execute
[13/Apr/2006:19:02:17] info (12182): CORE3262: Crash occurred in function
strcmp from module /usr/lib/libc.so.1
[13/Apr/2006:19:02:29] catastrophe (12214): CORE3260: Server crash
detected (signal SIGSEGV)
[13/Apr/2006:19:02:29] info (12214): CORE3261: Crash occurred in NSAPI SAF
php5_execute
[13/Apr/2006:19:12:54] catastrophe (23547): CORE3260: Server crash
detected (signal SIGILL)
[13/Apr/2006:19:12:54] info (23547): CORE3261: Crash occurred in NSAPI SAF
php5_execute
[13/Apr/2006:20:02:13] catastrophe ( 1965): CORE3260: Server crash
detected (signal SIGSEGV)
[13/Apr/2006:20:02:13] info ( 1965): CORE3261: Crash occurred in NSAPI SAF
php5_execute
[13/Apr/2006:20:02:13] info ( 1965): CORE3262: Crash occurred in function
encode_reset_ns from module /pangaea/webserver61/bin/libphp5.so
[13/Apr/2006:20:04:37] catastrophe ( 3221): CORE3260: Server crash
detected (signal SIGSEGV)
[13/Apr/2006:20:04:37] info ( 3221): CORE3261: Crash occurred in NSAPI SAF
php5_execute
[13/Apr/2006:20:04:37] info ( 3221): CORE3262: Crash occurred in function
whiteSpace_collapse from module /pangaea/webserver61/bin/libphp5.so
[13/Apr/2006:20:05:53] catastrophe ( 5772): CORE3260: Server crash
detected (signal SIGILL)
[13/Apr/2006:20:05:53] info ( 5772): CORE3261: Crash occurred in NSAPI SAF
php5_execute
[13/Apr/2006:20:07:38] catastrophe ( 5845): CORE3260: Server crash
detected (signal SIGBUS)
[13/Apr/2006:20:07:38] info ( 5845): CORE3261: Crash occurred in NSAPI SAF
php5_execute
[13/Apr/2006:20:07:38] info ( 5845): CORE3262: Crash occurred in function
master_to_xml from module /pangaea/webserver61/bin/libphp5.so
[13/Apr/2006:20:13:10] catastrophe ( 5916): CORE3260: Server crash
detected (signal SIGSEGV)
[13/Apr/2006:20:13:10] info ( 5916): CORE3261: Crash occurred in NSAPI SAF
php5_execute
[13/Apr/2006:20:13:10] info ( 5916): CORE3262: Crash occurred in function
whiteSpace_collapse from module /pangaea/webserver61/bin/libphp5.so
--
Edit bug report at http://bugs.php.net/?id=37083&edit=1
--
Try a CVS snapshot (PHP 4.4): http://bugs.php.net/fix.php?id=37083&r=trysnapshot44
Try a CVS snapshot (PHP 5.1): http://bugs.php.net/fix.php?id=37083&r=trysnapshot51
Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=37083&r=trysnapshot60
Fixed in CVS: http://bugs.php.net/fix.php?id=37083&r=fixedcvs
Fixed in release: http://bugs.php.net/fix.php?id=37083&r=alreadyfixed
Need backtrace: http://bugs.php.net/fix.php?id=37083&r=needtrace
Need Reproduce Script: http://bugs.php.net/fix.php?id=37083&r=needscript
Try newer version: http://bugs.php.net/fix.php?id=37083&r=oldversion
Not developer issue: http://bugs.php.net/fix.php?id=37083&r=support
Expected behavior: http://bugs.php.net/fix.php?id=37083&r=notwrong
Not enough info: http://bugs.php.net/fix.php?id=37083&r=notenoughinfo
Submitted twice: http://bugs.php.net/fix.php?id=37083&r=submittedtwice
register_globals: http://bugs.php.net/fix.php?id=37083&r=globals
PHP 3 support discontinued: http://bugs.php.net/fix.php?id=37083&r=php3
Daylight Savings: http://bugs.php.net/fix.php?id=37083&r=dst
IIS Stability: http://bugs.php.net/fix.php?id=37083&r=isapi
Install GNU Sed: http://bugs.php.net/fix.php?id=37083&r=gnused
Floating point limitations: http://bugs.php.net/fix.php?id=37083&r=float
No Zend Extensions: http://bugs.php.net/fix.php?id=37083&r=nozend
MySQL Configuration Error: http://bugs.php.net/fix.php?id=37083&r=mysqlcfg