PHP 4.0 Bug #10675 Updated: Executing background job from PHP causes session lock-up
| From: | millz at incogen dot com | Date: | Fri, 04 May 2001 19:54:53 +0000 |
| Subject: | PHP 4.0 Bug #10675 Updated: Executing background job from PHP causes session lock-up | ||
| Groups: | php.dev | ||
| Request: | Send a blank email to php-dev+get-53945@lists.php.net to get a copy of this message | ||
ID: 10675
User Update by: millz@incogen.com
Status: Open
Bug Type: *Session related
Description: Executing background job from PHP causes session lock-up
Executed a perl script in the background like this:
perl scriptname.pl $otherParams 2> /dev/null 1> /dev/null
Perl script forks and parent dies, so PHP "should" see the script as finished
immediately, perl child does work in background (takes a few minutes to run).
PHP script that spawned perl script completes OK, browser stops waiting for more data from
php script as it should.
However, when using the same browser window (or one from browser's file->new window) no
other pages that referrence the session will load in the browser. If we force the session
to destroy just after the system() call, other scripts load just fine. Also, other
scripts work just fine if we start a new browser from scratch (creates new session).
So it appears that the PHP session is getting messed up somehow b/c of the background
system/exec/`` call. This seems to prevent the following pages from loading the session
properly and therefore they will not run.
One other thing, once the child perl script is finally complete everything starts working again,
i.e.-the session is OK again.
Previous Comments:
---------------------------------------------------------------------------
[2001-05-04 15:22:47] millz@incogen.com
Executed a perl script in the background like this:
perl scriptname.pl $otherParams 2> /dev/null 1> /dev/null
Perl script forks and parent dies, so PHP "should" see the script as finished immediately,
perl child does work in background (takes a few minutes to run).
PHP script that spawned perl script completes OK, browser stops waiting for more data from php
script as it should.
However, when using the same browser window (or one from browser's file->new window) no
other pages that referrence the session will load in the browser. If we force the session to
destroy just after the system() call, other scripts load just fine. Also, other scripts work just
fine if we start a new browser from scratch (creates new session).
So it appears that the PHP session is getting messed up somehow b/c of the background system/exec/``
call. This seems to prevent the following pages from loading the session properly and therefore
they will not run.
---------------------------------------------------------------------------
Full Bug description available at: http://bugs.php.net/?id=10675