#25942 [Asn->Bgs]: When non-local OCILogon call fails, PEAR::SOAP enters recursive loop
| From: | alan_k@php.net | Date: | Wed, 01 Sep 2004 14:45:31 +0000 |
| Subject: | #25942 [Asn->Bgs]: When non-local OCILogon call fails, PEAR::SOAP enters recursive loop | ||
| References: | 1 | Groups: | php.pear.dev |
| Request: | Send a blank email to pear-dev+get-33167@lists.php.net to get a copy of this message | ||
ID: 25942
Updated by: alan_k@php.net
Reported By: jpatrin at pnicorp dot com
-Status: Assigned
+Status: Bogus
Bug Type: PEAR related
Operating System: Linux
PHP Version: 4.3.3
Assigned To: arnaud
New Comment:
if you are still experiencing this, can you move this on pear.php.net,
as it is a little more likely the maintainer will see it.
Previous Comments:
------------------------------------------------------------------------
[2003-10-27 15:35:57] jpatrin at pnicorp dot com
I have just tested it with mysql:// instead of oci8:// and the same
thing happens. This looks more and more like a problem with
PEAR::SOAP's error handling function.
------------------------------------------------------------------------
[2003-10-21 19:57:21] jpatrin at pnicorp dot com
I completely forgot to mention that if I set my own error handling
function for the duration of the connect that this all works fine. This
is shown in the example code given.
(This is very strange to me as I'm using the PEAR DB class, which does
its own error handling.)
------------------------------------------------------------------------
[2003-10-21 19:54:39] jpatrin at pnicorp dot com
Description:
------------
Using PEAR::SOAP 0.8RC2.
When a SOAP Server class method calls a method (in the case I tested,
it is the PEAR::DB::connect method) which calls OCILogon and it fails,
the SOAP server enters an infinite loop (after the server function
ends) and segfaults the apache child process. The infinite loop seems
to be in Base::_serializeValue (logging the values, names, and types
shows repetition of the same thing over and over).
If I do an OCILogon IN the server function, the soap server catches the
error fine and returns it.
Another possible bug. If I do the OCILogon IN the server function and
the length of the name of the server class and the length of the name
of the function called add up to more than 29, the same segfault
problem happens. For an example, try commenting out the OCILogon code
(and commenting the PEAR::DB code) in the abcde function and adding 'y'
to the class name.
None of this seems to happen when using mysql.
Reproduce code:
---------------
Sample scripts at URL provided.
http://www.reversefold.com/~papercrane/pearSoapError.tgz
Expected result:
----------------
Error: DB Error: connect failed
Actual result:
--------------
Error: curl_exec error 52 Empty reply from server
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=25942&edit=1