Comes from using the default input validator. Technically it's fine, but it looks pretty bad. Basically we should have a nicer message, not the Log4J FATALS + stack trace.
for example:
[bennight@cacti ~]$ geowave-ingest -localingest
11 Apr 16:49:03 FATAL [ingest.AccumuloCommandLineOptions] - Zookeeper URL not set
11 Apr 16:49:03 FATAL [ingest.AccumuloCommandLineOptions] - Accumulo instance ID not set
11 Apr 16:49:03 FATAL [ingest.AccumuloCommandLineOptions] - Accumulo user ID not set
11 Apr 16:49:03 FATAL [ingest.AccumuloCommandLineOptions] - Accumulo password not set
11 Apr 16:49:03 FATAL [ingest.AbstractCommandLineDriver] -
org.apache.commons.cli.ParseException: Required option is missing
at mil.nga.giat.geowave.ingest.AccumuloCommandLineOptions.parseOptions(AccumuloCommandLineOptions.java:186)
at mil.nga.giat.geowave.ingest.local.LocalFileIngestDriver.parseOptionsInternal(LocalFileIngestDriver.java:49)
at mil.nga.giat.geowave.ingest.AbstractCommandLineDriver.applyArguments(AbstractCommandLineDriver.java:168)
at mil.nga.giat.geowave.ingest.AbstractCommandLineDriver.run(AbstractCommandLineDriver.java:71)
at mil.nga.giat.geowave.ingest.IngestMain.main(IngestMain.java:51)
usage: -localingest <options>
Options:
-b,--base <arg> Base input file or directory to crawl with
one of the supported ingest types
-c,--clear Clear ALL data stored with the same prefix
as this namespace (optional; default is to
append data to the namespace if it exists)
-dim,--dimensionality <arg> The dimensionality type for the index,
either 'spatial' or 'spatial-temporal'
(optional; default is 'spatial')
-h,--help Display help
-i,--instance-id <arg> The Accumulo instance ID
-l,--list List the available ingest types
-n,--namespace <arg> The table namespace (optional; default is
no namespace)
-p,--password <arg> The password for the user
-t,--types <arg> Explicitly set the ingest type by name (or
multiple comma-delimited types), if not set
all available ingest types will be used
-u,--user <arg> A valid Accumulo user ID
-v,--visibility <arg> The visiblity of the data ingested
(optional; default is 'public')
-x,--extension <arg> individual or comma-delimited set of file
extensions to accept (optional)
-z,--zookeepers <arg> A comma-separated list of zookeeper servers
that an Accumulo instance is using
should instead look something more like the following (doesn't have to be exact - just trying to convey they spirit of the change)
[bennight@cacti ~]$ geowave-ingest -localingest
Error: missing required arguments (Zookeeper URL, Accumulo instance ID, Accumulo user ID, Accumulo password).
usage: -localingest <options>
Options:
-b,--base <arg> Base input file or directory to crawl with
one of the supported ingest types
-c,--clear Clear ALL data stored with the same prefix
as this namespace (optional; default is to
append data to the namespace if it exists)
-dim,--dimensionality <arg> The dimensionality type for the index,
either 'spatial' or 'spatial-temporal'
(optional; default is 'spatial')
-h,--help Display help
-i,--instance-id <arg> The Accumulo instance ID
-l,--list List the available ingest types
-n,--namespace <arg> The table namespace (optional; default is
no namespace)
-p,--password <arg> The password for the user
-t,--types <arg> Explicitly set the ingest type by name (or
multiple comma-delimited types), if not set
all available ingest types will be used
-u,--user <arg> A valid Accumulo user ID
-v,--visibility <arg> The visiblity of the data ingested
(optional; default is 'public')
-x,--extension <arg> individual or comma-delimited set of file
extensions to accept (optional)
-z,--zookeepers <arg> A comma-separated list of zookeeper servers
that an Accumulo instance is using
Comes from using the default input validator. Technically it's fine, but it looks pretty bad. Basically we should have a nicer message, not the Log4J FATALS + stack trace.
for example:
should instead look something more like the following (doesn't have to be exact - just trying to convey they spirit of the change)