From 25cc659424dd9564d0950190aa29c024bdaf18ab Mon Sep 17 00:00:00 2001 From: Kanthi Subramanian Date: Fri, 15 Aug 2025 09:52:26 -0500 Subject: [PATCH] Pass purge as a cli option to delete-table. --- ice/src/main/java/com/altinity/ice/cli/Main.java | 9 +++++++-- .../com/altinity/ice/cli/internal/cmd/DeleteTable.java | 7 +++++-- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/ice/src/main/java/com/altinity/ice/cli/Main.java b/ice/src/main/java/com/altinity/ice/cli/Main.java index 2444fe8..690f726 100644 --- a/ice/src/main/java/com/altinity/ice/cli/Main.java +++ b/ice/src/main/java/com/altinity/ice/cli/Main.java @@ -387,10 +387,15 @@ void deleteTable( @CommandLine.Option( names = {"-p"}, description = "Ignore not found") - boolean ignoreNotFound) + boolean ignoreNotFound, + @CommandLine.Option( + names = {"--purge"}, + description = "Purge table data completely (default: false)", + defaultValue = "false") + boolean purge) throws IOException { try (RESTCatalog catalog = loadCatalog()) { - DeleteTable.run(catalog, TableIdentifier.parse(name), ignoreNotFound); + DeleteTable.run(catalog, TableIdentifier.parse(name), ignoreNotFound, purge); } } diff --git a/ice/src/main/java/com/altinity/ice/cli/internal/cmd/DeleteTable.java b/ice/src/main/java/com/altinity/ice/cli/internal/cmd/DeleteTable.java index 2ca9ff6..fca7ee3 100644 --- a/ice/src/main/java/com/altinity/ice/cli/internal/cmd/DeleteTable.java +++ b/ice/src/main/java/com/altinity/ice/cli/internal/cmd/DeleteTable.java @@ -22,14 +22,17 @@ public final class DeleteTable { private DeleteTable() {} - public static void run(RESTCatalog catalog, TableIdentifier nsTable, boolean ignoreNotFound) + public static void run( + RESTCatalog catalog, TableIdentifier nsTable, boolean ignoreNotFound, boolean purge) throws IOException { - var purge = true; // FIXME + logger.info("Deleting table: {}", nsTable); + if (!catalog.dropTable(nsTable, purge)) { if (!ignoreNotFound) { throw new NotFoundException(String.format("Table %s not found", nsTable)); } logger.warn("Table {} not found", nsTable); } + logger.info("Deleted table: {} successfully", nsTable); } }