hadoop-common-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Allen Wittenauer (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HADOOP-9902) Shell script rewrite
Date Wed, 04 Sep 2013 00:59:53 GMT

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

Allen Wittenauer commented on HADOOP-9902:
------------------------------------------

Uploaded another mostly untested code drop with contents of bin/ and libexec/ to show progress,
get some feedback, etc.  Basic stuff does appear to work for me, but I haven't tried starting
any daemons yet since I'm still working out the new secure DN starter code to be much more
flexible.  Plus I'm still working my way through sbin. A few things worth pointing out:

Load order should be consistent now.  Basic path is:

* bin/command sets HADOOP_NEW_CONFIG to disable auto-population.  It then loads:
** xyz-config.sh 
*** hadoop-config.sh 
**** hadoop-env.sh
**** hadoop-functions.sh
*** xyz-env.sh <- loading this here should allow for users to override quite a bit more,
at least that's the hypothesis
* (do whatever)
* finalize <- fills in any missing -D's
* exec java

This mainly has implications for YARN which did/does really oddball things with YARN_OPTS.
 There is bound to be some (edge-case?) breakage here, but (IMO) consistency is more important.
 I tried to 'make it work', but...

Misc.

* users can override functions in hadoop-env.sh.  This means if they need extra/replacement
functionality, totally doable, without replacing anything in libexec.  I might make a specific
call out
* double-dash options (i.e., --config) are handled by the same code, consistently, in hadoop-config.sh.
 Also, since this is a loop, the order of the options no longer matters, except for --config
(for what are hopefully obvious reasons). --help and friends work by having the top level
define a function called usage(). 
* Most/all of the crazy if/fi constructions (esp those buried inside a case!) have been replaced
with a single-parent case statement.  Also, an effort has been made to mostly alphabetize
the commands in the case statement, although I'm sure I missed one or two.
* Option C from above has been implemented.  I think. ;)
* I haven't touched httpfs yet at all. 
* You can see some previews of some of the stuff in sbin.  For example, slaves.sh now uses
pdsh if it is installed.
* LD_LIBRARY_PATH, CLASSPATH, JAVA_LIBRARY_PATH are now de-duped.

                
> Shell script rewrite
> --------------------
>
>                 Key: HADOOP-9902
>                 URL: https://issues.apache.org/jira/browse/HADOOP-9902
>             Project: Hadoop Common
>          Issue Type: Improvement
>          Components: scripts
>    Affects Versions: 2.1.1-beta
>            Reporter: Allen Wittenauer
>            Assignee: Allen Wittenauer
>         Attachments: more-info.txt, scripts.tgz
>
>
> Umbrella JIRA for shell script rewrite.  See more-info.txt for more details.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message