ID: 36626
Updated by: [EMAIL PROTECTED]
Reported By: fcartegnie at nordnet dot fr
-Status: Open
+Status: Feedback
Bug Type: Reproducible crash
Operating System: Linux
PHP Version: 4.4.2
New Comment:
We still need a reproduce code.
Previous Comments:
------------------------------------------------------------------------
[2006-03-06 13:58:33] fcartegnie at nordnet dot fr
Well, as far as I've gone, I've fixed my php code.
I use a global class which handles mysql connections.(no reconnects
each time, but without persistent connexion)
The sigsev comes when I use the existing sql connection from inside the
uksort user_functions.
Creating a new class from there make it works :(
------------------------------------------------------------------------
[2006-03-06 13:39:06] fcartegnie at nordnet dot fr
no can't do sir :(
I can't isolate a subset of calls wich creates crash.
I'm only able to produce it with full data & code.
------------------------------------------------------------------------
[2006-03-06 13:16:50] [EMAIL PROTECTED]
And don't forget to disable all zend_extensions like APC, Zend
Optimizer, IonCube etc. before that.
------------------------------------------------------------------------
[2006-03-06 13:10:55] [EMAIL PROTECTED]
Don't send coredumps, they are useles. Please, provide a short
reproducable script - no more than 25 lines.
------------------------------------------------------------------------
[2006-03-06 12:18:49] fcartegnie at nordnet dot fr
I can't give you the code, as it's more like thousand lines with
dependancies.
I sent you privately a core dump.
As far as I identified, it seems it's a running schema like this ->
uksort (data, function_a)
function_a(a,b)
{
return function_b(a) < function_b(b)
}
with
function_b(x)
{
(code)
//in come cases
include_once("morefunctions.inc.php");
}
commenting the include_once, let it work flawless.
Included functions are just sql code without uksort.
So this currently seems from include_once. Also debugging gives me that
the referenced user function is out of bounds.
The last lines of strace output:
rt_sigaction(SIGPIPE, {SIG_IGN}, {SIG_IGN}, 8) = 0
fcntl64(7, F_SETFL, O_RDWR|O_NONBLOCK) = 0
read(7, 0x8b84aa8, 8192) = -1 EAGAIN (Resource
temporarily unavailable)
fcntl64(7, F_SETFL, O_RDWR) = 0
write(7, "\1\0\0\0\1", 5) = 5
shutdown(7, 2 /* send and receive */) = 0
close(7) = 0
rt_sigaction(SIGPIPE, {SIG_IGN}, {SIG_IGN}, 8) = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV (core dumped) +++
I don't have the error on Athlon/2.6.15. Error comes on a Xeon/2.6.12.
First I thought about a stat_64 flaw, but the include and the 2.6.15
trace shows the right next instructions are to load the file (the
included_once one).
include_once causes too much locking ?
------------------------------------------------------------------------
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/36626
--
Edit this bug report at http://bugs.php.net/?id=36626&edit=1