Jing Zhao created HDFS-5192:
-------------------------------
Summary: NameNode may fail to start when
dfs.client.test.drop.namenode.response.number is set
Key: HDFS-5192
URL: https://issues.apache.org/jira/browse/HDFS-5192
Project: Hadoop HDFS
Issue Type: Bug
Affects Versions: 3.0.0
Reporter: Jing Zhao
Assignee: Jing Zhao
Priority: Minor
Attachments: HDFS-5192.001.patch
In HDFS-5118 we add a new configuration property
"dfs.client.test.drop.namenode.response.number" for DFSClient, which controls
if DFSClient drops RPC responses for testing purpose.
Currently this property can only be set in the configuration of the client side
(with HA configuration). If Namenode's configuration sets this property with a
positive value, an IllegalStateException may be thrown (e.g., when starting the
trash emptier thread in NN). This is because NN will overwrite the
configuration properties such as fs.defaultFS, when the trash emptier thread is
started and tries to create a DistributedFileSystem instance, it will find that
1) the drop response property is set with a positive number, and 2) the given
namenode URI is not a logical name (overwritten by NN before).
A simple fix is to check if we can get a LossyRetryInvocationHandler based
proxy in the constructor of DFSClient. If not, instead of throwing an
exception, we can fall back to the original DFSClient creation process.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira