From 3e8a2b1ede65d0039321eeeed55e9ad5fd383ace Mon Sep 17 00:00:00 2001 From: arbaazkhan1 Date: Thu, 30 Apr 2026 12:05:00 -0400 Subject: [PATCH 1/2] Reorganized commands --- .../server/conf/util/ZooInfoViewer.java | 2 +- .../server/conf/util/ZooPropEditor.java | 2 +- .../accumulo/server/util/DumpZookeeper.java | 2 +- .../util/RemoveEntriesForMissingFiles.java | 2 +- .../util/ServerProcessKeywordExecutable.java | 2 +- .../accumulo/server/util/ZooKeeperMain.java | 2 +- .../apache/accumulo/server/util/ZooZap.java | 2 +- .../util/adminCommand/RestoreZookeeper.java | 2 +- .../server/util/adminCommand/SystemCheck.java | 2 +- .../adminCommand/VerifyTabletAssignments.java | 2 +- .../java/org/apache/accumulo/start/Main.java | 5 +- .../accumulo/start/spi/CommandGroups.java | 48 ++++++++++++++++++- .../accumulo/test/start/KeywordStartIT.java | 20 ++++---- 13 files changed, 70 insertions(+), 23 deletions(-) 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..a403fdaa63b 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 @@ -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..c9f23babb36 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 @@ -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..d3924be4a5f 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 @@ -55,7 +55,7 @@ public String description() { @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..142290630bf 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 @@ -54,7 +54,7 @@ public String keyword() { @Override public CommandGroup commandGroup() { - return CommandGroups.INSTANCE; + return CommandGroups.ZOOKEEPER; } @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..cfda40ad727 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 @@ -75,7 +75,7 @@ public String description() { @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..a02f61a2926 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 @@ -134,7 +134,7 @@ public String keyword() { @Override public CommandGroup commandGroup() { - return CommandGroups.CONFIG; + return CommandGroups.ZOOKEEPER; } @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..d7595148b51 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 @@ -170,7 +170,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/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..56ebb850222 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 @@ -161,7 +163,7 @@ private InstanceCommandGroup() {} @Override public String key() { - return "inst"; + return "instance"; } @Override @@ -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 3b3b819730e..88e4f7c38c4 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 @@ -183,7 +183,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, "check", SystemCheck.class)); expectSet.add(new CommandInfo(CommandGroups.CONFIG, "check-accumulo-properties", CheckAccumuloProperties.class)); expectSet.add(new CommandInfo(CommandGroups.CONFIG, "check-compaction-config", @@ -194,7 +194,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-zoo", DumpZookeeper.class)); expectSet.add(new CommandInfo(CommandGroups.INSTANCE, "fate", Fate.class)); expectSet.add(new CommandInfo(CommandGroups.TABLE, "find-online-ondemand-tablets", ListOnlineOnDemandTablets.class)); @@ -217,8 +217,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)); @@ -229,7 +229,7 @@ public void testExpectedClasses() { expectSet.add(new CommandInfo(CommandGroups.INSTANCE, "remove-scan-server-references", ScanServerMetadataEntries.class)); expectSet - .add(new CommandInfo(CommandGroups.CONFIG, "restore-zookeeper", RestoreZookeeper.class)); + .add(new CommandInfo(CommandGroups.ZOOKEEPER, "restore-zookeeper", 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)); @@ -243,14 +243,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, "zoo-info-viewer", ZooInfoViewer.class)); + expectSet.add(new CommandInfo(CommandGroups.ZOOKEEPER, "zoo-prop-editor", ZooPropEditor.class)); + expectSet.add(new CommandInfo(CommandGroups.ZOOKEEPER, "zoo-zap", ZooZap.class)); + expectSet.add(new CommandInfo(CommandGroups.ZOOKEEPER, "zk-cli", ZooKeeperMain.class)); Map> actualExecutables = getKeywordExecutables(); SortedSet actualSet = new TreeSet<>(); From 534d235d5381c7e5470b111a977e471f0b3b4fa3 Mon Sep 17 00:00:00 2001 From: arbaazkhan1 Date: Tue, 5 May 2026 13:30:01 -0400 Subject: [PATCH 2/2] fixed changes --- .../main/java/org/apache/accumulo/start/spi/CommandGroups.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 56ebb850222..6b0951d8200 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 @@ -163,7 +163,7 @@ private InstanceCommandGroup() {} @Override public String key() { - return "instance"; + return "inst"; } @Override