Ngone51 opened a new pull request #25076: [SPARK-28302] [CORE] Make sure to 
generate unique output file for SparkLauncher on Windows
URL: https://github.com/apache/spark/pull/25076
 
 
   ## What changes were proposed in this pull request?
   
   When using SparkLauncher to submit applications **concurrently** with 
multiple threads under **Windows**, some apps would show that "The process 
cannot access the file because it is being used by another process" and remains 
in LOST state at the end. The issue can be reproduced by  this 
[demo](https://issues.apache.org/jira/secure/attachment/12973920/Main.scala).
   
   After digging into the code, I find that, Windows cmd `%RANDOM%` would 
return the same number if we call it  instantly(e.g. < 500ms) after last call. 
As a result, SparkLauncher would get same output 
file(spark-class-launcher-output-%RANDOM%.txt) for apps. Then, the following 
app would hit the issue when it tries to write the same file which has already 
been opened for writing by another app. 
   
   We should make sure to generate unique output file for SparkLauncher on 
Windows to avoid this issue.
   
   ## How was this patch tested?
   
   Tested manually on Windows.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to