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

Colin Patrick McCabe commented on HDFS-5323:
--------------------------------------------

The only time {{BlocksMap#blocks}} is reassigned is when the {{BlocksMap}} is 
closed-- at which time, {{blocks}} is set to null.  This would result in an NPE 
if anyone tried to do anything with the map.  It should be fine, as well as 
more performant, to make it non-volatile.

> Remove some deadcode in BlockManager
> ------------------------------------
>
>                 Key: HDFS-5323
>                 URL: https://issues.apache.org/jira/browse/HDFS-5323
>             Project: Hadoop HDFS
>          Issue Type: Improvement
>          Components: namenode
>    Affects Versions: 2.3.0
>            Reporter: Colin Patrick McCabe
>            Assignee: Colin Patrick McCabe
>            Priority: Minor
>
> {{BlockManager#DEFAULT_MAP_LOAD_FACTOR}} is deadcode.  It no longer does 
> *anything* since blocks are now stored in a GSet whose size is fixed.
> {{BlocksMap#blocks}} does not need to be volatile.  Whenever it is accessed, 
> it is accessed under the {{FSNamesystem}} lock.  Furthermore, access to this 
> data structure is not thread-safe.



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to