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

jinsongzhou pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/amoro.git


The following commit(s) were added to refs/heads/master by this push:
     new 72380a4fa [AMORO-3015]terminal can't create iceberg table when using 
unified catalog (#3016)
72380a4fa is described below

commit 72380a4fa3d8f2040f7f1bccf50c90702c116933
Author: Wang Tao <[email protected]>
AuthorDate: Wed Jul 10 14:41:45 2024 +0800

    [AMORO-3015]terminal can't create iceberg table when using unified catalog 
(#3016)
    
    issue_3015 fix 3015
---
 .../apache/amoro/server/terminal/local/LocalSessionFactory.java  | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git 
a/amoro-ams/amoro-ams-server/src/main/java/org/apache/amoro/server/terminal/local/LocalSessionFactory.java
 
b/amoro-ams/amoro-ams-server/src/main/java/org/apache/amoro/server/terminal/local/LocalSessionFactory.java
index 1aef85e49..b264e6677 100644
--- 
a/amoro-ams/amoro-ams-server/src/main/java/org/apache/amoro/server/terminal/local/LocalSessionFactory.java
+++ 
b/amoro-ams/amoro-ams-server/src/main/java/org/apache/amoro/server/terminal/local/LocalSessionFactory.java
@@ -22,6 +22,7 @@ import org.apache.amoro.api.config.ConfigOption;
 import org.apache.amoro.api.config.ConfigOptions;
 import org.apache.amoro.api.config.Configurations;
 import org.apache.amoro.server.AmoroManagementConf;
+import org.apache.amoro.server.catalog.CatalogType;
 import org.apache.amoro.server.dashboard.utils.DesensitizationUtil;
 import org.apache.amoro.server.terminal.SparkContextUtil;
 import org.apache.amoro.server.terminal.TerminalSession;
@@ -79,7 +80,7 @@ public class LocalSessionFactory implements 
TerminalSessionFactory {
 
     Map<String, String> finallyConf = configuration.toMap();
     catalogs.stream()
-        .filter(c -> isExternalConnector(c, configuration))
+        .filter(c -> isExternalConnector(c, configuration) || 
isExternalMetastore(c, configuration))
         .forEach(c -> setHadoopConfigToSparkSession(c, session, metaStore));
 
     for (String key : sparkConf.keySet()) {
@@ -93,6 +94,12 @@ public class LocalSessionFactory implements 
TerminalSessionFactory {
     return new LocalTerminalSession(catalogs, session, initializeLogs, 
finallyConf);
   }
 
+  private boolean isExternalMetastore(String catalog, Configurations 
configurations) {
+    String metastoreType =
+        
configurations.get(SessionConfigOptions.catalogConnector(catalog)).toLowerCase();
+    return !metastoreType.equalsIgnoreCase(CatalogType.AMS.name());
+  }
+
   private boolean isExternalConnector(String catalog, Configurations 
configurations) {
     String connector =
         configurations

Reply via email to