From 5aac8b93d8896c2b0ec819666d3bae32be577e32 Mon Sep 17 00:00:00 2001 From: kanthi subramanian Date: Thu, 22 Jan 2026 14:40:44 -0600 Subject: [PATCH] Added exception handler for REST catalog initialization to print user friendly error message. --- ice/src/main/java/com/altinity/ice/cli/Main.java | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) 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 0a34ed6..be7ada3 100644 --- a/ice/src/main/java/com/altinity/ice/cli/Main.java +++ b/ice/src/main/java/com/altinity/ice/cli/Main.java @@ -41,6 +41,7 @@ import java.util.Scanner; import java.util.stream.Collectors; import org.apache.curator.shaded.com.google.common.net.HostAndPort; +import org.apache.iceberg.CatalogProperties; import org.apache.iceberg.catalog.Namespace; import org.apache.iceberg.catalog.TableIdentifier; import org.apache.iceberg.rest.RESTCatalog; @@ -674,7 +675,18 @@ private RESTCatalog loadCatalog(String configFile) throws IOException { : e.getKey()) .sorted() .collect(Collectors.joining(", "))); - catalog.initialize("default", icebergConfig); + String catalogUri = icebergConfig.get(CatalogProperties.URI); + try { + catalog.initialize("default", icebergConfig); + } catch (org.apache.iceberg.exceptions.RESTException e) { + throw new RuntimeException( + String.format( + "Failed to connect to REST catalog at '%s'. " + + "Please check that the catalog server is running and the URL is correct. " + + "Configure via: .ice.yaml 'uri' field, ICE_URI env var, or --config flag.", + catalogUri), + e); + } return catalog; }