ID: 10675 Updated by: sas Reported By: [EMAIL PROTECTED] Status: Closed Bug Type: *Session related PHP Version: 4.0.5 Assigned To: Comments: Your perl scripts inherits the open file descriptors and hence also the open fd for the session file. And hence, the lock associated with the fd is not automatically released, when PHP closes the fd. You might want to close all fds upon startup of the perl script to prevent this scenario. Previous Comments: --------------------------------------------------------------------------- [2001-05-05 14:16:42] [EMAIL PROTECTED] Your perl scripts inherits the open file descriptors and hence also the open fd for the session file. And hence, the lock associated with the fd is not automatically released, when PHP closes the fd. You might want to close all fds upon startup of the perl script to prevent this scenario. --------------------------------------------------------------------------- [2001-05-04 15:54:53] [EMAIL PROTECTED] 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. --------------------------------------------------------------------------- [2001-05-04 15:22:47] [EMAIL PROTECTED] 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. --------------------------------------------------------------------------- ATTENTION! Do NOT reply to this email! To reply, use the web interface found at http://bugs.php.net/?id=10675&edit=2 -- PHP Development Mailing List <http://www.php.net/> To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]