You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-dev@hadoop.apache.org by "David Powell (JIRA)" <ji...@apache.org> on 2013/12/19 18:50:09 UTC
[jira] [Created] (HDFS-5689) FsDatasetImpl registers mbean using
uninitialized DataNode UUID
David Powell created HDFS-5689:
----------------------------------
Summary: 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
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)