[
https://issues.apache.org/jira/browse/HDFS-7359?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Chris Nauroth updated HDFS-7359:
--------------------------------
Attachment: HDFS-7359.1.patch
Here is a patch that fixes the bug by catching the error in
{{GetJournalEditServlet}}. I considered just removing the addition of the
SecondaryNameNode principal, since I've never heard of this usage in practice.
However, I suppose it would be considered a backwards-incompatible change if
someone out there was running a non-HA cluster and just had chosen to offload
edits to the JournalNodes for consumption by the SecondaryNameNode. Catching
it is probably the safer change. {{TestSecureNNWithQJM}} is a new test suite
that covers usage of QJM in a secured cluster. While I was working on this, I
also spotted a typo in {{TestNNWithQJM}}, which I'm correcting in this patch.
> NameNode in secured HA cluster fails to start if
> dfs.namenode.secondary.http-address cannot be interpreted as a network
> address.
> --------------------------------------------------------------------------------------------------------------------------------
>
> Key: HDFS-7359
> URL: https://issues.apache.org/jira/browse/HDFS-7359
> Project: Hadoop HDFS
> Issue Type: Bug
> Components: journal-node
> Reporter: Chris Nauroth
> Assignee: Chris Nauroth
> Attachments: HDFS-7359.1.patch
>
>
> In a secured cluster, the JournalNode validates that the caller is one of a
> valid set of principals. One of the principals considered is that of the
> SecondaryNameNode. This involves checking
> {{dfs.namenode.secondary.http-address}} and trying to interpret it as a
> network address. If a user has specified a value for this property that
> cannot be interpeted as a network address, such as "null", then this causes
> the JournalNode operation to fail, and ultimately the NameNode cannot start.
> The JournalNode should not have a hard dependency on
> {{dfs.namenode.secondary.http-address}} like this. It is not typical to run
> a SecondaryNameNode in combination with JournalNodes. There is even a check
> in SecondaryNameNode that aborts if HA is enabled.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)