diff --git a/server/base/src/main/java/org/apache/accumulo/server/conf/util/ZooInfoViewer.java b/server/base/src/main/java/org/apache/accumulo/server/conf/util/ZooInfoViewer.java index e6c66639650..6667ffd6cae 100644 --- a/server/base/src/main/java/org/apache/accumulo/server/conf/util/ZooInfoViewer.java +++ b/server/base/src/main/java/org/apache/accumulo/server/conf/util/ZooInfoViewer.java @@ -103,7 +103,7 @@ public ZooInfoViewer() { @Override public String keyword() { - return "zoo-info-viewer"; + return "info-viewer"; } @Override @@ -113,7 +113,7 @@ public String description() { @Override public CommandGroup commandGroup() { - return CommandGroups.CONFIG; + return CommandGroups.ZOOKEEPER; } @Override diff --git a/server/base/src/main/java/org/apache/accumulo/server/conf/util/ZooPropEditor.java b/server/base/src/main/java/org/apache/accumulo/server/conf/util/ZooPropEditor.java index f4dcacc935b..71455708117 100644 --- a/server/base/src/main/java/org/apache/accumulo/server/conf/util/ZooPropEditor.java +++ b/server/base/src/main/java/org/apache/accumulo/server/conf/util/ZooPropEditor.java @@ -76,7 +76,7 @@ public ZooPropEditor() { @Override public String keyword() { - return "zoo-prop-editor"; + return "prop-editor"; } @Override @@ -87,7 +87,7 @@ public String description() { @Override public CommandGroup commandGroup() { - return CommandGroups.CONFIG; + return CommandGroups.ZOOKEEPER; } @Override diff --git a/server/base/src/main/java/org/apache/accumulo/server/util/DumpZookeeper.java b/server/base/src/main/java/org/apache/accumulo/server/util/DumpZookeeper.java index 14bfbab2aca..0043f823687 100644 --- a/server/base/src/main/java/org/apache/accumulo/server/util/DumpZookeeper.java +++ b/server/base/src/main/java/org/apache/accumulo/server/util/DumpZookeeper.java @@ -45,17 +45,17 @@ public DumpZookeeper() { @Override public String keyword() { - return "dump-zoo"; + return "dump"; } @Override public String description() { - return "Writes Zookeeper data as human readable or XML to a file."; + return "Writes ZooKeeper data as human readable or XML to a file."; } @Override public CommandGroup commandGroup() { - return CommandGroups.CONFIG; + return CommandGroups.ZOOKEEPER; } private static class Encoded { diff --git a/server/base/src/main/java/org/apache/accumulo/server/util/RemoveEntriesForMissingFiles.java b/server/base/src/main/java/org/apache/accumulo/server/util/RemoveEntriesForMissingFiles.java index b5541fa5567..1a1dad94bc0 100644 --- a/server/base/src/main/java/org/apache/accumulo/server/util/RemoveEntriesForMissingFiles.java +++ b/server/base/src/main/java/org/apache/accumulo/server/util/RemoveEntriesForMissingFiles.java @@ -244,7 +244,7 @@ public String keyword() { @Override public CommandGroup commandGroup() { - return CommandGroups.INSTANCE; + return CommandGroups.CHECK; } @Override diff --git a/server/base/src/main/java/org/apache/accumulo/server/util/ServerProcessKeywordExecutable.java b/server/base/src/main/java/org/apache/accumulo/server/util/ServerProcessKeywordExecutable.java index de6bd3b361a..c76750d9a6f 100644 --- a/server/base/src/main/java/org/apache/accumulo/server/util/ServerProcessKeywordExecutable.java +++ b/server/base/src/main/java/org/apache/accumulo/server/util/ServerProcessKeywordExecutable.java @@ -45,7 +45,7 @@ public CommandGroup commandGroup() { @Override public String description() { - return "Starts Accumulo " + name; + return "Runs Accumulo " + name; } @Override diff --git a/server/base/src/main/java/org/apache/accumulo/server/util/ZooKeeperMain.java b/server/base/src/main/java/org/apache/accumulo/server/util/ZooKeeperMain.java index 68a65d197d7..a59f7624d98 100644 --- a/server/base/src/main/java/org/apache/accumulo/server/util/ZooKeeperMain.java +++ b/server/base/src/main/java/org/apache/accumulo/server/util/ZooKeeperMain.java @@ -49,17 +49,17 @@ public ZooKeeperMain() { @Override public String keyword() { - return "zk-cli"; + return "cli"; } @Override public CommandGroup commandGroup() { - return CommandGroups.INSTANCE; + return CommandGroups.ZOOKEEPER; } @Override public String description() { - return "Starts an Apache Zookeeper client rooted at the current instance."; + return "Starts an Apache ZooKeeper client rooted at the current instance."; } @Override diff --git a/server/base/src/main/java/org/apache/accumulo/server/util/ZooZap.java b/server/base/src/main/java/org/apache/accumulo/server/util/ZooZap.java index c5b417885bb..f93571c255d 100644 --- a/server/base/src/main/java/org/apache/accumulo/server/util/ZooZap.java +++ b/server/base/src/main/java/org/apache/accumulo/server/util/ZooZap.java @@ -65,17 +65,17 @@ public ZooZap() { @Override public String keyword() { - return "zoo-zap"; + return "zap"; } @Override public String description() { - return "Utility for zapping Zookeeper locks"; + return "Utility for zapping ZooKeeper locks"; } @Override public CommandGroup commandGroup() { - return CommandGroups.PROCESS; + return CommandGroups.ZOOKEEPER; } static class ZapOpts extends ServerOpts { diff --git a/server/base/src/main/java/org/apache/accumulo/server/util/adminCommand/RestoreZookeeper.java b/server/base/src/main/java/org/apache/accumulo/server/util/adminCommand/RestoreZookeeper.java index 2773a4d9867..b5ce1152e19 100644 --- a/server/base/src/main/java/org/apache/accumulo/server/util/adminCommand/RestoreZookeeper.java +++ b/server/base/src/main/java/org/apache/accumulo/server/util/adminCommand/RestoreZookeeper.java @@ -129,17 +129,17 @@ public RestoreZookeeper() { @Override public String keyword() { - return "restore-zookeeper"; + return "restore"; } @Override public CommandGroup commandGroup() { - return CommandGroups.CONFIG; + return CommandGroups.ZOOKEEPER; } @Override public String description() { - return "Restore Zookeeper data from a file."; + return "Restore ZooKeeper data from a file."; } @Override diff --git a/server/base/src/main/java/org/apache/accumulo/server/util/adminCommand/SystemCheck.java b/server/base/src/main/java/org/apache/accumulo/server/util/adminCommand/SystemCheck.java index 0fa57b6f829..c8976037604 100644 --- a/server/base/src/main/java/org/apache/accumulo/server/util/adminCommand/SystemCheck.java +++ b/server/base/src/main/java/org/apache/accumulo/server/util/adminCommand/SystemCheck.java @@ -165,12 +165,12 @@ public SystemCheck(T testOpts) { @Override public String keyword() { - return "check"; + return "system"; } @Override public CommandGroup commandGroup() { - return CommandGroups.INSTANCE; + return CommandGroups.CHECK; } @Override diff --git a/server/base/src/main/java/org/apache/accumulo/server/util/adminCommand/VerifyTabletAssignments.java b/server/base/src/main/java/org/apache/accumulo/server/util/adminCommand/VerifyTabletAssignments.java index 85d82c17d0a..dec97210a5c 100644 --- a/server/base/src/main/java/org/apache/accumulo/server/util/adminCommand/VerifyTabletAssignments.java +++ b/server/base/src/main/java/org/apache/accumulo/server/util/adminCommand/VerifyTabletAssignments.java @@ -92,7 +92,7 @@ public String keyword() { @Override public CommandGroup commandGroup() { - return CommandGroups.INSTANCE; + return CommandGroups.CHECK; } @Override diff --git a/start/src/main/java/org/apache/accumulo/start/Main.java b/start/src/main/java/org/apache/accumulo/start/Main.java index e7355c04ce2..fa92224e5a1 100644 --- a/start/src/main/java/org/apache/accumulo/start/Main.java +++ b/start/src/main/java/org/apache/accumulo/start/Main.java @@ -48,7 +48,8 @@ public static void main(final String[] args) throws Exception { printUsage(); System.exit(1); } - if (args[0].equals("-h") || args[0].equals("-help") || args[0].equals("--help")) { + if (args[0].equals("-h") || args[0].equals("-help") || args[0].equals("--help") + || args[0].equals("-?")) { printUsage(); return; } @@ -199,7 +200,7 @@ public static void printUsage() { """ Usage one of: - accumulo --help + accumulo --help | -help | -h | -? Prints this help accumulo classpath diff --git a/start/src/main/java/org/apache/accumulo/start/spi/CommandGroups.java b/start/src/main/java/org/apache/accumulo/start/spi/CommandGroups.java index 252bbeedf21..8a46eb2aff0 100644 --- a/start/src/main/java/org/apache/accumulo/start/spi/CommandGroups.java +++ b/start/src/main/java/org/apache/accumulo/start/spi/CommandGroups.java @@ -33,6 +33,8 @@ public class CommandGroups { public static final CommandGroup OTHER = new OtherCommandGroup(); public static final CommandGroup PROCESS = new ProcessCommandGroup(); public static final CommandGroup TABLE = new TableCommandGroup(); + public static final CommandGroup ZOOKEEPER = new ZookeeperCommandGroup(); + public static final CommandGroup CHECK = new CheckCommandGroup(); /** * @since 4.0.0 @@ -244,4 +246,48 @@ public String description() { } } + /** + * @since 4.0.0 + */ + public static class ZookeeperCommandGroup extends BaseCommandGroup { + + private ZookeeperCommandGroup() {} + + @Override + public String key() { + return "zk"; + } + + @Override + public String title() { + return "ZooKeeper"; + } + + @Override + public String description() { + return "ZooKeeper related commands"; + } + } + + /** + * @since 4.0.0 + */ + public static class CheckCommandGroup extends BaseCommandGroup { + + @Override + public String key() { + return "check"; + } + + @Override + public String title() { + return "Check"; + } + + @Override + public String description() { + return "Troubleshooting and verification commands"; + } + } + } diff --git a/test/src/main/java/org/apache/accumulo/test/start/KeywordStartIT.java b/test/src/main/java/org/apache/accumulo/test/start/KeywordStartIT.java index 04f302b63d2..e97eeb09719 100644 --- a/test/src/main/java/org/apache/accumulo/test/start/KeywordStartIT.java +++ b/test/src/main/java/org/apache/accumulo/test/start/KeywordStartIT.java @@ -185,7 +185,7 @@ public void testExpectedClasses() { expectSet.add(new CommandInfo(TestCommandGroup.INSTANCE, "binary-rows", TestBinaryRows.class)); expectSet.add(new CommandInfo(CommandGroups.COMPACTION, "cancel", CancelCompaction.class)); expectSet.add(new CommandInfo(CommandGroups.INSTANCE, "change-secret", ChangeSecret.class)); - expectSet.add(new CommandInfo(CommandGroups.INSTANCE, "check", SystemCheck.class)); + expectSet.add(new CommandInfo(CommandGroups.CHECK, "system", SystemCheck.class)); expectSet.add(new CommandInfo(CommandGroups.CONFIG, "check-accumulo-properties", CheckAccumuloProperties.class)); expectSet.add(new CommandInfo(CommandGroups.CONFIG, "check-compaction-config", @@ -196,7 +196,7 @@ public void testExpectedClasses() { expectSet .add(new CommandInfo(CommandGroups.INSTANCE, "delete-instance", DeleteZooInstance.class)); expectSet.add(new CommandInfo(CommandGroups.CONFIG, "dump-config", DumpConfig.class)); - expectSet.add(new CommandInfo(CommandGroups.CONFIG, "dump-zoo", DumpZookeeper.class)); + expectSet.add(new CommandInfo(CommandGroups.ZOOKEEPER, "dump", DumpZookeeper.class)); expectSet.add(new CommandInfo(CommandGroups.CONFIG, "import", ImportConfigCommand.class)); expectSet.add(new CommandInfo(CommandGroups.CONFIG, "export", ExportConfigCommand.class)); expectSet.add(new CommandInfo(CommandGroups.INSTANCE, "fate", Fate.class)); @@ -221,8 +221,8 @@ public void testExpectedClasses() { expectSet.add(new CommandInfo(CommandGroups.PROCESS, "manager", ManagerExecutable.class)); expectSet .add(new CommandInfo(CommandGroups.PROCESS, "minicluster", MiniClusterExecutable.class)); - expectSet.add(new CommandInfo(CommandGroups.INSTANCE, "missing-files", - RemoveEntriesForMissingFiles.class)); + expectSet.add( + new CommandInfo(CommandGroups.CHECK, "missing-files", RemoveEntriesForMissingFiles.class)); expectSet.add(new CommandInfo(CommandGroups.PROCESS, "monitor", MonitorExecutable.class)); expectSet.add(new CommandInfo(TestCommandGroup.INSTANCE, "multi-table-ingest", TestMultiTableIngest.class)); @@ -232,8 +232,7 @@ public void testExpectedClasses() { expectSet.add(new CommandInfo(TestCommandGroup.INSTANCE, "random-writer", RandomWriter.class)); expectSet.add(new CommandInfo(CommandGroups.INSTANCE, "remove-scan-server-references", ScanServerMetadataEntries.class)); - expectSet - .add(new CommandInfo(CommandGroups.CONFIG, "restore-zookeeper", RestoreZookeeper.class)); + expectSet.add(new CommandInfo(CommandGroups.ZOOKEEPER, "restore", RestoreZookeeper.class)); expectSet.add(new CommandInfo(CommandGroups.FILE, "rfile-info", PrintInfo.class)); expectSet.add(new CommandInfo(CommandGroups.INSTANCE, "service-status", ServiceStatus.class)); expectSet.add(new CommandInfo(CommandGroups.CLIENT, "shell", Shell.class)); @@ -247,14 +246,14 @@ public void testExpectedClasses() { expectSet.add(new CommandInfo(CommandGroups.PROCESS, "tserver", TServerExecutable.class)); expectSet.add(new CommandInfo(CommandGroups.INSTANCE, "upgrade", UpgradeUtil.class)); expectSet.add(new CommandInfo(TestCommandGroup.INSTANCE, "verify-ingest", VerifyIngest.class)); - expectSet.add(new CommandInfo(CommandGroups.INSTANCE, "verify-tablet-assignments", + expectSet.add(new CommandInfo(CommandGroups.CHECK, "verify-tablet-assignments", VerifyTabletAssignments.class)); expectSet.add(new CommandInfo(CommandGroups.CLIENT, "version", Version.class)); expectSet.add(new CommandInfo(CommandGroups.FILE, "wal-info", LogReader.class)); - expectSet.add(new CommandInfo(CommandGroups.CONFIG, "zoo-info-viewer", ZooInfoViewer.class)); - expectSet.add(new CommandInfo(CommandGroups.CONFIG, "zoo-prop-editor", ZooPropEditor.class)); - expectSet.add(new CommandInfo(CommandGroups.PROCESS, "zoo-zap", ZooZap.class)); - expectSet.add(new CommandInfo(CommandGroups.INSTANCE, "zk-cli", ZooKeeperMain.class)); + expectSet.add(new CommandInfo(CommandGroups.ZOOKEEPER, "info-viewer", ZooInfoViewer.class)); + expectSet.add(new CommandInfo(CommandGroups.ZOOKEEPER, "prop-editor", ZooPropEditor.class)); + expectSet.add(new CommandInfo(CommandGroups.ZOOKEEPER, "zap", ZooZap.class)); + expectSet.add(new CommandInfo(CommandGroups.ZOOKEEPER, "cli", ZooKeeperMain.class)); Map> actualExecutables = getKeywordExecutables(); SortedSet actualSet = new TreeSet<>();