#25266 [Fbk-Opn]: connection_status() ( see bug #22072 ).

2004-01-04 Thread avarnals at zigg dot net
 ID:   25266
 User updated by:  avarnals at zigg dot net
 Reported By:  avarnals at zigg dot net
-Status:   Feedback
+Status:   Open
 Bug Type: Apache2 related
 Operating System: Linux 2.4.21
 PHP Version:  4CVS-2003-12-15
 New Comment:

I have repeated the first test with php4-STABLE-200401041830 as an
Apache module. The result is the same as before, i.e. the problem
hasn't gone.

Have you tested this yourself or are just asking me to re-try it every
time there is a new PHP 4 'latest' version?


Previous Comments:


[2004-01-04 14:17:00] [EMAIL PROTECTED]

Please try using this CVS snapshot:

  http://snaps.php.net/php4-STABLE-latest.tar.gz
 
For Windows:
 
  http://snaps.php.net/win32/php4-win32-STABLE-latest.zip





[2003-12-15 19:21:31] avarnals at zigg dot net

I have just repeated the first simple test using
php4-STABLE-200312152230 and Apache 2.0.48, with PHP loaded as an
Apache module.

The bug has not gone. I.e. the httpd process continues to run the
script ( until halted by the PHP time limit ) after the browser's stop
button has been used.



[2003-08-26 22:05:10] avarnals at zigg dot net

Description:

See bug #22072.

Since the above is now closed, I am creating this entry. Please accept
my apologies if it would have been better added to 22072 instead.

I wasn't aware of this potential problem until I saw it in the change
log for 4.3.3, so I thought I'd test it. Something is still not right.
I'm using PHP 4.3.3 with Apache 2.0.47.

My first test was to see whether ignore_user_abort() works as expected.
I used the very simple:

  ignore_user_abort ( false );
  while ( 1 );

This makes it easy to spot in the process list using 'top'. I tested
both using PHP as a dynamically loaded Apache module and the CGI
binary. The latter had safe mode enabled, the former didn't; I don't
know whether this can/should make any difference. In both cases the
script continued to execute after I clicked on the browser's stop
button and until its PHP enforced time limit was reached.

I then went on to test ( using only the Apache module ) using the code
suggested in bug report 22072:

  http://www.mpfreescene.com/test/?option=source

As rather expected now, this continued to execute after I'd used the
stop button.

I went on to test by modifying the code as follows:

  - I set set_time_limit(15); so it would eventually be
  aborted by this limit.
  - I made $m very large.
  - Have the result of connection_status() written to a
  file each time round the loop.
  - I removed the sleep() call.

I ran the script and used the stop button while it was running. It
continued to execute until it had used 15 seconds of CPU time. Log file
shows: httpd: PHP Fatal error:  Maximum execution time of 15 seconds
exceeded in...
The final ( large ) output file contained all zeros and a final 2.

So, it seems that PHP correctly detects and reports the case of a
timeout, but not an abort.

I noticed one other possibly odd thing while doing this. If PHP has
output buffering enabled, the call to flush() results in the script
being immediately shut down ( execution doesn't get to the line
following flush() ). The result of connection_status() when called in
exitfp() is then 1. If the flush() call is removed, the results as
previously described are the same whether or not output buffering is
enabled.

I hope someone can make sense of all this! Do let me know if you would
like any further information.







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


#25266 [NoF-Opn]: connection_status() ( see bug #22072 ).

2003-12-15 Thread avarnals at zigg dot net
 ID:   25266
 User updated by:  avarnals at zigg dot net
 Reported By:  avarnals at zigg dot net
-Status:   No Feedback
+Status:   Open
 Bug Type: Apache2 related
 Operating System: Linux 2.4.21
 PHP Version:  4.3.3
 New Comment:

I have just repeated the first simple test using
php4-STABLE-200312152230 and Apache 2.0.48, with PHP loaded as an
Apache module.

The bug has not gone. I.e. the httpd process continues to run the
script ( until halted by the PHP time limit ) after the browser's stop
button has been used.


Previous Comments:


[2003-12-14 21:17:48] [EMAIL PROTECTED]

No feedback was provided. The bug is being suspended because
we assume that you are no longer experiencing the problem.
If this is not the case and you are able to provide the
information that was requested earlier, please do so and
change the status of the bug back to Open. Thank you.





[2003-12-09 06:15:42] [EMAIL PROTECTED]

Please try using this CVS snapshot:

  http://snaps.php.net/php4-STABLE-latest.tar.gz
 
For Windows:
 
  http://snaps.php.net/win32/php4-win32-STABLE-latest.zip





[2003-08-26 22:05:10] avarnals at zigg dot net

Description:

See bug #22072.

Since the above is now closed, I am creating this entry. Please accept
my apologies if it would have been better added to 22072 instead.

I wasn't aware of this potential problem until I saw it in the change
log for 4.3.3, so I thought I'd test it. Something is still not right.
I'm using PHP 4.3.3 with Apache 2.0.47.

My first test was to see whether ignore_user_abort() works as expected.
I used the very simple:

  ignore_user_abort ( false );
  while ( 1 );

This makes it easy to spot in the process list using 'top'. I tested
both using PHP as a dynamically loaded Apache module and the CGI
binary. The latter had safe mode enabled, the former didn't; I don't
know whether this can/should make any difference. In both cases the
script continued to execute after I clicked on the browser's stop
button and until its PHP enforced time limit was reached.

I then went on to test ( using only the Apache module ) using the code
suggested in bug report 22072:

  http://www.mpfreescene.com/test/?option=source

As rather expected now, this continued to execute after I'd used the
stop button.

I went on to test by modifying the code as follows:

  - I set set_time_limit(15); so it would eventually be
  aborted by this limit.
  - I made $m very large.
  - Have the result of connection_status() written to a
  file each time round the loop.
  - I removed the sleep() call.

I ran the script and used the stop button while it was running. It
continued to execute until it had used 15 seconds of CPU time. Log file
shows: httpd: PHP Fatal error:  Maximum execution time of 15 seconds
exceeded in...
The final ( large ) output file contained all zeros and a final 2.

So, it seems that PHP correctly detects and reports the case of a
timeout, but not an abort.

I noticed one other possibly odd thing while doing this. If PHP has
output buffering enabled, the call to flush() results in the script
being immediately shut down ( execution doesn't get to the line
following flush() ). The result of connection_status() when called in
exitfp() is then 1. If the flush() call is removed, the results as
previously described are the same whether or not output buffering is
enabled.

I hope someone can make sense of all this! Do let me know if you would
like any further information.







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


#25266 [Fbk-Opn]: connection_status() ( see bug #22072 ).

2003-09-19 Thread avarnals at zigg dot net
 ID:   25266
 User updated by:  avarnals at zigg dot net
 Reported By:  avarnals at zigg dot net
-Status:   Feedback
+Status:   Open
 Bug Type: Apache2 related
 Operating System: Linux 2.4.21
 PHP Version:  4.3.3
 New Comment:

I have just tested http://snaps.php.net/php4-STABLE-latest.tar.gz as
both a CGI program and Apache 2 module.

In both cases, PHP still continues to run after the browser's stop
button has been used despite setting ignore_user_abort ( false );


Previous Comments:


[2003-09-18 20:50:47] [EMAIL PROTECTED]

Please try using this CVS snapshot:

  http://snaps.php.net/php4-STABLE-latest.tar.gz
 
For Windows:
 
  http://snaps.php.net/win32/php4-win32-STABLE-latest.zip





[2003-08-27 08:53:45] avarnals at zigg dot net

No, user abort was what I was testing for. Please read my report more
carefully.



[2003-08-26 23:37:39] [EMAIL PROTECTED]

Thank you for taking the time to write to us, but this is not
a bug. Please double-check the documentation available at
http://www.php.net/manual/ and the instructions on how to report
a bug at http://bugs.php.net/how-to-report.php

User abort applies only if the user stop page loading, having a php
reach execution timeout will not trigger abort.



[2003-08-26 22:05:10] avarnals at zigg dot net

Description:

See bug #22072.

Since the above is now closed, I am creating this entry. Please accept
my apologies if it would have been better added to 22072 instead.

I wasn't aware of this potential problem until I saw it in the change
log for 4.3.3, so I thought I'd test it. Something is still not right.
I'm using PHP 4.3.3 with Apache 2.0.47.

My first test was to see whether ignore_user_abort() works as expected.
I used the very simple:

  ignore_user_abort ( false );
  while ( 1 );

This makes it easy to spot in the process list using 'top'. I tested
both using PHP as a dynamically loaded Apache module and the CGI
binary. The latter had safe mode enabled, the former didn't; I don't
know whether this can/should make any difference. In both cases the
script continued to execute after I clicked on the browser's stop
button and until its PHP enforced time limit was reached.

I then went on to test ( using only the Apache module ) using the code
suggested in bug report 22072:

  http://www.mpfreescene.com/test/?option=source

As rather expected now, this continued to execute after I'd used the
stop button.

I went on to test by modifying the code as follows:

  - I set set_time_limit(15); so it would eventually be
  aborted by this limit.
  - I made $m very large.
  - Have the result of connection_status() written to a
  file each time round the loop.
  - I removed the sleep() call.

I ran the script and used the stop button while it was running. It
continued to execute until it had used 15 seconds of CPU time. Log file
shows: httpd: PHP Fatal error:  Maximum execution time of 15 seconds
exceeded in...
The final ( large ) output file contained all zeros and a final 2.

So, it seems that PHP correctly detects and reports the case of a
timeout, but not an abort.

I noticed one other possibly odd thing while doing this. If PHP has
output buffering enabled, the call to flush() results in the script
being immediately shut down ( execution doesn't get to the line
following flush() ). The result of connection_status() when called in
exitfp() is then 1. If the flush() call is removed, the results as
previously described are the same whether or not output buffering is
enabled.

I hope someone can make sense of all this! Do let me know if you would
like any further information.







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


#25266 [NEW]: connection_status() ( see bug #22072 ).

2003-08-27 Thread avarnals at zigg dot net
From: avarnals at zigg dot net
Operating system: Linux 2.4.21
PHP version:  4.3.3
PHP Bug Type: Apache2 related
Bug description:  connection_status() ( see bug #22072 ).

Description:

See bug #22072.

Since the above is now closed, I am creating this entry. Please accept my
apologies if it would have been better added to 22072 instead.

I wasn't aware of this potential problem until I saw it in the change log
for 4.3.3, so I thought I'd test it. Something is still not right. I'm
using PHP 4.3.3 with Apache 2.0.47.

My first test was to see whether ignore_user_abort() works as expected. I
used the very simple:

  ignore_user_abort ( false );
  while ( 1 );

This makes it easy to spot in the process list using 'top'. I tested both
using PHP as a dynamically loaded Apache module and the CGI binary. The
latter had safe mode enabled, the former didn't; I don't know whether this
can/should make any difference. In both cases the script continued to
execute after I clicked on the browser's stop button and until its PHP
enforced time limit was reached.

I then went on to test ( using only the Apache module ) using the code
suggested in bug report 22072:

  http://www.mpfreescene.com/test/?option=source

As rather expected now, this continued to execute after I'd used the stop
button.

I went on to test by modifying the code as follows:

  - I set set_time_limit(15); so it would eventually be
  aborted by this limit.
  - I made $m very large.
  - Have the result of connection_status() written to a
  file each time round the loop.
  - I removed the sleep() call.

I ran the script and used the stop button while it was running. It
continued to execute until it had used 15 seconds of CPU time. Log file
shows: httpd: PHP Fatal error:  Maximum execution time of 15 seconds
exceeded in...
The final ( large ) output file contained all zeros and a final 2.

So, it seems that PHP correctly detects and reports the case of a timeout,
but not an abort.

I noticed one other possibly odd thing while doing this. If PHP has output
buffering enabled, the call to flush() results in the script being
immediately shut down ( execution doesn't get to the line following
flush() ). The result of connection_status() when called in exitfp() is
then 1. If the flush() call is removed, the results as previously
described are the same whether or not output buffering is enabled.

I hope someone can make sense of all this! Do let me know if you would
like any further information.



-- 
Edit bug report at http://bugs.php.net/?id=25266edit=1
-- 
Try a CVS snapshot (php4):  http://bugs.php.net/fix.php?id=25266r=trysnapshot4
Try a CVS snapshot (php5):  http://bugs.php.net/fix.php?id=25266r=trysnapshot5
Fixed in CVS:   http://bugs.php.net/fix.php?id=25266r=fixedcvs
Fixed in release:   http://bugs.php.net/fix.php?id=25266r=alreadyfixed
Need backtrace: http://bugs.php.net/fix.php?id=25266r=needtrace
Try newer version:  http://bugs.php.net/fix.php?id=25266r=oldversion
Not developer issue:http://bugs.php.net/fix.php?id=25266r=support
Expected behavior:  http://bugs.php.net/fix.php?id=25266r=notwrong
Not enough info:http://bugs.php.net/fix.php?id=25266r=notenoughinfo
Submitted twice:http://bugs.php.net/fix.php?id=25266r=submittedtwice
register_globals:   http://bugs.php.net/fix.php?id=25266r=globals
PHP 3 support discontinued: http://bugs.php.net/fix.php?id=25266r=php3
Daylight Savings:   http://bugs.php.net/fix.php?id=25266r=dst
IIS Stability:  http://bugs.php.net/fix.php?id=25266r=isapi
Install GNU Sed:http://bugs.php.net/fix.php?id=25266r=gnused


#25266 [Bgs-Opn]: connection_status() ( see bug #22072 ).

2003-08-27 Thread avarnals at zigg dot net
 ID:   25266
 User updated by:  avarnals at zigg dot net
 Reported By:  avarnals at zigg dot net
-Status:   Bogus
+Status:   Open
 Bug Type: Apache2 related
 Operating System: Linux 2.4.21
 PHP Version:  4.3.3
 New Comment:

No, user abort was what I was testing for. Please read my report more
carefully.


Previous Comments:


[2003-08-26 23:37:39] [EMAIL PROTECTED]

Thank you for taking the time to write to us, but this is not
a bug. Please double-check the documentation available at
http://www.php.net/manual/ and the instructions on how to report
a bug at http://bugs.php.net/how-to-report.php

User abort applies only if the user stop page loading, having a php
reach execution timeout will not trigger abort.



[2003-08-26 22:05:10] avarnals at zigg dot net

Description:

See bug #22072.

Since the above is now closed, I am creating this entry. Please accept
my apologies if it would have been better added to 22072 instead.

I wasn't aware of this potential problem until I saw it in the change
log for 4.3.3, so I thought I'd test it. Something is still not right.
I'm using PHP 4.3.3 with Apache 2.0.47.

My first test was to see whether ignore_user_abort() works as expected.
I used the very simple:

  ignore_user_abort ( false );
  while ( 1 );

This makes it easy to spot in the process list using 'top'. I tested
both using PHP as a dynamically loaded Apache module and the CGI
binary. The latter had safe mode enabled, the former didn't; I don't
know whether this can/should make any difference. In both cases the
script continued to execute after I clicked on the browser's stop
button and until its PHP enforced time limit was reached.

I then went on to test ( using only the Apache module ) using the code
suggested in bug report 22072:

  http://www.mpfreescene.com/test/?option=source

As rather expected now, this continued to execute after I'd used the
stop button.

I went on to test by modifying the code as follows:

  - I set set_time_limit(15); so it would eventually be
  aborted by this limit.
  - I made $m very large.
  - Have the result of connection_status() written to a
  file each time round the loop.
  - I removed the sleep() call.

I ran the script and used the stop button while it was running. It
continued to execute until it had used 15 seconds of CPU time. Log file
shows: httpd: PHP Fatal error:  Maximum execution time of 15 seconds
exceeded in...
The final ( large ) output file contained all zeros and a final 2.

So, it seems that PHP correctly detects and reports the case of a
timeout, but not an abort.

I noticed one other possibly odd thing while doing this. If PHP has
output buffering enabled, the call to flush() results in the script
being immediately shut down ( execution doesn't get to the line
following flush() ). The result of connection_status() when called in
exitfp() is then 1. If the flush() call is removed, the results as
previously described are the same whether or not output buffering is
enabled.

I hope someone can make sense of all this! Do let me know if you would
like any further information.







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