[
https://issues.apache.org/jira/browse/HDFS-13836?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16588845#comment-16588845
]
Íñigo Goiri commented on HDFS-13836:
------------------------------------
Thanks [~hfyang20071] for [^HDFS-13836.002.patch].
I think we should make the code a little more readable.
First we should check the bytes==null, then create the data, and then check
there.
Something like:
{code}
byte[] bytes = zkManager.getData(path, stat);
if (bytes == null) {
corrupted = true;
} else {
String data = new String(bytes, Charset.forName("UTF-8"));
if (data == null || data.equals("")) {
...
{code}
> RBF: To handle the exception when the mounttable znode have null value.
> -----------------------------------------------------------------------
>
> Key: HDFS-13836
> URL: https://issues.apache.org/jira/browse/HDFS-13836
> Project: Hadoop HDFS
> Issue Type: Bug
> Components: federation, hdfs
> Affects Versions: 3.1.0
> Reporter: yanghuafeng
> Assignee: yanghuafeng
> Priority: Major
> Fix For: 2.9.0, 3.0.0, 3.1.0, 3.2.0
>
> Attachments: HDFS-13836.001.patch, HDFS-13836.002.patch
>
>
> When we are adding the mounttable entry, the router sever is terminated.
> Some error messages show in log, as follow:
> 2018-08-20 14:18:32,404 ERROR
> org.apache.hadoop.hdfs.server.federation.store.driver.impl.StateStoreZooKeeperImpl:
> Cannot get data for 0SLASH0testzk: null.
> The reason is that router server have created the znode but not to set data
> before being terminated. But the method zkManager.getStringData(path, stat)
> will throw NPE if the path has null value in the StateStoreZooKeeperImpl,
> leading to fail in adding the same mounttable entry and deleting the existing
> znode.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]