You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@paimon.apache.org by lz...@apache.org on 2023/12/11 03:25:01 UTC

(incubator-paimon) 03/08: [spark] Show create table display using paimon (#2460)

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

lzljs3620320 pushed a commit to branch release-0.6
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git

commit 1e96efdb942fa0b6981fe57848ce19993ef9996b
Author: Zouxxyy <zo...@alibaba-inc.com>
AuthorDate: Thu Dec 7 10:14:41 2023 +0800

    [spark] Show create table display using paimon (#2460)
---
 .../src/main/java/org/apache/paimon/spark/SparkGenericCatalog.java    | 4 ++--
 .../src/main/java/org/apache/paimon/spark/SparkTable.java             | 4 +++-
 .../src/test/java/org/apache/paimon/spark/SparkReadITCase.java        | 1 -
 .../src/test/java/org/apache/paimon/spark/SparkReadTestBase.java      | 2 +-
 4 files changed, 6 insertions(+), 5 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 2d82fa8bb..a94d82765 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
@@ -180,7 +180,7 @@ public class SparkGenericCatalog<T extends TableCatalog & SupportsNamespaces>
             Transform[] partitions,
             Map<String, String> properties)
             throws TableAlreadyExistsException, NoSuchNamespaceException {
-        String provider = properties.get("provider");
+        String provider = properties.get(TableCatalog.PROP_PROVIDER);
         if (usePaimon(provider)) {
             return sparkCatalog.createTable(ident, schema, partitions, properties);
         } else {
@@ -284,7 +284,7 @@ public class SparkGenericCatalog<T extends TableCatalog & SupportsNamespaces>
     }
 
     private boolean usePaimon(String provider) {
-        return provider == null || "paimon".equalsIgnoreCase(provider);
+        return provider == null || SparkSource.NAME().equalsIgnoreCase(provider);
     }
 
     private T getSessionCatalog() {
diff --git a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkTable.java b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkTable.java
index f74754ff7..dd0d5bce1 100644
--- a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkTable.java
+++ b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkTable.java
@@ -27,6 +27,7 @@ import org.apache.paimon.table.Table;
 import org.apache.spark.sql.connector.catalog.SupportsRead;
 import org.apache.spark.sql.connector.catalog.SupportsWrite;
 import org.apache.spark.sql.connector.catalog.TableCapability;
+import org.apache.spark.sql.connector.catalog.TableCatalog;
 import org.apache.spark.sql.connector.expressions.FieldReference;
 import org.apache.spark.sql.connector.expressions.IdentityTransform;
 import org.apache.spark.sql.connector.expressions.Transform;
@@ -108,10 +109,11 @@ public class SparkTable
         if (table instanceof DataTable) {
             Map<String, String> properties =
                     new HashMap<>(((DataTable) table).coreOptions().toMap());
-            if (table.primaryKeys().size() > 0) {
+            if (!table.primaryKeys().isEmpty()) {
                 properties.put(
                         CoreOptions.PRIMARY_KEY.key(), String.join(",", table.primaryKeys()));
             }
+            properties.put(TableCatalog.PROP_PROVIDER, SparkSource.NAME());
             return properties;
         } else {
             return Collections.emptyMap();
diff --git a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadITCase.java b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadITCase.java
index 486b88110..a818195ef 100644
--- a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadITCase.java
+++ b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadITCase.java
@@ -363,7 +363,6 @@ public class SparkReadITCase extends SparkReadTestBase {
                 .isEqualTo(
                         String.format(
                                 "[[%s"
-                                        + "USING paimon\n"
                                         + "PARTITIONED BY (b)\n"
                                         + "COMMENT 'tbl comment'\n"
                                         + "TBLPROPERTIES (\n"
diff --git a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadTestBase.java b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadTestBase.java
index f566f2fb7..ba421d09a 100644
--- a/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadTestBase.java
+++ b/paimon-spark/paimon-spark-common/src/test/java/org/apache/paimon/spark/SparkReadTestBase.java
@@ -198,7 +198,7 @@ public abstract class SparkReadTestBase {
     // return of 'SHOW CREATE TABLE' excluding TBLPROPERTIES
     protected String showCreateString(String table, String... fieldSpec) {
         return String.format(
-                "CREATE TABLE paimon.default.%s (%s)\n",
+                "CREATE TABLE paimon.default.%s (%s)\nUSING paimon\n",
                 table,
                 Arrays.stream(fieldSpec).map(s -> "\n  " + s).collect(Collectors.joining(",")));
     }