You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-issues@hadoop.apache.org by "Arpit Agarwal (JIRA)" <ji...@apache.org> on 2015/10/29 21:43:28 UTC
[jira] [Comment Edited] (HDFS-1477) Make NameNode Reconfigurable.
[ https://issues.apache.org/jira/browse/HDFS-1477?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14981231#comment-14981231 ]
Arpit Agarwal edited comment on HDFS-1477 at 10/29/15 8:43 PM:
---------------------------------------------------------------
Hi [~xiaobingo], thanks for taking this up. My comments on the v5 patch:
# FsNameSystem and DatanodeManager need not implement Reconfigurable, since their Reconfigurable methods are only invoked via NameNode.
# What does getNewConf() do? Looks like it just constructs a new config object by re-reading the config files? There should have been a Javadoc on the base class method, perhaps we can add one now.
# Can we just skip implementing reconfiguration via the servlet? A better approach is to have the daemon re-read its config files like HDFS-6808 (which you pointed out to me offline :-). Looks like you will need a new RPC call and support on the client. Also it would be good to log the reconfiguration request in the hdfs audit log.
# Nitpicks: Fix indentation in DatanodeManager#reconfigurePropertyImpl.
# {{#reconfigurePropertyImpl}} - get {{namesystem.writeLock()}} outside the {{try}} block.
Other suggestions for separate subtasks.
# The list of reconfigurable properties should not be hard-coded. We can add an annotation to the reconfigurable properties.
# Add {{ReconfigurableBase}} support for atomic updates, i.e. all or no changes take effect.
# Documentation.
was (Author: arpitagarwal):
Hi [~xiaobingo], thanks for taking this up. My comments on the v5 patch:
# FsNameSystem and DatanodeManager need implement Reconfigurable, since their Reconfigurable methods are only invoked via NameNode.
# What does getNewConf() do? Looks like it just constructs a new config object by re-reading the config files? There should have been a Javadoc on the base class method, perhaps we can add one now.
# Can we just skip implementing reconfiguration via the servlet? A better approach is to have the daemon re-read its config files like HDFS-6808 (which you pointed out to me offline :-). Looks like you will need a new RPC call and support on the client. Also it would be good to log the reconfiguration request in the hdfs audit log.
# Nitpicks: Fix indentation in DatanodeManager#reconfigurePropertyImpl.
# {{#reconfigurePropertyImpl}} - get {{namesystem.writeLock()}} outside the {{try}} block.
Other suggestions for separate subtasks.
# The list of reconfigurable properties should not be hard-coded. We can add an annotation to the reconfigurable properties.
# Add {{ReconfigurableBase}} support for atomic updates, i.e. all or no changes take effect.
# Documentation.
> Make NameNode Reconfigurable.
> -----------------------------
>
> Key: HDFS-1477
> URL: https://issues.apache.org/jira/browse/HDFS-1477
> Project: Hadoop HDFS
> Issue Type: Sub-task
> Components: namenode
> Affects Versions: 2.7.0
> Reporter: Patrick Kling
> Assignee: Xiaobing Zhou
> Attachments: HDFS-1477.005.patch, HDFS-1477.2.patch, HDFS-1477.3.patch, HDFS-1477.4.patch, HDFS-1477.patch
>
>
> Modify NameNode to implement the interface Reconfigurable proposed in HADOOP-7001. This would allow us to change certain configuration properties without restarting the name node.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)