RFR: 8000817: Reinstate accidentally removed sleep() from ProcessBuilder/Basic.java (original) (raw)

Alan Bateman Alan.Bateman at oracle.com
Fri Oct 12 18:47:23 UTC 2012


On 12/10/2012 19:25, Martin Buchholz wrote:

:

Yeah, this kind of race is hard to eradicate. The bug remains on Linux? Maybe we should throw away what we did and instead loop until we see something like java.io.FileInputStream.readBytes(Native Method) in the read-ing thread's stack trace. Yes, this one remains on Linux, and the original one that Rob fixed was in response to a couple of intermittent failures on Solaris.

Checking for readBytes should be better but it might still be fragile because there isn't any guarantee that the thread is in the read syscall (although the window should be a lot smaller). Although none of us like using sleep, this may be a case where we need a short sleep to improve our chances.

-Alan



More information about the core-libs-dev mailing list