[ 
https://issues.apache.org/jira/browse/HDFS-3404?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13273044#comment-13273044
 ] 

Aaron T. Myers commented on HDFS-3404:
--------------------------------------

bq. This change needs to be made to the 2NN as well right or were you thinking 
just the SBN?

Nope, there's no change to be made to the 2NN. The 2NN doesn't do the same sort 
of validation that the SBN does that the configured NN HTTP address is not 
INADDR_ANY. The 2NN will automatically start behaving in the same way the SBN 
does just by virtue of the fact that it's connecting to an NN which doesn't 
look at the machine name in the param string. The 2NN will also stop sending 
the machine name in the param string, by virtue of the fact that it uses 
GetImageServlet#getParamStringToPutImage to form the param string.

I also tested this patch with an NN/2NN, and it works just fine.

bq. NetUtils#isIpAddress actually checks ip:port, seems like we'll always have 
an IP here. Perhaps better to use InetAddresses.isInetAddress.'

Sure, makes sense. I'll update the patch to suit.

bq. How much more difficult would it be to just have it do a straight HTTP POST 
or PUT of the new image instead of the "I'll ask you to ask me for this image" 
dance?

I investigated what it would take to do this a little bit, and concluded that 
to do it right would take a fair bit of refactoring that's well outside the 
modest scope of this JIRA. I've filed a separate JIRA to make this change, I 
hope that's OK: HDFS-3405
                
> Make putImage in GetImageServlet infer remote address to fetch from
> -------------------------------------------------------------------
>
>                 Key: HDFS-3404
>                 URL: https://issues.apache.org/jira/browse/HDFS-3404
>             Project: Hadoop HDFS
>          Issue Type: Improvement
>    Affects Versions: 2.0.0
>            Reporter: Aaron T. Myers
>            Assignee: Aaron T. Myers
>         Attachments: HDFS-3404.patch
>
>
> As it stands, daemons which perform checkpointing must determine their own 
> address on which they can be reached, so that the NN which they checkpoint 
> against knows what address to fetch a merged fsimage from. This causes 
> problems if, for example, the daemon performing checkpointing binds to 
> 0.0.0.0, and thus can't be sure of what address the NN can reach it at.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to