ID:               21040
 Updated by:       [EMAIL PROTECTED]
 Reported By:      [EMAIL PROTECTED]
-Status:           Open
+Status:           Feedback
 Bug Type:         Apache2 related
 Operating System: Solaris x86 2.7
 PHP Version:      4.4.0-dev
 New Comment:

Sounds like some is taking over the handler for the SIGPROF and it
never gets to PHP. Besides PHP, what modules/extensions do you have
enabled in your Apache?


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

[2002-12-16 06:44:11] [EMAIL PROTECTED]

Works on FreeBSD 4.x (with unmodified PHP source).
So it's kind of Solaris-specific (will test on Sparc)

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

[2002-12-16 05:12:57] [EMAIL PROTECTED]

[oops, posted this as "add comment" because I hadn't read the direction
to use "edit submission" instead yet --sorry]

Just out of curiosity, and admittedly not quite understanding what I
was doing, I have tried changing the zend_set_timeout code to use
SIGALRM instead of SIGPROF and thus pass ITIMER_REAL to setitimer
instead of ITIMER_PROF

Guess what? It works now.

I understand that this can have nasty side effects. I was just
wondering why SIGPROF was being used and if this could be the reason.
The setitimer man page on Solaris says a lot of things about using it
in MT environment which I don't quite catch :-)

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

[2002-12-16 05:09:03] [EMAIL PROTECTED]

Just out of curiosity, and admittedly not quite understanding what I
was doing, I have tried changing the zend_set_timeout code to use
SIGALRM instead of SIGPROF and thus pass ITIMER_REAL to setitimer
instead of ITIMER_PROF

Guess what? It works now.

I understand that this can have nasty side effects. I was just
wondering why SIGPROF was being used and if this could be the reason.
The setitimer man page on Solaris says a lot of things about using it
in MT environment which I don't quite catch :-)

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

[2002-12-16 05:08:07] [EMAIL PROTECTED]

reopened..(please don't add comments to your own bug report, use the
'Edit Submission' and change the status to open when you give
feedback.)


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

[2002-12-16 04:47:49] [EMAIL PROTECTED]

Just tried with php4-200212160830 (4.4.0-dev): same, the script never
exits.
I'm compiling this on Solaris 2.7/SPARC and FreeBSD 4.5 to see how much
O/S & platform specific this problem is.

I've added a
zend_printf("zend_timeout<BR>\n");
to zend_timeout() (Zend/zend_execute_API.c). I can see the message in
the browser when timeout works (like when running in Apache 1.3) but
not when it doesn't (although my loop.php script now exits after a huge
for loop so that I can see the page output). So I presume that the
signal triggered by setittimer in zend_set_timeout() is never
delivered.

Thanks for the impressively fast reply!

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

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/21040

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

Reply via email to