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 7667c37f2 [flink][spark] Check Exists before create database to avoid 
Permission issue (#2477)
7667c37f2 is described below

commit 7667c37f296351090b3edb8417394ff73b6eafb6
Author: Jingsong Lee <[email protected]>
AuthorDate: Mon Dec 11 15:08:55 2023 +0800

    [flink][spark] Check Exists before create database to avoid Permission 
issue (#2477)
---
 .../src/main/java/org/apache/paimon/flink/FlinkCatalog.java       | 8 +++++---
 .../src/main/java/org/apache/paimon/spark/SparkCatalog.java       | 8 +++++---
 2 files changed, 10 insertions(+), 6 deletions(-)

diff --git 
a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkCatalog.java
 
b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkCatalog.java
index 9a180c678..eeae7331e 100644
--- 
a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkCatalog.java
+++ 
b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/FlinkCatalog.java
@@ -148,9 +148,11 @@ public class FlinkCatalog extends AbstractCatalog {
         this.logStoreAutoRegister = options.get(LOG_SYSTEM_AUTO_REGISTER);
         this.logStoreAutoRegisterTimeout = options.get(REGISTER_TIMEOUT);
         this.disableCreateTableInDefaultDatabase = 
options.get(DISABLE_CREATE_TABLE_IN_DEFAULT_DB);
-        try {
-            this.catalog.createDatabase(defaultDatabase, true);
-        } catch (Catalog.DatabaseAlreadyExistException ignore) {
+        if (!catalog.databaseExists(defaultDatabase)) {
+            try {
+                catalog.createDatabase(defaultDatabase, true);
+            } catch (Catalog.DatabaseAlreadyExistException ignore) {
+            }
         }
     }
 
diff --git 
a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkCatalog.java
 
b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkCatalog.java
index 4436b7c8d..62b7a00b4 100644
--- 
a/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkCatalog.java
+++ 
b/paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/SparkCatalog.java
@@ -74,9 +74,11 @@ public class SparkCatalog extends SparkBaseCatalog {
                         Options.fromMap(options),
                         SparkSession.active().sessionState().newHadoopConf());
         this.catalog = CatalogFactory.createCatalog(catalogContext);
-        try {
-            createNamespace(defaultNamespace(), new HashMap<>());
-        } catch (NamespaceAlreadyExistsException ignored) {
+        if (!catalog.databaseExists(defaultNamespace()[0])) {
+            try {
+                createNamespace(defaultNamespace(), new HashMap<>());
+            } catch (NamespaceAlreadyExistsException ignored) {
+            }
         }
     }
 

Reply via email to