david thanks for chasing this difference. I would love to be able to help but I'm concurrently bad :). Stef
Hi Adrian,
Overall, it does look like the basic OSProcess functions that most people would use are working as long as an up to date plugin is available.
The remaining issue that is relevant to the Pharo image (as opposed to OSProcess running on any other image) is this CommandShellTestCase issue. I think we are seeing different, but presumably related, symptoms of some underlying problem. The tests in CommandShellTestCase do some rather complex things with lots of processes, semaphore synchronization and so on. So I think I will need to somehow whittle the problem down to some simpler test that can provide some more reproduceable symptoms.
My working assumption is that one of the following is true:
1) There is something different in Pharo versus Squeak that is exposing an existing bug in OSProcess/CommandShell. This is quite likely.
2) The CommandShellTestCase is exposing an issue in Pharo related to Semaphore handling, Delay scheduling, or Process scheduling. The seems less likely than #1, but still possible because these tests do drive a lot of interacting processes, and might expose an issue the "normal" users would never see.
One thing that I know could produce the sort of symptoms that I am seeing would be anything that intermittently permitted a signal to a Semaphore to be missed. This type of problem causes OSProcess to "miss" the exit of one of its external processes, leading to zombie Unix processes and tests in Pharo/Squeak that fail to run to completion.
For that reason, if anyone can think of any changes to process scheduling and semaphore handling, that might give me an idea of where to look.
Thanks for all the help, Dave
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project