Use a CLI library consistently to parse parameters in all utilities.

Details

Description

In a few utilities, the command-line parsing is pretty lazy. There's no usage, just an NPE if you don't provide all the magic options on the command-line. In particular, Initialize doesn't use an off-the-shelf library for command-line parsing, and it really should.

David Medinets
added a comment - 29/Aug/12 02:52 Please be more specific. Which utilities should read accumulo-site.xml? We should probably have one ticket for each to minimize the changes related to each.

Everything with public static void main(String[] args) function in the server package should (optionally) use accumulo-site.xml, provide usage and use an off-the-shelf argument parsing utility, unless it is in the test directory.

Every example should also provide usage and use an off-the-shelf argument parsing utility.

Eric Newton
added a comment - 29/Aug/12 03:08 Everything with public static void main(String[] args) function in the server package should (optionally) use accumulo-site.xml, provide usage and use an off-the-shelf argument parsing utility, unless it is in the test directory.
Every example should also provide usage and use an off-the-shelf argument parsing utility.

Furthermore, I disagree with the strong checking for conf/masters and conf/slaves in config.sh. I can understand this being in start-all and/or tup, but not in config, as scripts which do not rely on those files use config.sh as well. This also breaks the python functional tests on the first run, given an empty conf directory.

John Vines
added a comment - 03/Jan/13 20:50 Furthermore, I disagree with the strong checking for conf/masters and conf/slaves in config.sh. I can understand this being in start-all and/or tup, but not in config, as scripts which do not rely on those files use config.sh as well. This also breaks the python functional tests on the first run, given an empty conf directory.