Bug #72937 [Opn]: SOAP WSDL memory cache alters interpreter exit code
| From: | luza dot mbox at gmail dot com | Date: | Thu, 25 Aug 2016 08:11:23 +0000 |
| Subject: | Bug #72937 [Opn]: SOAP WSDL memory cache alters interpreter exit code | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-203532@lists.php.net to get a copy of this message | ||
Edit report at https://bugs.php.net/bug.php?id=72937&edit=1
ID: 72937
User updated by: luza dot mbox at gmail dot com
Reported by: luza dot mbox at gmail dot com
Summary: SOAP WSDL memory cache alters interpreter exit code
Status: Open
Type: Bug
Package: SOAP related
Operating System: Debian Linux
PHP Version: 7.0.10
Block user comment: N
Private report: N
New Comment:
Described behaviour appears on 7.X only. Version 5.6 has not such issue.
Previous Comments:
------------------------------------------------------------------------
[2016-08-25 08:06:48] luza dot mbox at gmail dot com
Description:
------------
When WSDL caching is enabled and cache in memory option is used, and WSDL consists of several files
imported by using <xsd:import /> tag, PHP interpreter exit code appears to be 1 instead of 0.
PHP 7.0.10 (cli) (built: Aug 19 2016 18:46:19) ( NTS )
Copyright (c) 1997-2016 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies
with Zend OPcache v7.0.10, Copyright (c) 1999-2016, by Zend Technologies
root@0d2dbb96cd17:/data# php -i | grep soap
/usr/local/etc/php/conf.d/docker-php-ext-soap.ini,
soap
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
root@0d2dbb96cd17:/data# php -d soap.wsdl_cache=0 test.php; echo $?
0
root@0d2dbb96cd17:/data# php -d soap.wsdl_cache=1 test.php; echo $?
0
root@0d2dbb96cd17:/data# php -d soap.wsdl_cache=2 test.php; echo $?
1
root@0d2dbb96cd17:/data# php -d soap.wsdl_cache=3 test.php; echo $?
1
Configure Command => './configure'
'--with-config-file-path=/usr/local/etc/php'
'--with-config-file-scan-dir=/usr/local/etc/php/conf.d' '--disable-cgi'
'--enable-ftp' '--enable-mbstring' '--enable-mysqlnd'
'--with-curl' '--with-libedit' '--with-openssl'
'--with-zlib' '--enable-fpm' '--with-fpm-user=www-data'
'--with-fpm-group=www-data'
Test script:
---------------
test.php:
<?php
$wsdl = 'https://api.hermes-dpd.ru/ws/webservice.svc?wsdl';
$bu = '5';
$soapClient = new SoapClient($wsdl, ['soap_version' => SOAP_1_1]);
try {
$result = $soapClient->GetParcelShops(['businessUnitCode' => $bu]);
} catch (\Exception $e) {
}
Expected result:
----------------
Interpreter exit code is 0.
Actual result:
--------------
Interpreter exit code is 1 when WSDL caching in memory is enabled and WSDL consists of several
files.
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=72937&edit=1