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

Allen Wittenauer commented on HDFS-10370:
-----------------------------------------

In addition, there's some other issues, at least for trunk:

* Lots of caps being used for non-globals
* No declares for local-to-function vars
* single quote shell outs are deprecated
* Secure mode daemons do not have the necessary code here
* The comment in hadoop-env.sh is not nearly good enough.
* This is applying what is marked as datanode to literally everything, 
including end user commands

This last point gets to [~jzhuge]'s question:

bq. Any generic way to run numactl for Hadoop daemons with different numactl 
args?

Yes.  This should be written similarly to how hadoop_verify_user is built.  
Inside hadoop_java_exec (and the other places where we launch bits), it should 
check if HADOOP_NUMACTL_$\{command}_OPTS is set. $\{command} will equal 
'datanode' or 'namenode' or whatever.  If it is, then execute numactl. If not, 
run it unchanged.  So move this to be a HADOOP jira and let's make this 
functionality generic.

I'd actually recommend this NOT go into branch-2:

* This is going to be a significantly larger patch since there isn't any common 
code paths to launch java
* It really needs to be forward compatible being added so late to branch-2's 
lifecycle

> Allow DataNode to be started with numactl
> -----------------------------------------
>
>                 Key: HDFS-10370
>                 URL: https://issues.apache.org/jira/browse/HDFS-10370
>             Project: Hadoop HDFS
>          Issue Type: Improvement
>          Components: datanode
>            Reporter: Dave Marion
>            Assignee: Dave Marion
>         Attachments: HDFS-10370-1.patch, HDFS-10370-2.patch, 
> HDFS-10370-3.patch, HDFS-10370-branch-2.004.patch, HDFS-10370.004.patch
>
>
> Allow numactl constraints to be applied to the datanode process. The 
> implementation I have in mind involves two environment variables (enable and 
> parameters) in the datanode startup process. Basically, if enabled and 
> numactl exists on the system, then start the java process using it. Provide a 
> default set of parameters, and allow the user to override the default. Wiring 
> this up for the non-jsvc use case seems straightforward. Not sure how this 
> can be supported using jsvc.



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

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to