ID:               37083
 Updated by:       [EMAIL PROTECTED]
 Reported By:      [EMAIL PROTECTED]
 Status:           Assigned
 Bug Type:         SOAP related
 Operating System: *
 PHP Version:      5CVS-2006-04-14 (snap)
 Assigned To:      andrei
 New Comment:

>From the logs on the AXIS side of the server I can see that the crash
now occurs on the decoding side (parsing the response from AXIS). Hope
that helps...


Previous Comments:
------------------------------------------------------------------------

[2006-04-15 21:50:44] [EMAIL PROTECTED]

And xsd:anyType is mapped to xml without encoding... Could this be the
problem now?

------------------------------------------------------------------------

[2006-04-15 20:46:55] [EMAIL PROTECTED]

Andrei, also take a look at these lines in php_encoding.c:

line 358
        if (encode == NULL) {
            encode = get_conversion(UNKNOWN_TYPE);
        }
        if (encode->to_xml_before) {
            data = encode->to_xml_before(&encode->details, data);
        }
line 365
The get_conversion() may return NULL, but you're using encode without
checking it for NULL. 
>From what I can see, the backtrace points exactly to this problem:

Program received signal SIGSEGV, Segmentation fault.
master_to_xml (encode=0x424b60, data=0x43fc28, style=1,
parent=0x429740)
at /pangaea/install/php5.1-200604131430/ext/soap/php_encoding.c:363
363                             data =
encode->to_xml_before(&encode->details, data);

------------------------------------------------------------------------

[2006-04-15 16:40:42] [EMAIL PROTECTED]

>From the webserver log i can see that the crash occurs always in
function "get_conversion()" (SIGSEGV or SIGBUS):
CORE3262: Crash occurred in function get_conversion from module
/pangaea/webserver61/bin/libphp5.so

Funny is the follwing:
CORE3262: Crash occurred in function free from module
/usr/lib/libmtmalloc.so.1 

When server dies with SIGILL (which is mostly the case)nothing is said
about the location.

------------------------------------------------------------------------

[2006-04-15 16:15:29] [EMAIL PROTECTED]

It is the same problem as before. The backtrace of the weserver is
unusable because stack corrupt (mostly SIGILL, sometimes SIGSEGV but
also without stack). I yesterday tried to get a backtrace (for the
problem you fixed) the whole afternoon... It was horrible. With the CLI
script it was reproducible but this time the CLI script works.

It is always soap client code, the soap server runs in AXIS (see wsdl
in client code script). The script is used in the webserver with some
additional parameter parsing logic, but the core used is the soap code
from my last mail.

I think the script does in CLI mode also bad things but it does not
crash. In the webserver, where more things are running at the same time
the corrupt memory leads to a crash.

I hoped that you see the error when looking at the WSDL used:
http://opteron.bremen.wdc-mare.org:8800/servlet/AXIS/Search?wsdl
Could be that there is an error in your code that makes this crash (the
xsd:anyType in the RangeQuery or in the result???)

------------------------------------------------------------------------

[2006-04-15 16:03:45] [EMAIL PROTECTED]

Does it crash in the client code or the server code? Can you provide a
short script that reproduces it on the webserver as well as a
backtrace?

------------------------------------------------------------------------

The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
    http://bugs.php.net/37083

-- 
Edit this bug report at http://bugs.php.net/?id=37083&edit=1

Reply via email to