RFR: 8042088: Sjavac spawns external processes in a unnecessarily complex and platform dependent way
Andreas Lundblad
andreas.lundblad at oracle.com
Wed Oct 15 12:59:24 UTC 2014
Hi compiler-dev,
Please review this patch which addresses JDK-8042088.
- Description:
This patch is a refactoring and cleanup of the code that spawns the external process for running the sjavac server.
Since the fix of JDK-8048457 a server is never spawned as a separate thread. (background=false -> Direct use of SjavacImpl, background=true -> Server in separate JVM). This patch removes the (now dead) code that spawns the server in a thread.
The patch also fixes a small race condition in PortFile.
Tested:
- All langtool tests pass
- make images runs without errors
- Giving a bad launch command (sjavac=...) results in correct error message
- Bad server executable (that never writes values to the port file) results in correct error message
- Link to webrev:
http://cr.openjdk.java.net/~alundblad/8042088/webrev.02/
- Links to bug report:
https://bugs.openjdk.java.net/browse/JDK-8042088
-- Andreas
More information about the compiler-dev
mailing list