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

David Powell updated HDFS-5689:
-------------------------------

    Attachment: HDFS-5689.patch

> FsDatasetImpl registers mbean using uninitialized DataNode UUID
> ---------------------------------------------------------------
>
>                 Key: HDFS-5689
>                 URL: https://issues.apache.org/jira/browse/HDFS-5689
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: datanode
>    Affects Versions: 3.0.0
>            Reporter: David Powell
>            Priority: Minor
>         Attachments: HDFS-5689.patch
>
>
> FsDatasetImpl's constructor attempts to include the datanode UUID in its 
> mbean's ObjectName:
>   registerMBean(datanode.getDatanodeUuid());
> Unfortunately this doesn't work because the provided DataNode's UUID isn't 
> set until bpRegistrationSucceeded() is called... after the FsDatasetImpl has 
> been created.  The result is the mbean is always registered with a bogus 
> (though valid) ObjectName:
>   Hadoop:name=FSDatasetState-null,service=DataNode
> Prior to HDFS-2832 and the storageID -> datanodeUuid rename, this was 
> initialized using the DataStorage:
>   registerMBean(storage.getStorageID());
> With the fix for HDFS-5454 in place, doing equivalent thing (already done by 
> SimulatedFSDataset):
>   registerMBean(storage.getDatanodeUuid());
> ...fixes the problem:
>   
> Hadoop:name=FSDatasetState-24aed86a-fee6-4b88-868e-285e09ea2766,service=DataNode



--
This message was sent by Atlassian JIRA
(v6.1.4#6159)

Reply via email to