This is an automated email from the ASF dual-hosted git repository.
lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git
The following commit(s) were added to refs/heads/master by this push:
new cc1cbc87a [spark] spark sql support get/list function (#2880)
cc1cbc87a is described below
commit cc1cbc87a0bfb2350ca7bfddbaab57e45a8e693d
Author: chao chen <[email protected]>
AuthorDate: Mon Mar 18 15:32:50 2024 +0800
[spark] spark sql support get/list function (#2880)
---
.../main/java/org/apache/paimon/spark/SparkGenericCatalog.java | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git
a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkGenericCatalog.java
b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkGenericCatalog.java
index 931b1f192..3bdff7376 100644
---
a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkGenericCatalog.java
+++
b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkGenericCatalog.java
@@ -39,6 +39,7 @@ import org.apache.spark.sql.catalyst.catalog.SessionCatalog;
import org.apache.spark.sql.connector.catalog.CatalogExtension;
import org.apache.spark.sql.connector.catalog.CatalogPlugin;
import org.apache.spark.sql.connector.catalog.CatalogUtils;
+import org.apache.spark.sql.connector.catalog.FunctionCatalog;
import org.apache.spark.sql.connector.catalog.Identifier;
import org.apache.spark.sql.connector.catalog.NamespaceChange;
import org.apache.spark.sql.connector.catalog.SupportsNamespaces;
@@ -316,18 +317,22 @@ public class SparkGenericCatalog extends SparkBaseCatalog
implements CatalogExte
return (SupportsNamespaces) sessionCatalog;
}
+ private FunctionCatalog asFunctionCatalog() {
+ return (FunctionCatalog) sessionCatalog;
+ }
+
@Override
public Identifier[] listFunctions(String[] namespace) throws
NoSuchNamespaceException {
if (namespace.length == 0 || isSystemNamespace(namespace) ||
namespaceExists(namespace)) {
return new Identifier[0];
}
- throw new NoSuchNamespaceException(namespace);
+ return asFunctionCatalog().listFunctions(namespace);
}
@Override
public UnboundFunction loadFunction(Identifier ident) throws
NoSuchFunctionException {
- throw new NoSuchFunctionException(ident);
+ return asFunctionCatalog().loadFunction(ident);
}
private static boolean isSystemNamespace(String[] namespace) {