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

Allen Wittenauer commented on HDFS-6808:
----------------------------------------

bq. I would like to understand your option more clearly.

I'm trying to figure out what the long-term intent will be and how it relates 
to the existing sub-commands.  Once you add something, it is very very hard to 
take it away.  Command line options should have a 'rhythm' to them.  The \- in 
front of the datanode object definitely seems... off.  

Plus, it seems odd that -refresh has nearly the exact same arguments as the 
proposed -reconfig, but in a different order.  That's a major usability problem 
as admins will need to remember which order for which command.  Never-mind 
having to remember which one does which.

There's a definite Ease Of Use issue here.

That said:

What if the structure was:
{code}
-reconfig <datanode|...> [host[:ipc_port]] <start|status> 
{code}

i.e.,

-reconfig datanode start

would trigger a reconfig on all datanodes

-reconfig datanode <host> start

(we can figure out the IPC port of the host based upon either DN registry or 
hdfs-site.xml, right? ) in the case of two on the same host, we'd fail.

-reconfig datanode host:port start

very specific.

This leaves the door open for:

-reconfig namenode host start

etc.

This clearly doesn't address the refresh issue though.

bq.  this patch doesn't alter the NameNode

Doesn't matter. Users want consistency across the interfaces.  Just shoving 
something in without thinking about the future or what already exists increases 
support issues across the board. (Hello YARN and the idiotic node path BS in 
yarn-site.xml.)

Here's a fun experiment:  go down to your support folks and ask them if there 
is a difference between 'refresh' and 'reconfig' with no prompting. What's the 
first thing they say? It'd be interesting to hear the results.

> Add command line option to ask DataNode reload configuration.
> -------------------------------------------------------------
>
>                 Key: HDFS-6808
>                 URL: https://issues.apache.org/jira/browse/HDFS-6808
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>          Components: datanode
>    Affects Versions: 2.5.0
>            Reporter: Lei (Eddy) Xu
>            Assignee: Lei (Eddy) Xu
>         Attachments: HDFS-6808.000.combo.patch, HDFS-6808.000.patch, 
> HDFS-6808.001.combo.patch, HDFS-6808.001.patch, HDFS-6808.002.combo.patch, 
> HDFS-6808.002.patch, HDFS-6808.003.combo.txt, HDFS-6808.003.patch, 
> HDFS-6808.004.combo.patch, HDFS-6808.004.patch, HDFS-6808.005.combo.patch, 
> HDFS-6808.005.patch, HDFS-6808.006.combo.patch, HDFS-6808.006.patch, 
> HDFS-6808.007.combo.patch, HDFS-6808.007.patch, HDFS-6808.008.combo.patch, 
> HDFS-6808.008.patch, HDFS-6808.009.combo.patch, HDFS-6808.009.patch
>
>
> The workflow of dynamically changing data volumes on DataNode is
> # Users manually changed {{dfs.datanode.data.dir}} in the configuration file
> # User use command line to notify DN to reload configuration and updates its 
> volumes. 
> This work adds command line support to notify DN to reload configuration.



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

Reply via email to