hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Francis Liu (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-17281) FN should use datanode port from hdfs configuration
Date Wed, 21 Dec 2016 02:29:58 GMT

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

Francis Liu commented on HBASE-17281:
-------------------------------------

Change looks fine to me. We can prolly move the logic of transforming and sending the the
fns on the master as part of sending the reigon to be opened. Tho don't feel strongly about
it as dn port changing is not likely and would require a cluster restart anyway. 

> FN should use datanode port from hdfs configuration
> ---------------------------------------------------
>
>                 Key: HBASE-17281
>                 URL: https://issues.apache.org/jira/browse/HBASE-17281
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: Thiruvel Thirumoolan
>            Assignee: Thiruvel Thirumoolan
>            Priority: Minor
>             Fix For: 2.0.0
>
>         Attachments: HBASE-17281.master.001.patch, HBASE-17281.master.002.patch
>
>
> Currently we use the ServerName port for providing favored node hints. We should use
the DN port from hdfs-site.xml instead to avoid warning messages in region server logs. The
warnings will be from this section of HDFS code, it moves across classes.
> https://github.com/apache/hadoop/blob/trunk/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/DataStreamer.java#L1758
> {code}
>   private boolean[] getPinnings(DatanodeInfo[] nodes) {
>     if (favoredNodes == null) {
>       return null;
>     } else {
>       boolean[] pinnings = new boolean[nodes.length];
>       HashSet<String> favoredSet = new HashSet<>(Arrays.asList(favoredNodes));
>       for (int i = 0; i < nodes.length; i++) {
>         pinnings[i] = favoredSet.remove(nodes[i].getXferAddrWithHostname());
>         LOG.debug("{} was chosen by name node (favored={}).",
>             nodes[i].getXferAddrWithHostname(), pinnings[i]);
>       }
>       if (!favoredSet.isEmpty()) {
>         // There is one or more favored nodes that were not allocated.
>         LOG.warn("These favored nodes were specified but not chosen: "
>             + favoredSet + " Specified favored nodes: "
>             + Arrays.toString(favoredNodes));
>       }
>       return pinnings;
>     }
>   }
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message