ID:               25570
 User updated by:  robert at profundis dot se
 Reported By:      robert at profundis dot se
 Status:           Open
 Bug Type:         Apache2 related
 Operating System: Windows XP Professional SP1
-PHP Version:      4.3.4-dev (20030917)
+PHP Version:      4.3.8
 New Comment:

The only change in the code that seems to be related at a first glance
is in rev 1.1.2.32:
http://cvs.php.net/diff.php/php-src/sapi/apache2handler/sapi_apache2.c?r1=1.1.2.31&r2=1.1.2.32&ty=u

The original problem seems to be triggered when calling
php_handle_aborted_connection() on some occasions. The above revision
change the condition when this function is called.

I have not tested the versions inbetween 4.3.4-dev and 4.3.8, so I
cannot confirm that this particular revision is the "cause".

(I also changed this bug's version number)


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

[2004-10-14 17:09:09] robert at profundis dot se

I change this to Open again.

As Christopher said, this bug seems to have resurfaced. I checked back
in my error log, and I see this same error started happening again the
3rd of september. Checking my notes, I upgraded this server to PHP
4.3.8 a few days earlier. The previous version was 4.3.4-dev (I had
been lazy).

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

[2004-10-14 16:52:55] christopher_theunissen at hotmail dot com

This bug is definitely not fixed or has resurfaced, as I have the same
problem in Windows 2000 with Apache 2.0.52 (51, 40, 49, 48) and the
following PHP versions:
  5.0.2
  5.0.1
  4.3.9
  4.3.8
  4.3.4
  4.3.3

The server restarts with status 4294967295 every few hours.

It has been running fine for 24 hours so far with PHP 4.3.2.

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

[2003-09-18 20:43:21] [EMAIL PROTECTED]

This bug has been fixed in CVS.

In case this was a PHP problem, snapshots of the sources are packaged
every three hours; this change will be in the next snapshot. You can
grab the snapshot at http://snaps.php.net/.
 
In case this was a documentation problem, the fix will show up soon at
http://www.php.net/manual/.

In case this was a PHP.net website problem, the change will show
up on the PHP.net site and on the mirror sites in short time.
 
Thank you for the report, and for helping us make PHP better.



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

[2003-09-18 08:54:13] robert at profundis dot se

By changing three lines in
sapi/apache2handler/sapi_apache2.c, back to how they were in rev.
1.1.2.17, it would not crash anymore on overlapping requests. Ie:

// in 1.1.2.18
if (ap_pass_brigade(r->output_filters, brigade)
    != APR_SUCCESS || r->connection->aborted)

// in 1.1.2.17
if (ap_pass_brigade(r->output_filters, brigade)
    != APR_SUCCESS)

I cannot really guess what implications that change has, but I assume
the extra expression had a purpose. However, with this change I cannot
generate a crash anymore.

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

[2003-09-18 05:08:27] robert at profundis dot se

I did some debugging on my own, and concluded that if two requests
overlap, it will crash. I did some primitive logging in
apache2handler/sapi_apache2.c/php_handler(), and noticed that the last
function to be called was php_handle_aborted_connection(), then Apache
crashed and restarted. This was in cases where the second request
entered php_handler() before the first had left it.

While looking through changes of this source file in the CVS, I noticed
diff 1.1.2.17-18
(http://cvs.php.net/diff.php/php-src/sapi/apache2handler/sapi_apache2.c?login=2&r1=1.1.2.17&r2=1.1.2.18&ty=h)
which was commit just after 4.3.3RC2 (which doesn't crash). Could it
possibly be related? I do currently not have the ability to revert the
change and recompile, but I will do so later.

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

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

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

Reply via email to