You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by yi...@apache.org on 2025/10/18 03:19:19 UTC

(doris) branch branch-4.0 updated: branch-4.0: [chore](external catalog) deprecated lakesoul external catalog #56843 (#57123)

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

yiguolei pushed a commit to branch branch-4.0
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/branch-4.0 by this push:
     new bb7b56202c4 branch-4.0: [chore](external catalog) deprecated lakesoul external catalog #56843 (#57123)
bb7b56202c4 is described below

commit bb7b56202c470b2aa447b7fd37deb576d9932342
Author: github-actions[bot] <41...@users.noreply.github.com>
AuthorDate: Sat Oct 18 11:19:12 2025 +0800

    branch-4.0: [chore](external catalog) deprecated lakesoul external catalog #56843 (#57123)
    
    Cherry-picked from #56843
    
    Co-authored-by: zy-kkk <zh...@gmail.com>
---
 .../vec/exec/format/table/lakesoul_jni_reader.cpp  |  3 ++
 be/src/vec/exec/format/table/lakesoul_jni_reader.h |  3 ++
 build.sh                                           |  6 ++--
 fe/be-java-extensions/lakesoul-scanner/pom.xml     |  1 +
 .../apache/doris/lakesoul/LakeSoulJniScanner.java  |  4 +++
 .../org/apache/doris/lakesoul/LakeSoulUtils.java   |  4 +++
 .../apache/doris/lakesoul/arrow/ArrowUtils.java    |  4 +++
 .../lakesoul/arrow/LakeSoulArrowJniScanner.java    |  4 +++
 fe/be-java-extensions/pom.xml                      |  3 +-
 fe/fe-core/pom.xml                                 |  5 ++-
 .../apache/doris/datasource/CatalogFactory.java    |  4 +--
 .../lakesoul/LakeSoulExternalCatalog.java          | 40 +++++++++++++---------
 .../lakesoul/LakeSoulExternalDatabase.java         |  4 +++
 .../datasource/lakesoul/LakeSoulExternalTable.java |  4 +++
 .../doris/datasource/lakesoul/LakeSoulUtils.java   |  4 +++
 .../lakesoul/source/LakeSoulScanNode.java          |  4 +++
 .../datasource/lakesoul/source/LakeSoulSplit.java  |  4 +++
 17 files changed, 78 insertions(+), 23 deletions(-)

diff --git a/be/src/vec/exec/format/table/lakesoul_jni_reader.cpp b/be/src/vec/exec/format/table/lakesoul_jni_reader.cpp
index cccf9ffb649..2fe821c49ea 100644
--- a/be/src/vec/exec/format/table/lakesoul_jni_reader.cpp
+++ b/be/src/vec/exec/format/table/lakesoul_jni_reader.cpp
@@ -15,6 +15,9 @@
 // specific language governing permissions and limitations
 // under the License.
 
+// DEPRECATED: LakeSoul catalog support has been deprecated and will be removed in a future version.
+// This file is kept for backward compatibility but should not be used in new code.
+
 #include "lakesoul_jni_reader.h"
 
 #include <map>
diff --git a/be/src/vec/exec/format/table/lakesoul_jni_reader.h b/be/src/vec/exec/format/table/lakesoul_jni_reader.h
index b733cad2801..6a659cddc9e 100644
--- a/be/src/vec/exec/format/table/lakesoul_jni_reader.h
+++ b/be/src/vec/exec/format/table/lakesoul_jni_reader.h
@@ -15,6 +15,9 @@
 // specific language governing permissions and limitations
 // under the License.
 
+// DEPRECATED: LakeSoul catalog support has been deprecated and will be removed in a future version.
+// This file is kept for backward compatibility but should not be used in new code.
+
 #pragma once
 
 #include <string>
diff --git a/build.sh b/build.sh
index 048fa48484d..6f599c98159 100755
--- a/build.sh
+++ b/build.sh
@@ -550,7 +550,8 @@ if [[ "${BUILD_BE_JAVA_EXTENSIONS}" -eq 1 ]]; then
     modules+=("be-java-extensions/trino-connector-scanner")
     modules+=("be-java-extensions/max-compute-scanner")
     modules+=("be-java-extensions/avro-scanner")
-    modules+=("be-java-extensions/lakesoul-scanner")
+    # lakesoul-scanner has been deprecated
+    # modules+=("be-java-extensions/lakesoul-scanner")
     modules+=("be-java-extensions/preload-extensions")
 
     # If the BE_EXTENSION_IGNORE variable is not empty, remove the modules that need to be ignored from FE_MODULES
@@ -879,7 +880,8 @@ EOF
     extensions_modules+=("trino-connector-scanner")
     extensions_modules+=("max-compute-scanner")
     extensions_modules+=("avro-scanner")
-    extensions_modules+=("lakesoul-scanner")
+    # lakesoul-scanner has been deprecated
+    # extensions_modules+=("lakesoul-scanner")
     extensions_modules+=("preload-extensions")
     extensions_modules+=("iceberg-metadata-scanner")
 
diff --git a/fe/be-java-extensions/lakesoul-scanner/pom.xml b/fe/be-java-extensions/lakesoul-scanner/pom.xml
index be2927300b3..32f853bc76c 100644
--- a/fe/be-java-extensions/lakesoul-scanner/pom.xml
+++ b/fe/be-java-extensions/lakesoul-scanner/pom.xml
@@ -53,6 +53,7 @@ under the License.
             <artifactId>lakesoul-io-java</artifactId>
             <version>${lakesoul.version}</version>
             <classifier>shaded</classifier>
+            <scope>provided</scope>
             <exclusions>
                 <exclusion>
                     <groupId>*</groupId>
diff --git a/fe/be-java-extensions/lakesoul-scanner/src/main/java/org/apache/doris/lakesoul/LakeSoulJniScanner.java b/fe/be-java-extensions/lakesoul-scanner/src/main/java/org/apache/doris/lakesoul/LakeSoulJniScanner.java
index 18b7bea03bb..0ff491b246a 100644
--- a/fe/be-java-extensions/lakesoul-scanner/src/main/java/org/apache/doris/lakesoul/LakeSoulJniScanner.java
+++ b/fe/be-java-extensions/lakesoul-scanner/src/main/java/org/apache/doris/lakesoul/LakeSoulJniScanner.java
@@ -39,6 +39,10 @@ import java.util.List;
 import java.util.Map;
 import java.util.stream.Collectors;
 
+/**
+ * @deprecated LakeSoul catalog support has been deprecated and will be removed in a future version.
+ */
+@Deprecated
 public class LakeSoulJniScanner extends LakeSoulArrowJniScanner {
     private static final Logger LOG = LoggerFactory.getLogger(LakeSoulJniScanner.class);
 
diff --git a/fe/be-java-extensions/lakesoul-scanner/src/main/java/org/apache/doris/lakesoul/LakeSoulUtils.java b/fe/be-java-extensions/lakesoul-scanner/src/main/java/org/apache/doris/lakesoul/LakeSoulUtils.java
index ca07a81d0da..df55675b8c7 100644
--- a/fe/be-java-extensions/lakesoul-scanner/src/main/java/org/apache/doris/lakesoul/LakeSoulUtils.java
+++ b/fe/be-java-extensions/lakesoul-scanner/src/main/java/org/apache/doris/lakesoul/LakeSoulUtils.java
@@ -20,6 +20,10 @@ package org.apache.doris.lakesoul;
 import java.util.Arrays;
 import java.util.List;
 
+/**
+ * @deprecated LakeSoul catalog support has been deprecated and will be removed in a future version.
+ */
+@Deprecated
 public class LakeSoulUtils {
     public static final String FILE_NAMES = "file_paths";
     public static final String PRIMARY_KEYS = "primary_keys";
diff --git a/fe/be-java-extensions/lakesoul-scanner/src/main/java/org/apache/doris/lakesoul/arrow/ArrowUtils.java b/fe/be-java-extensions/lakesoul-scanner/src/main/java/org/apache/doris/lakesoul/arrow/ArrowUtils.java
index 94ac32935e8..48c278672e2 100644
--- a/fe/be-java-extensions/lakesoul-scanner/src/main/java/org/apache/doris/lakesoul/arrow/ArrowUtils.java
+++ b/fe/be-java-extensions/lakesoul-scanner/src/main/java/org/apache/doris/lakesoul/arrow/ArrowUtils.java
@@ -30,6 +30,10 @@ import java.time.LocalDateTime;
 import java.time.ZoneOffset;
 import java.util.List;
 
+/**
+ * @deprecated LakeSoul catalog support has been deprecated and will be removed in a future version.
+ */
+@Deprecated
 public class ArrowUtils {
     public static long reloadTimeStampSecVectorBuffer(final ArrowBuf sourceDataBuffer,
                                                       final int valueCount) {
diff --git a/fe/be-java-extensions/lakesoul-scanner/src/main/java/org/apache/doris/lakesoul/arrow/LakeSoulArrowJniScanner.java b/fe/be-java-extensions/lakesoul-scanner/src/main/java/org/apache/doris/lakesoul/arrow/LakeSoulArrowJniScanner.java
index 3c73c2f1ab4..9e490fabff6 100644
--- a/fe/be-java-extensions/lakesoul-scanner/src/main/java/org/apache/doris/lakesoul/arrow/LakeSoulArrowJniScanner.java
+++ b/fe/be-java-extensions/lakesoul-scanner/src/main/java/org/apache/doris/lakesoul/arrow/LakeSoulArrowJniScanner.java
@@ -52,6 +52,10 @@ import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
 
+/**
+ * @deprecated LakeSoul catalog support has been deprecated and will be removed in a future version.
+ */
+@Deprecated
 public class LakeSoulArrowJniScanner extends JniScanner {
 
     protected static final Logger LOG = Logger.getLogger(LakeSoulArrowJniScanner.class);
diff --git a/fe/be-java-extensions/pom.xml b/fe/be-java-extensions/pom.xml
index 67c415e4550..39a457bcd78 100644
--- a/fe/be-java-extensions/pom.xml
+++ b/fe/be-java-extensions/pom.xml
@@ -29,7 +29,8 @@ under the License.
         <module>paimon-scanner</module>
         <module>max-compute-scanner</module>
         <module>avro-scanner</module>
-        <module>lakesoul-scanner</module>
+        <!-- lakesoul-scanner module has been deprecated -->
+        <!-- <module>lakesoul-scanner</module> -->
         <module>preload-extensions</module>
         <module>trino-connector-scanner</module>
     </modules>
diff --git a/fe/fe-core/pom.xml b/fe/fe-core/pom.xml
index d5c213f6732..144115657cf 100644
--- a/fe/fe-core/pom.xml
+++ b/fe/fe-core/pom.xml
@@ -517,6 +517,7 @@ under the License.
             <groupId>com.dmetasoul</groupId>
             <artifactId>lakesoul-io-java</artifactId>
             <version>${lakesoul.version}</version>
+            <scope>provided</scope>
             <exclusions>
                 <exclusion>
                     <groupId>io.netty</groupId>
@@ -576,16 +577,18 @@ under the License.
                 </exclusion>
             </exclusions>
         </dependency>
+        <!-- LakeSoul dependencies - provided scope as lakesoul is deprecated -->
         <dependency>
             <groupId>org.postgresql</groupId>
             <artifactId>postgresql</artifactId>
             <version>42.7.3</version>
+            <scope>provided</scope>
         </dependency>
         <dependency>
             <groupId>org.scala-lang</groupId>
             <artifactId>scala-library</artifactId>
             <version>${scala.version}</version>
-            <scope>compile</scope>
+            <scope>provided</scope>
         </dependency>
 
         <dependency>
diff --git a/fe/fe-core/src/main/java/org/apache/doris/datasource/CatalogFactory.java b/fe/fe-core/src/main/java/org/apache/doris/datasource/CatalogFactory.java
index d401929d7d1..3819d582531 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/datasource/CatalogFactory.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/datasource/CatalogFactory.java
@@ -25,7 +25,6 @@ import org.apache.doris.datasource.es.EsExternalCatalog;
 import org.apache.doris.datasource.hive.HMSExternalCatalog;
 import org.apache.doris.datasource.iceberg.IcebergExternalCatalogFactory;
 import org.apache.doris.datasource.jdbc.JdbcExternalCatalog;
-import org.apache.doris.datasource.lakesoul.LakeSoulExternalCatalog;
 import org.apache.doris.datasource.maxcompute.MaxComputeExternalCatalog;
 import org.apache.doris.datasource.paimon.PaimonExternalCatalogFactory;
 import org.apache.doris.datasource.test.TestExternalCatalog;
@@ -108,8 +107,7 @@ public class CatalogFactory {
                 catalog = new MaxComputeExternalCatalog(catalogId, name, resource, props, comment);
                 break;
             case "lakesoul":
-                catalog = new LakeSoulExternalCatalog(catalogId, name, resource, props, comment);
-                break;
+                throw new DdlException("Lakesoul catalog is no longer supported");
             case "test":
                 if (!FeConstants.runningUnitTest) {
                     throw new DdlException("test catalog is only for FE unit test");
diff --git a/fe/fe-core/src/main/java/org/apache/doris/datasource/lakesoul/LakeSoulExternalCatalog.java b/fe/fe-core/src/main/java/org/apache/doris/datasource/lakesoul/LakeSoulExternalCatalog.java
index 7f8fcfb599a..0d44e41dce9 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/datasource/lakesoul/LakeSoulExternalCatalog.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/datasource/lakesoul/LakeSoulExternalCatalog.java
@@ -22,7 +22,6 @@ import org.apache.doris.datasource.ExternalCatalog;
 import org.apache.doris.datasource.InitCatalogLog;
 import org.apache.doris.datasource.SessionContext;
 
-import com.dmetasoul.lakesoul.meta.DBManager;
 import com.dmetasoul.lakesoul.meta.DBUtil;
 import com.dmetasoul.lakesoul.meta.entity.PartitionInfo;
 import com.dmetasoul.lakesoul.meta.entity.TableInfo;
@@ -33,11 +32,15 @@ import org.apache.logging.log4j.Logger;
 import java.util.List;
 import java.util.Map;
 
+/**
+ * @deprecated LakeSoul catalog support has been deprecated and will be removed in a future version.
+ */
+@Deprecated
 public class LakeSoulExternalCatalog extends ExternalCatalog {
 
     private static final Logger LOG = LogManager.getLogger(LakeSoulExternalCatalog.class);
 
-    private DBManager lakesoulMetadataManager;
+    // private transient DBManager lakesoulMetadataManager;
 
     private final Map<String, String> props;
 
@@ -52,25 +55,28 @@ public class LakeSoulExternalCatalog extends ExternalCatalog {
     @Override
     protected List<String> listDatabaseNames() {
         initLocalObjectsImpl();
-        return lakesoulMetadataManager.listNamespaces();
+        // return lakesoulMetadataManager.listNamespaces();
+        return Lists.newArrayList();
     }
 
     @Override
     public List<String> listTableNames(SessionContext ctx, String dbName) {
-        makeSureInitialized();
-        List<TableInfo> tifs = lakesoulMetadataManager.getTableInfosByNamespace(dbName);
-        List<String> tableNames = Lists.newArrayList();
-        for (TableInfo item : tifs) {
-            tableNames.add(item.getTableName());
-        }
-        return tableNames;
+        // makeSureInitialized();
+        // List<TableInfo> tifs = lakesoulMetadataManager.getTableInfosByNamespace(dbName);
+        // List<String> tableNames = Lists.newArrayList();
+        // for (TableInfo item : tifs) {
+        //     tableNames.add(item.getTableName());
+        // }
+        // return tableNames;
+        return Lists.newArrayList();
     }
 
     @Override
     public boolean tableExist(SessionContext ctx, String dbName, String tblName) {
-        makeSureInitialized();
-        TableInfo tableInfo = lakesoulMetadataManager.getTableInfoByNameAndNamespace(tblName, dbName);
-        return null != tableInfo;
+        // makeSureInitialized();
+        // TableInfo tableInfo = lakesoulMetadataManager.getTableInfoByNameAndNamespace(tblName, dbName);
+        // return null != tableInfo;
+        return false;
     }
 
     @Override
@@ -86,17 +92,19 @@ public class LakeSoulExternalCatalog extends ExternalCatalog {
                 System.setProperty(DBUtil.passwordKey, props.get(DBUtil.passwordKey));
             }
         }
-        lakesoulMetadataManager = new DBManager();
+        // lakesoulMetadataManager = new DBManager();
     }
 
     public TableInfo getLakeSoulTable(String dbName, String tblName) {
         makeSureInitialized();
-        return lakesoulMetadataManager.getTableInfoByNameAndNamespace(tblName, dbName);
+        // return lakesoulMetadataManager.getTableInfoByNameAndNamespace(tblName, dbName);
+        return null;
     }
 
     public List<PartitionInfo> listPartitionInfo(String tableId) {
         makeSureInitialized();
-        return lakesoulMetadataManager.getAllPartitionInfo(tableId);
+        // return lakesoulMetadataManager.getAllPartitionInfo(tableId);
+        return Lists.newArrayList();
     }
 }
 
diff --git a/fe/fe-core/src/main/java/org/apache/doris/datasource/lakesoul/LakeSoulExternalDatabase.java b/fe/fe-core/src/main/java/org/apache/doris/datasource/lakesoul/LakeSoulExternalDatabase.java
index 32e389f52d3..c753397417c 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/datasource/lakesoul/LakeSoulExternalDatabase.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/datasource/lakesoul/LakeSoulExternalDatabase.java
@@ -21,6 +21,10 @@ import org.apache.doris.datasource.ExternalCatalog;
 import org.apache.doris.datasource.ExternalDatabase;
 import org.apache.doris.datasource.InitDatabaseLog;
 
+/**
+ * @deprecated LakeSoul catalog support has been deprecated and will be removed in a future version.
+ */
+@Deprecated
 public class LakeSoulExternalDatabase extends ExternalDatabase<LakeSoulExternalTable> {
 
     public LakeSoulExternalDatabase(ExternalCatalog extCatalog, long id, String name, String remoteName) {
diff --git a/fe/fe-core/src/main/java/org/apache/doris/datasource/lakesoul/LakeSoulExternalTable.java b/fe/fe-core/src/main/java/org/apache/doris/datasource/lakesoul/LakeSoulExternalTable.java
index e5e0447f1cb..22d2a94c092 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/datasource/lakesoul/LakeSoulExternalTable.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/datasource/lakesoul/LakeSoulExternalTable.java
@@ -50,6 +50,10 @@ import java.util.Map;
 import java.util.Optional;
 import java.util.stream.Collectors;
 
+/**
+ * @deprecated LakeSoul catalog support has been deprecated and will be removed in a future version.
+ */
+@Deprecated
 public class LakeSoulExternalTable extends ExternalTable {
     private static final Logger LOG = LogManager.getLogger(LakeSoulExternalTable.class);
     public static final int LAKESOUL_TIMESTAMP_SCALE_MS = 6;
diff --git a/fe/fe-core/src/main/java/org/apache/doris/datasource/lakesoul/LakeSoulUtils.java b/fe/fe-core/src/main/java/org/apache/doris/datasource/lakesoul/LakeSoulUtils.java
index b009c08371f..f9a1559bb3c 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/datasource/lakesoul/LakeSoulUtils.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/datasource/lakesoul/LakeSoulUtils.java
@@ -62,6 +62,10 @@ import java.util.Optional;
 import java.util.Set;
 import java.util.stream.Collectors;
 
+/**
+ * @deprecated LakeSoul catalog support has been deprecated and will be removed in a future version.
+ */
+@Deprecated
 public class LakeSoulUtils {
 
     public static final String FILE_NAMES = "file_paths";
diff --git a/fe/fe-core/src/main/java/org/apache/doris/datasource/lakesoul/source/LakeSoulScanNode.java b/fe/fe-core/src/main/java/org/apache/doris/datasource/lakesoul/source/LakeSoulScanNode.java
index 72366c46b91..a5e673a6cd5 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/datasource/lakesoul/source/LakeSoulScanNode.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/datasource/lakesoul/source/LakeSoulScanNode.java
@@ -60,6 +60,10 @@ import java.util.List;
 import java.util.Map;
 import java.util.stream.Collectors;
 
+/**
+ * @deprecated LakeSoul catalog support has been deprecated and will be removed in a future version.
+ */
+@Deprecated
 public class LakeSoulScanNode extends FileQueryScanNode {
 
     private static final Logger LOG = LogManager.getLogger(LakeSoulScanNode.class);
diff --git a/fe/fe-core/src/main/java/org/apache/doris/datasource/lakesoul/source/LakeSoulSplit.java b/fe/fe-core/src/main/java/org/apache/doris/datasource/lakesoul/source/LakeSoulSplit.java
index 6a1f6ced065..404ca218620 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/datasource/lakesoul/source/LakeSoulSplit.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/datasource/lakesoul/source/LakeSoulSplit.java
@@ -25,6 +25,10 @@ import lombok.Data;
 import java.util.List;
 import java.util.Map;
 
+/**
+ * @deprecated LakeSoul catalog support has been deprecated and will be removed in a future version.
+ */
+@Deprecated
 @Data
 public class LakeSoulSplit extends FileSplit {
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org