This is an automated email from the ASF dual-hosted git repository.

etudenhoefner pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/iceberg.git


The following commit(s) were added to refs/heads/main by this push:
     new ccc3e14df9 Spark: Improve namespace existence verification logic 
(#14507)
ccc3e14df9 is described below

commit ccc3e14df9a3a76be5c7b469c8a662d2da363400
Author: roryqi <[email protected]>
AuthorDate: Wed Nov 5 23:37:35 2025 +0800

    Spark: Improve namespace existence verification logic (#14507)
---
 .../spark/src/main/java/org/apache/iceberg/spark/SparkCatalog.java  | 6 ++++++
 .../spark/src/main/java/org/apache/iceberg/spark/SparkCatalog.java  | 6 ++++++
 .../spark/src/main/java/org/apache/iceberg/spark/SparkCatalog.java  | 6 ++++++
 3 files changed, 18 insertions(+)

diff --git 
a/spark/v3.4/spark/src/main/java/org/apache/iceberg/spark/SparkCatalog.java 
b/spark/v3.4/spark/src/main/java/org/apache/iceberg/spark/SparkCatalog.java
index 724fb377d9..d90dd61590 100644
--- a/spark/v3.4/spark/src/main/java/org/apache/iceberg/spark/SparkCatalog.java
+++ b/spark/v3.4/spark/src/main/java/org/apache/iceberg/spark/SparkCatalog.java
@@ -455,6 +455,12 @@ public class SparkCatalog extends BaseCatalog {
     throw new NoSuchNamespaceException(namespace);
   }
 
+  @Override
+  public boolean namespaceExists(String[] namespace) {
+    return asNamespaceCatalog != null
+        && asNamespaceCatalog.namespaceExists(Namespace.of(namespace));
+  }
+
   @Override
   public Map<String, String> loadNamespaceMetadata(String[] namespace)
       throws NoSuchNamespaceException {
diff --git 
a/spark/v3.5/spark/src/main/java/org/apache/iceberg/spark/SparkCatalog.java 
b/spark/v3.5/spark/src/main/java/org/apache/iceberg/spark/SparkCatalog.java
index e0af6eb35e..fea86c8a1d 100644
--- a/spark/v3.5/spark/src/main/java/org/apache/iceberg/spark/SparkCatalog.java
+++ b/spark/v3.5/spark/src/main/java/org/apache/iceberg/spark/SparkCatalog.java
@@ -455,6 +455,12 @@ public class SparkCatalog extends BaseCatalog {
     throw new NoSuchNamespaceException(namespace);
   }
 
+  @Override
+  public boolean namespaceExists(String[] namespace) {
+    return asNamespaceCatalog != null
+        && asNamespaceCatalog.namespaceExists(Namespace.of(namespace));
+  }
+
   @Override
   public Map<String, String> loadNamespaceMetadata(String[] namespace)
       throws NoSuchNamespaceException {
diff --git 
a/spark/v4.0/spark/src/main/java/org/apache/iceberg/spark/SparkCatalog.java 
b/spark/v4.0/spark/src/main/java/org/apache/iceberg/spark/SparkCatalog.java
index 208ec52c8f..c746140022 100644
--- a/spark/v4.0/spark/src/main/java/org/apache/iceberg/spark/SparkCatalog.java
+++ b/spark/v4.0/spark/src/main/java/org/apache/iceberg/spark/SparkCatalog.java
@@ -456,6 +456,12 @@ public class SparkCatalog extends BaseCatalog {
     throw new NoSuchNamespaceException(namespace);
   }
 
+  @Override
+  public boolean namespaceExists(String[] namespace) {
+    return asNamespaceCatalog != null
+        && asNamespaceCatalog.namespaceExists(Namespace.of(namespace));
+  }
+
   @Override
   public Map<String, String> loadNamespaceMetadata(String[] namespace)
       throws NoSuchNamespaceException {

Reply via email to