[ 
https://issues.apache.org/jira/browse/SPARK-4714?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Josh Rosen updated SPARK-4714:
------------------------------
    Summary: BlockManager should handle cases where block is removed after 
synchronizing on BlockInfo instance  (was: BlockManager should handle case 
where block is removed after synchronizing on BlockInfo instance)

> BlockManager should handle cases where block is removed after synchronizing 
> on BlockInfo instance
> -------------------------------------------------------------------------------------------------
>
>                 Key: SPARK-4714
>                 URL: https://issues.apache.org/jira/browse/SPARK-4714
>             Project: Spark
>          Issue Type: Improvement
>          Components: Block Manager
>    Affects Versions: 1.1.0
>            Reporter: SuYan
>            Priority: Minor
>
> in removeBlock()/ dropOldBlock()/ dropFromMemory()
> all have the same logic:
> 1. info = blockInfo.get(id)
> 2. if (info != null)
> 3. info.synchronized
> there may be a possibility that while one thread got info.lock while the 
> previous thread already removed from blockinfo in info.lock. 
> but one thing in current code,  That not check info is null or not, while get 
> info.lock to remove block, will not cause any errors. 



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

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

Reply via email to