[ https://issues.apache.org/jira/browse/HDFS-5689?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
David Powell updated HDFS-5689:
-------------------------------
Fix Version/s: (was: 3.0.0)
> 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.5#6160)
|