Return-Path: X-Original-To: apmail-hadoop-hdfs-issues-archive@minotaur.apache.org Delivered-To: apmail-hadoop-hdfs-issues-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 24A799811 for ; Sun, 1 Apr 2012 04:19:31 +0000 (UTC) Received: (qmail 72799 invoked by uid 500); 1 Apr 2012 04:19:30 -0000 Delivered-To: apmail-hadoop-hdfs-issues-archive@hadoop.apache.org Received: (qmail 72524 invoked by uid 500); 1 Apr 2012 04:19:30 -0000 Mailing-List: contact hdfs-issues-help@hadoop.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: hdfs-issues@hadoop.apache.org Delivered-To: mailing list hdfs-issues@hadoop.apache.org Received: (qmail 72479 invoked by uid 99); 1 Apr 2012 04:19:28 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 01 Apr 2012 04:19:28 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED,T_RP_MATCHES_RCVD X-Spam-Check-By: apache.org Received: from [140.211.11.116] (HELO hel.zones.apache.org) (140.211.11.116) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 01 Apr 2012 04:19:26 +0000 Received: from hel.zones.apache.org (hel.zones.apache.org [140.211.11.116]) by hel.zones.apache.org (Postfix) with ESMTP id ED54A351EAC for ; Sun, 1 Apr 2012 04:19:04 +0000 (UTC) Date: Sun, 1 Apr 2012 04:19:04 +0000 (UTC) From: "Eli Collins (Updated) (JIRA)" To: hdfs-issues@hadoop.apache.org Message-ID: <1707626821.2711.1333253945063.JavaMail.tomcat@hel.zones.apache.org> In-Reply-To: <80010819.13733.1332633507427.JavaMail.tomcat@hel.zones.apache.org> Subject: [jira] [Updated] (HDFS-3144) Refactor DatanodeID#getName by use MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/HDFS-3144?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Eli Collins updated HDFS-3144: ------------------------------ Attachment: hdfs-3144.txt Patch attached. DataNodeID#getName is no longer available. The following are introduced so each context in which we use the "name" has it's own method: - getHostName - when the DN hostname is needed - getIpAddr - when the DN IP is needed - getXferAddr - IP + xfer port (what getName returned) - getIpcAddr - IP + ipc port - getInfoAddr - IP + info port - toString - for logging DataNodeInfo#getName still implements Node#getName for topolgy since DatanodeID doesn't need to implement this interface. It returns DatanodeID#getXferAddr so the behavior is unchanged. > Refactor DatanodeID#getName by use > ---------------------------------- > > Key: HDFS-3144 > URL: https://issues.apache.org/jira/browse/HDFS-3144 > Project: Hadoop HDFS > Issue Type: Improvement > Components: data-node > Reporter: Eli Collins > Assignee: Eli Collins > Attachments: hdfs-3144.txt > > > DatanodeID#getName, which returns a string containing the IP:xferPort of a Datanode, is used in a variety of contexts: > # Putting the ID in a log message > # Connecting to the DN for data transfer > # Getting a string to use as a key (eg for comparison) > # Using as a hostname, eg for excludes/includes, topology files > Same for DatanodeID#getHost, which returns just the IP part, and sometimes we use it as a key, sometimes we tack on the IPC port, etc. > Let's have a method for each use, eg toString can be used for #1, a new method (eg getDataXferAddr) for #2, a new method (eg getKey) for #3, new method (eg getHostID) for #4, etc. Aside from the code being more clear, we can change the value for particular uses, eg we can change the format in a log message without changing the address used that clients connect to the DN, or modify the address used for data transfer without changing the other uses. -- 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