go ahead... be a heretic | |
PerlMonks |
open3 generates Windows Command Processor Has Stopped Workingby DanEllison (Scribe) |
on Nov 12, 2014 at 23:42 UTC ( [id://1107034]=perlquestion: print w/replies, xml ) | Need Help?? |
DanEllison has asked for the wisdom of the Perl Monks concerning the following question: I have a scheduler that I have written in Perl and executes its jobs using open3 so that it can capture both outputs seperately. The jobs being executed are also Perl scripts. It runs more than 1500 jobs a day, but in reality, they are primarily only 3 different Perl scripts called with 500 different parameters each. So, the called jobs are well tested. I've got probably better than a 98% success rate. Occasionally a job executed via the open3 will generate a pop-up window with the error "Windows Command Processor Has Stopped Working". I've put a print at the very end of each of the Perl scripts so I can verify that the job has made it to the exit, and the prints do get captured by the open3. However, the output streams don't close and the waitpid doesn't return until I click on the pop-up window to close it. Then the waitpid returns a non-zero status even though it appears to me that the job has run successfully to completion. I'm on Windows 8, but this has been occurring since long before that. Does any one know why I would get this failed Windows Command Processor error on an exit 0? And not that I want to hide the problem, but the scheduler will automatically retry, so is there anyway I could avoid this pop-up on the failure because otherwise it hangs until I click on it?
Back to
Seekers of Perl Wisdom
|
|