[ 
https://issues.apache.org/jira/browse/SPARK-6468?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14375873#comment-14375873
 ] 

Apache Spark commented on SPARK-6468:
-------------------------------------

User 'zsxwing' has created a pull request for this issue:
https://github.com/apache/spark/pull/5136

> Fix the race condition of subDirs in DiskBlockManager
> -----------------------------------------------------
>
>                 Key: SPARK-6468
>                 URL: https://issues.apache.org/jira/browse/SPARK-6468
>             Project: Spark
>          Issue Type: Bug
>          Components: Block Manager
>    Affects Versions: 1.3.0
>            Reporter: Shixiong Zhu
>            Priority: Minor
>
> There are two race conditions of subDirs in DiskBlockManager:
> 1. `getAllFiles` does not use correct locks to read the contents in 
> `subDirs`. Although it's designed for testing, it's still worth to add 
> correct locks to eliminate the race condition.
> 2. The double-check has a race condition in `getFile(filename: String)`. If a 
> thread finds `subDirs(dirId)(subDirId)` is not null out of the `synchronized` 
> block, it may not be able to see the correct content of the File instance 
> pointed by `subDirs(dirId)(subDirId)` according to the Java memory model 
> (there is no volatile variable here).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@spark.apache.org
For additional commands, e-mail: issues-h...@spark.apache.org

Reply via email to