Process.waitFor() may hang if subprocess has live descendants (lnx)

David Holmes David.Holmes at oracle.com
Tue Aug 31 01:21:01 UTC 2010


Hi Martin,

My only minor concern with this is the potential change in timing. Is it 
possible that a test will assume the streams are closed when waitFor 
returns? If so I guess we need to update the test.

Cheers,
David

Martin Buchholz said the following on 08/31/10 04:38:
> This is a bug report with fix.
> 
> My code in UNIXProcess.java.linux introduced a hang if the subprocess 
> terminates, but it has remaining descendants that keep the pipe file 
> descriptors open.
> 
> Here's a fix:
> 
> http://cr.openjdk.java.net/~martin/webrevs/openjdk7/ProcessHang/ 
> <http://cr.openjdk.java.net/%7Emartin/webrevs/openjdk7/ProcessHang/>
> 
> Please review.
> 
> Alan, there are remaining (pre-existing) thorny issues with proper 
> handling of process streams and asynchronous close, that we might want 
> to discuss someday.
> 
> 
> 
> Martin



More information about the core-libs-dev mailing list