@ -24,14 +24,14 @@ import org.apache.doris.catalog.Env;
|
||||
import org.apache.doris.catalog.OlapTable;
|
||||
import org.apache.doris.catalog.TableIf;
|
||||
import org.apache.doris.catalog.View;
|
||||
import org.apache.doris.catalog.external.ExternalTable;
|
||||
import org.apache.doris.catalog.external.HMSExternalTable;
|
||||
import org.apache.doris.common.AnalysisException;
|
||||
import org.apache.doris.common.ErrorCode;
|
||||
import org.apache.doris.common.ErrorReport;
|
||||
import org.apache.doris.common.FeNameFormat;
|
||||
import org.apache.doris.common.UserException;
|
||||
import org.apache.doris.datasource.CatalogIf;
|
||||
import org.apache.doris.datasource.ExternalTable;
|
||||
import org.apache.doris.datasource.hive.HMSExternalTable;
|
||||
import org.apache.doris.mysql.privilege.PrivPredicate;
|
||||
import org.apache.doris.qe.ConnectContext;
|
||||
import org.apache.doris.statistics.AnalysisInfo.AnalysisType;
|
||||
|
||||
@ -32,7 +32,6 @@ import org.apache.doris.catalog.TableIf;
|
||||
import org.apache.doris.catalog.TableIf.TableType;
|
||||
import org.apache.doris.catalog.Type;
|
||||
import org.apache.doris.catalog.View;
|
||||
import org.apache.doris.catalog.external.HMSExternalTable;
|
||||
import org.apache.doris.common.AnalysisException;
|
||||
import org.apache.doris.common.Config;
|
||||
import org.apache.doris.common.ErrorCode;
|
||||
@ -41,6 +40,7 @@ import org.apache.doris.common.IdGenerator;
|
||||
import org.apache.doris.common.Pair;
|
||||
import org.apache.doris.common.UserException;
|
||||
import org.apache.doris.common.util.TimeUtils;
|
||||
import org.apache.doris.datasource.hive.HMSExternalTable;
|
||||
import org.apache.doris.planner.AggregationNode;
|
||||
import org.apache.doris.planner.AnalyticEvalNode;
|
||||
import org.apache.doris.planner.PlanNode;
|
||||
|
||||
@ -33,8 +33,6 @@ import org.apache.doris.catalog.Partition;
|
||||
import org.apache.doris.catalog.PartitionType;
|
||||
import org.apache.doris.catalog.Table;
|
||||
import org.apache.doris.catalog.TableIf;
|
||||
import org.apache.doris.catalog.external.JdbcExternalDatabase;
|
||||
import org.apache.doris.catalog.external.JdbcExternalTable;
|
||||
import org.apache.doris.common.AnalysisException;
|
||||
import org.apache.doris.common.DdlException;
|
||||
import org.apache.doris.common.ErrorCode;
|
||||
@ -46,6 +44,9 @@ import org.apache.doris.common.util.DebugUtil;
|
||||
import org.apache.doris.common.util.Util;
|
||||
import org.apache.doris.datasource.ExternalCatalog;
|
||||
import org.apache.doris.datasource.jdbc.JdbcExternalCatalog;
|
||||
import org.apache.doris.datasource.jdbc.JdbcExternalDatabase;
|
||||
import org.apache.doris.datasource.jdbc.JdbcExternalTable;
|
||||
import org.apache.doris.datasource.jdbc.sink.JdbcTableSink;
|
||||
import org.apache.doris.load.Load;
|
||||
import org.apache.doris.mysql.privilege.PrivPredicate;
|
||||
import org.apache.doris.planner.DataPartition;
|
||||
@ -54,7 +55,6 @@ import org.apache.doris.planner.ExportSink;
|
||||
import org.apache.doris.planner.GroupCommitBlockSink;
|
||||
import org.apache.doris.planner.GroupCommitPlanner;
|
||||
import org.apache.doris.planner.OlapTableSink;
|
||||
import org.apache.doris.planner.external.jdbc.JdbcTableSink;
|
||||
import org.apache.doris.qe.ConnectContext;
|
||||
import org.apache.doris.qe.SqlModeHelper;
|
||||
import org.apache.doris.rewrite.ExprRewriter;
|
||||
|
||||
@ -25,8 +25,6 @@ import org.apache.doris.catalog.Table;
|
||||
import org.apache.doris.catalog.TableIf;
|
||||
import org.apache.doris.catalog.TableIf.TableType;
|
||||
import org.apache.doris.catalog.Type;
|
||||
import org.apache.doris.catalog.external.HMSExternalTable;
|
||||
import org.apache.doris.catalog.external.MaxComputeExternalTable;
|
||||
import org.apache.doris.common.AnalysisException;
|
||||
import org.apache.doris.common.ErrorCode;
|
||||
import org.apache.doris.common.ErrorReport;
|
||||
@ -37,8 +35,10 @@ import org.apache.doris.common.proc.ProcResult;
|
||||
import org.apache.doris.common.proc.ProcService;
|
||||
import org.apache.doris.common.util.OrderByPair;
|
||||
import org.apache.doris.datasource.CatalogIf;
|
||||
import org.apache.doris.datasource.HMSExternalCatalog;
|
||||
import org.apache.doris.datasource.MaxComputeExternalCatalog;
|
||||
import org.apache.doris.datasource.hive.HMSExternalCatalog;
|
||||
import org.apache.doris.datasource.hive.HMSExternalTable;
|
||||
import org.apache.doris.datasource.maxcompute.MaxComputeExternalCatalog;
|
||||
import org.apache.doris.datasource.maxcompute.MaxComputeExternalTable;
|
||||
import org.apache.doris.mysql.privilege.PrivPredicate;
|
||||
import org.apache.doris.qe.ConnectContext;
|
||||
import org.apache.doris.qe.ShowResultSetMetaData;
|
||||
|
||||
@ -23,7 +23,6 @@ package org.apache.doris.analysis;
|
||||
import org.apache.doris.catalog.Env;
|
||||
import org.apache.doris.catalog.TableIf;
|
||||
import org.apache.doris.catalog.Type;
|
||||
import org.apache.doris.catalog.external.HMSExternalTable;
|
||||
import org.apache.doris.common.AnalysisException;
|
||||
import org.apache.doris.common.ErrorCode;
|
||||
import org.apache.doris.common.ErrorReport;
|
||||
@ -32,6 +31,7 @@ import org.apache.doris.common.UserException;
|
||||
import org.apache.doris.common.io.Text;
|
||||
import org.apache.doris.common.io.Writable;
|
||||
import org.apache.doris.common.util.TimeUtils;
|
||||
import org.apache.doris.datasource.hive.HMSExternalTable;
|
||||
import org.apache.doris.datasource.hudi.HudiUtils;
|
||||
import org.apache.doris.rewrite.ExprRewriter;
|
||||
import org.apache.doris.rewrite.ExprRewriter.ClauseType;
|
||||
|
||||
@ -84,8 +84,6 @@ public interface DatabaseIf<T extends TableIf> {
|
||||
}
|
||||
}
|
||||
|
||||
List<T> getTablesOnIdOrder();
|
||||
|
||||
List<T> getViews();
|
||||
|
||||
default List<T> getViewsOrEmpty() {
|
||||
|
||||
@ -129,10 +129,10 @@ import org.apache.doris.consistency.ConsistencyChecker;
|
||||
import org.apache.doris.cooldown.CooldownConfHandler;
|
||||
import org.apache.doris.datasource.CatalogIf;
|
||||
import org.apache.doris.datasource.CatalogMgr;
|
||||
import org.apache.doris.datasource.EsExternalCatalog;
|
||||
import org.apache.doris.datasource.ExternalMetaCacheMgr;
|
||||
import org.apache.doris.datasource.ExternalMetaIdMgr;
|
||||
import org.apache.doris.datasource.InternalCatalog;
|
||||
import org.apache.doris.datasource.es.EsExternalCatalog;
|
||||
import org.apache.doris.datasource.es.EsRepository;
|
||||
import org.apache.doris.datasource.hive.HiveTransactionMgr;
|
||||
import org.apache.doris.datasource.hive.event.MetastoreEventsProcessor;
|
||||
@ -5190,12 +5190,11 @@ public class Env {
|
||||
return checksum;
|
||||
}
|
||||
|
||||
|
||||
public String dumpImage() {
|
||||
LOG.info("begin to dump meta data");
|
||||
String dumpFilePath;
|
||||
List<DatabaseIf> databases = Lists.newArrayList();
|
||||
List<List<TableIf>> tableLists = Lists.newArrayList();
|
||||
List<Database> databases = Lists.newArrayList();
|
||||
List<List<Table>> tableLists = Lists.newArrayList();
|
||||
tryLock(true);
|
||||
try {
|
||||
// sort all dbs to avoid potential dead lock
|
||||
@ -5209,8 +5208,8 @@ public class Env {
|
||||
MetaLockUtils.readLockDatabases(databases);
|
||||
LOG.info("acquired all the dbs' read lock.");
|
||||
// lock all tables
|
||||
for (DatabaseIf db : databases) {
|
||||
List<TableIf> tableList = db.getTablesOnIdOrder();
|
||||
for (Database db : databases) {
|
||||
List<Table> tableList = db.getTablesOnIdOrder();
|
||||
MetaLockUtils.readLockTables(tableList);
|
||||
tableLists.add(tableList);
|
||||
}
|
||||
|
||||
@ -20,12 +20,12 @@ package org.apache.doris.catalog;
|
||||
import org.apache.doris.analysis.RefreshCatalogStmt;
|
||||
import org.apache.doris.analysis.RefreshDbStmt;
|
||||
import org.apache.doris.analysis.RefreshTableStmt;
|
||||
import org.apache.doris.catalog.external.ExternalDatabase;
|
||||
import org.apache.doris.common.DdlException;
|
||||
import org.apache.doris.common.ThreadPoolManager;
|
||||
import org.apache.doris.common.UserException;
|
||||
import org.apache.doris.datasource.CatalogIf;
|
||||
import org.apache.doris.datasource.ExternalCatalog;
|
||||
import org.apache.doris.datasource.ExternalDatabase;
|
||||
import org.apache.doris.datasource.ExternalObjectLog;
|
||||
import org.apache.doris.qe.DdlExecutor;
|
||||
|
||||
|
||||
@ -395,6 +395,7 @@ public interface TableIf {
|
||||
case HIVE:
|
||||
return "Hive";
|
||||
case HUDI:
|
||||
case HUDI_EXTERNAL_TABLE:
|
||||
return "Hudi";
|
||||
case JDBC:
|
||||
case JDBC_EXTERNAL_TABLE:
|
||||
@ -405,10 +406,9 @@ public interface TableIf {
|
||||
return "hms";
|
||||
case ES_EXTERNAL_TABLE:
|
||||
return "es";
|
||||
case ICEBERG:
|
||||
case ICEBERG_EXTERNAL_TABLE:
|
||||
return "iceberg";
|
||||
case HUDI_EXTERNAL_TABLE:
|
||||
return "hudi";
|
||||
default:
|
||||
return null;
|
||||
}
|
||||
|
||||
@ -28,8 +28,11 @@ import org.apache.doris.catalog.Env;
|
||||
import org.apache.doris.catalog.Resource;
|
||||
import org.apache.doris.common.DdlException;
|
||||
import org.apache.doris.common.FeConstants;
|
||||
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.maxcompute.MaxComputeExternalCatalog;
|
||||
import org.apache.doris.datasource.paimon.PaimonExternalCatalogFactory;
|
||||
import org.apache.doris.datasource.test.TestExternalCatalog;
|
||||
|
||||
|
||||
@ -30,10 +30,6 @@ import org.apache.doris.catalog.Env;
|
||||
import org.apache.doris.catalog.Resource;
|
||||
import org.apache.doris.catalog.Resource.ReferenceType;
|
||||
import org.apache.doris.catalog.TableIf;
|
||||
import org.apache.doris.catalog.external.ExternalDatabase;
|
||||
import org.apache.doris.catalog.external.ExternalTable;
|
||||
import org.apache.doris.catalog.external.HMSExternalDatabase;
|
||||
import org.apache.doris.catalog.external.HMSExternalTable;
|
||||
import org.apache.doris.cluster.ClusterNamespace;
|
||||
import org.apache.doris.common.AnalysisException;
|
||||
import org.apache.doris.common.CaseSensibility;
|
||||
@ -47,6 +43,9 @@ import org.apache.doris.common.io.Text;
|
||||
import org.apache.doris.common.io.Writable;
|
||||
import org.apache.doris.common.util.PrintableMap;
|
||||
import org.apache.doris.common.util.TimeUtils;
|
||||
import org.apache.doris.datasource.hive.HMSExternalCatalog;
|
||||
import org.apache.doris.datasource.hive.HMSExternalDatabase;
|
||||
import org.apache.doris.datasource.hive.HMSExternalTable;
|
||||
import org.apache.doris.mysql.privilege.PrivPredicate;
|
||||
import org.apache.doris.persist.OperationType;
|
||||
import org.apache.doris.persist.gson.GsonPostProcessable;
|
||||
|
||||
@ -23,22 +23,21 @@ import org.apache.doris.catalog.Env;
|
||||
import org.apache.doris.catalog.InfoSchemaDb;
|
||||
import org.apache.doris.catalog.Resource;
|
||||
import org.apache.doris.catalog.TableIf;
|
||||
import org.apache.doris.catalog.external.EsExternalDatabase;
|
||||
import org.apache.doris.catalog.external.ExternalDatabase;
|
||||
import org.apache.doris.catalog.external.ExternalTable;
|
||||
import org.apache.doris.catalog.external.HMSExternalDatabase;
|
||||
import org.apache.doris.catalog.external.IcebergExternalDatabase;
|
||||
import org.apache.doris.catalog.external.JdbcExternalDatabase;
|
||||
import org.apache.doris.catalog.external.MaxComputeExternalDatabase;
|
||||
import org.apache.doris.catalog.external.PaimonExternalDatabase;
|
||||
import org.apache.doris.catalog.external.TestExternalDatabase;
|
||||
import org.apache.doris.cluster.ClusterNamespace;
|
||||
import org.apache.doris.common.DdlException;
|
||||
import org.apache.doris.common.io.Text;
|
||||
import org.apache.doris.common.io.Writable;
|
||||
import org.apache.doris.common.util.Util;
|
||||
import org.apache.doris.datasource.es.EsExternalDatabase;
|
||||
import org.apache.doris.datasource.hive.HMSExternalCatalog;
|
||||
import org.apache.doris.datasource.hive.HMSExternalDatabase;
|
||||
import org.apache.doris.datasource.iceberg.IcebergExternalDatabase;
|
||||
import org.apache.doris.datasource.infoschema.ExternalInfoSchemaDatabase;
|
||||
import org.apache.doris.datasource.jdbc.JdbcExternalDatabase;
|
||||
import org.apache.doris.datasource.maxcompute.MaxComputeExternalDatabase;
|
||||
import org.apache.doris.datasource.paimon.PaimonExternalDatabase;
|
||||
import org.apache.doris.datasource.property.PropertyConverter;
|
||||
import org.apache.doris.datasource.test.TestExternalDatabase;
|
||||
import org.apache.doris.persist.gson.GsonPostProcessable;
|
||||
import org.apache.doris.persist.gson.GsonUtils;
|
||||
import org.apache.doris.qe.ConnectContext;
|
||||
@ -128,14 +127,17 @@ public abstract class ExternalCatalog
|
||||
return conf;
|
||||
}
|
||||
|
||||
protected List<String> listDatabaseNames() {
|
||||
throw new UnsupportedOperationException("Unsupported operation: "
|
||||
+ "listDatabaseNames from remote client when init catalog with " + logType.name());
|
||||
/**
|
||||
* set some default properties when creating catalog
|
||||
*/
|
||||
public void setDefaultPropsWhenCreating(boolean isReplay) throws DdlException {
|
||||
|
||||
}
|
||||
|
||||
public void setDefaultPropsWhenCreating(boolean isReplay) throws DdlException {
|
||||
// set some default properties when creating catalog
|
||||
}
|
||||
/**
|
||||
* @return list of database names in this catalog
|
||||
*/
|
||||
protected abstract List<String> listDatabaseNames();
|
||||
|
||||
/**
|
||||
* @param dbName
|
||||
@ -152,8 +154,15 @@ public abstract class ExternalCatalog
|
||||
*/
|
||||
public abstract boolean tableExist(SessionContext ctx, String dbName, String tblName);
|
||||
|
||||
/**
|
||||
* init some local objects such as:
|
||||
* hms client, read properties from hive-site.xml, es client
|
||||
*/
|
||||
protected abstract void initLocalObjectsImpl();
|
||||
|
||||
/**
|
||||
* check if the specified table exist in doris.
|
||||
* Currently only be used for hms event handler.
|
||||
*
|
||||
* @param dbName
|
||||
* @param tblName
|
||||
@ -198,10 +207,6 @@ public abstract class ExternalCatalog
|
||||
return this.initialized;
|
||||
}
|
||||
|
||||
// init some local objects such as:
|
||||
// hms client, read properties from hive-site.xml, es client
|
||||
protected abstract void initLocalObjectsImpl();
|
||||
|
||||
// check if all required properties are set when creating catalog
|
||||
public void checkProperties() throws DdlException {
|
||||
// check refresh parameter of catalog
|
||||
@ -311,10 +316,6 @@ public abstract class ExternalCatalog
|
||||
}
|
||||
}
|
||||
|
||||
public void updateDbList() {
|
||||
Env.getCurrentEnv().getExtMetaCacheMgr().invalidateCatalogCache(id);
|
||||
}
|
||||
|
||||
public final List<Column> getSchema(String dbName, String tblName) {
|
||||
makeSureInitialized();
|
||||
Optional<ExternalDatabase<? extends ExternalTable>> db = getDb(dbName);
|
||||
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.catalog.external;
|
||||
package org.apache.doris.datasource;
|
||||
|
||||
import org.apache.doris.catalog.DatabaseIf;
|
||||
import org.apache.doris.catalog.DatabaseProperty;
|
||||
@ -27,9 +27,6 @@ import org.apache.doris.common.MetaNotFoundException;
|
||||
import org.apache.doris.common.io.Text;
|
||||
import org.apache.doris.common.io.Writable;
|
||||
import org.apache.doris.common.util.Util;
|
||||
import org.apache.doris.datasource.CatalogIf;
|
||||
import org.apache.doris.datasource.ExternalCatalog;
|
||||
import org.apache.doris.datasource.InitDatabaseLog;
|
||||
import org.apache.doris.datasource.infoschema.ExternalInfoSchemaDatabase;
|
||||
import org.apache.doris.datasource.infoschema.ExternalInfoSchemaTable;
|
||||
import org.apache.doris.persist.gson.GsonPostProcessable;
|
||||
@ -291,11 +288,6 @@ public abstract class ExternalDatabase<T extends ExternalTable>
|
||||
return Lists.newArrayList(idToTbl.values());
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<T> getTablesOnIdOrder() {
|
||||
throw new NotImplementedException("getTablesOnIdOrder() is not implemented");
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<T> getViews() {
|
||||
throw new NotImplementedException("getViews() is not implemented");
|
||||
@ -18,17 +18,20 @@
|
||||
package org.apache.doris.datasource;
|
||||
|
||||
import org.apache.doris.catalog.Type;
|
||||
import org.apache.doris.catalog.external.HMSExternalTable;
|
||||
import org.apache.doris.cluster.ClusterNamespace;
|
||||
import org.apache.doris.common.Config;
|
||||
import org.apache.doris.common.ThreadPoolManager;
|
||||
import org.apache.doris.datasource.hive.HMSExternalCatalog;
|
||||
import org.apache.doris.datasource.hive.HMSExternalTable;
|
||||
import org.apache.doris.datasource.hive.HiveMetaStoreCache;
|
||||
import org.apache.doris.datasource.hudi.source.HudiPartitionMgr;
|
||||
import org.apache.doris.datasource.hudi.source.HudiPartitionProcessor;
|
||||
import org.apache.doris.datasource.iceberg.IcebergMetadataCache;
|
||||
import org.apache.doris.datasource.iceberg.IcebergMetadataCacheMgr;
|
||||
import org.apache.doris.datasource.maxcompute.MaxComputeMetadataCache;
|
||||
import org.apache.doris.datasource.maxcompute.MaxComputeMetadataCacheMgr;
|
||||
import org.apache.doris.fs.FileSystemCache;
|
||||
import org.apache.doris.nereids.exceptions.NotSupportedException;
|
||||
import org.apache.doris.planner.external.hudi.HudiPartitionMgr;
|
||||
import org.apache.doris.planner.external.hudi.HudiPartitionProcessor;
|
||||
import org.apache.doris.planner.external.iceberg.IcebergMetadataCache;
|
||||
import org.apache.doris.planner.external.iceberg.IcebergMetadataCacheMgr;
|
||||
|
||||
import com.google.common.collect.Maps;
|
||||
import org.apache.logging.log4j.LogManager;
|
||||
|
||||
@ -18,6 +18,7 @@
|
||||
package org.apache.doris.datasource;
|
||||
|
||||
import org.apache.doris.catalog.Env;
|
||||
import org.apache.doris.datasource.hive.HMSExternalCatalog;
|
||||
import org.apache.doris.datasource.hive.event.MetastoreEventsProcessor;
|
||||
|
||||
import com.google.common.base.Preconditions;
|
||||
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external;
|
||||
package org.apache.doris.datasource;
|
||||
|
||||
import org.apache.doris.analysis.Analyzer;
|
||||
import org.apache.doris.analysis.TupleDescriptor;
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.catalog.external;
|
||||
package org.apache.doris.datasource;
|
||||
|
||||
import org.apache.doris.alter.AlterCancelException;
|
||||
import org.apache.doris.catalog.Column;
|
||||
@ -31,8 +31,6 @@ import org.apache.doris.common.MetaNotFoundException;
|
||||
import org.apache.doris.common.io.Text;
|
||||
import org.apache.doris.common.io.Writable;
|
||||
import org.apache.doris.common.util.Util;
|
||||
import org.apache.doris.datasource.ExternalCatalog;
|
||||
import org.apache.doris.datasource.ExternalSchemaCache;
|
||||
import org.apache.doris.persist.gson.GsonPostProcessable;
|
||||
import org.apache.doris.persist.gson.GsonUtils;
|
||||
import org.apache.doris.statistics.AnalysisInfo;
|
||||
@ -18,7 +18,7 @@
|
||||
// https://github.com/trinodb/trino/blob/master/core/trino-main/src/main/java/io/trino/execution/scheduler/UniformNodeSelector.java
|
||||
// and modified by Doris
|
||||
|
||||
package org.apache.doris.planner.external;
|
||||
package org.apache.doris.datasource;
|
||||
|
||||
import org.apache.doris.catalog.Env;
|
||||
import org.apache.doris.common.Config;
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external;
|
||||
package org.apache.doris.datasource;
|
||||
|
||||
import org.apache.doris.analysis.BrokerDesc;
|
||||
import org.apache.doris.analysis.StorageBackend;
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external;
|
||||
package org.apache.doris.datasource;
|
||||
|
||||
import org.apache.doris.analysis.Analyzer;
|
||||
import org.apache.doris.analysis.SlotDescriptor;
|
||||
@ -28,18 +28,19 @@ import org.apache.doris.catalog.FsBroker;
|
||||
import org.apache.doris.catalog.FunctionGenTable;
|
||||
import org.apache.doris.catalog.HdfsResource;
|
||||
import org.apache.doris.catalog.TableIf;
|
||||
import org.apache.doris.catalog.external.ExternalTable;
|
||||
import org.apache.doris.common.AnalysisException;
|
||||
import org.apache.doris.common.NotImplementedException;
|
||||
import org.apache.doris.common.UserException;
|
||||
import org.apache.doris.common.util.BrokerUtil;
|
||||
import org.apache.doris.common.util.Util;
|
||||
import org.apache.doris.datasource.HMSExternalCatalog;
|
||||
import org.apache.doris.datasource.hive.AcidInfo;
|
||||
import org.apache.doris.datasource.hive.AcidInfo.DeleteDeltaInfo;
|
||||
import org.apache.doris.datasource.hive.HMSExternalCatalog;
|
||||
import org.apache.doris.datasource.hive.source.HiveScanNode;
|
||||
import org.apache.doris.datasource.hive.source.HiveSplit;
|
||||
import org.apache.doris.datasource.iceberg.source.IcebergSplit;
|
||||
import org.apache.doris.nereids.glue.translator.PlanTranslatorContext;
|
||||
import org.apache.doris.planner.PlanNodeId;
|
||||
import org.apache.doris.planner.external.iceberg.IcebergSplit;
|
||||
import org.apache.doris.qe.ConnectContext;
|
||||
import org.apache.doris.spi.Split;
|
||||
import org.apache.doris.statistics.StatisticalType;
|
||||
@ -508,13 +509,12 @@ public abstract class FileQueryScanNode extends FileScanNode {
|
||||
|
||||
protected abstract TFileFormatType getFileFormatType() throws UserException;
|
||||
|
||||
|
||||
protected TFileCompressType getFileCompressType(FileSplit fileSplit) throws UserException {
|
||||
return Util.inferFileCompressTypeByPath(fileSplit.getPath().toString());
|
||||
}
|
||||
|
||||
protected TFileAttributes getFileAttributes() throws UserException {
|
||||
throw new NotImplementedException("");
|
||||
throw new NotImplementedException("getFileAttributes is not implemented.");
|
||||
}
|
||||
|
||||
protected abstract List<String> getPathPartitionKeys() throws UserException;
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external;
|
||||
package org.apache.doris.datasource;
|
||||
|
||||
import org.apache.doris.analysis.Expr;
|
||||
import org.apache.doris.analysis.NullLiteral;
|
||||
@ -26,8 +26,8 @@ import org.apache.doris.catalog.Column;
|
||||
import org.apache.doris.catalog.TableIf;
|
||||
import org.apache.doris.common.UserException;
|
||||
import org.apache.doris.common.util.Util;
|
||||
import org.apache.doris.datasource.FileSplit.FileSplitCreator;
|
||||
import org.apache.doris.planner.PlanNodeId;
|
||||
import org.apache.doris.planner.external.FileSplit.FileSplitCreator;
|
||||
import org.apache.doris.qe.ConnectContext;
|
||||
import org.apache.doris.spi.Split;
|
||||
import org.apache.doris.statistics.StatisticalType;
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external;
|
||||
package org.apache.doris.datasource;
|
||||
|
||||
import org.apache.doris.spi.Split;
|
||||
|
||||
@ -26,23 +26,23 @@ import java.util.List;
|
||||
|
||||
@Data
|
||||
public class FileSplit implements Split {
|
||||
protected Path path;
|
||||
protected long start;
|
||||
public Path path;
|
||||
public long start;
|
||||
// length of this split, in bytes
|
||||
protected long length;
|
||||
public long length;
|
||||
// length of the file this split belongs to, in bytes
|
||||
// -1 means unset.
|
||||
// If the file length is not set, the file length will be fetched from the file system.
|
||||
protected long fileLength;
|
||||
protected long modificationTime;
|
||||
protected String[] hosts;
|
||||
protected TableFormatType tableFormatType;
|
||||
public long fileLength;
|
||||
public long modificationTime;
|
||||
public String[] hosts;
|
||||
public TableFormatType tableFormatType;
|
||||
// The values of partitions.
|
||||
// e.g for file : hdfs://path/to/table/part1=a/part2=b/datafile
|
||||
// partitionValues would be ["part1", "part2"]
|
||||
protected List<String> partitionValues;
|
||||
public List<String> partitionValues;
|
||||
|
||||
protected List<String> alternativeHosts;
|
||||
public List<String> alternativeHosts;
|
||||
|
||||
public FileSplit(Path path, long start, long length, long fileLength,
|
||||
long modificationTime, String[] hosts, List<String> partitionValues) {
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external;
|
||||
package org.apache.doris.datasource;
|
||||
|
||||
/**
|
||||
* TODO: This class would be used later for split assignment.
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external;
|
||||
package org.apache.doris.datasource;
|
||||
|
||||
import org.apache.doris.analysis.Analyzer;
|
||||
import org.apache.doris.analysis.ColumnDef.DefaultValue;
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external;
|
||||
package org.apache.doris.datasource;
|
||||
|
||||
public enum NodeSelectionStrategy {
|
||||
ROUND_ROBIN,
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external;
|
||||
package org.apache.doris.datasource;
|
||||
|
||||
import org.apache.doris.spi.Split;
|
||||
|
||||
@ -18,7 +18,7 @@
|
||||
// https://github.com/trinodb/trino/blob/master/core/trino-spi/src/main/java/io/trino/spi/SplitWeight.java
|
||||
// and modified by Doris
|
||||
|
||||
package org.apache.doris.planner.external;
|
||||
package org.apache.doris.datasource;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonCreator;
|
||||
import com.fasterxml.jackson.annotation.JsonValue;
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external;
|
||||
package org.apache.doris.datasource;
|
||||
|
||||
public enum TableFormatType {
|
||||
HIVE("hive"),
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external;
|
||||
package org.apache.doris.datasource;
|
||||
|
||||
import org.apache.doris.analysis.PartitionValue;
|
||||
import org.apache.doris.catalog.ListPartitionItem;
|
||||
@ -23,7 +23,6 @@ import org.apache.doris.catalog.PartitionItem;
|
||||
import org.apache.doris.catalog.PartitionKey;
|
||||
import org.apache.doris.catalog.Type;
|
||||
import org.apache.doris.common.AnalysisException;
|
||||
import org.apache.doris.datasource.CacheException;
|
||||
import org.apache.doris.planner.ColumnBound;
|
||||
import org.apache.doris.planner.ListPartitionPrunerV2;
|
||||
import org.apache.doris.planner.PartitionPrunerV2Base.UniqueId;
|
||||
@ -15,13 +15,14 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.datasource;
|
||||
package org.apache.doris.datasource.es;
|
||||
|
||||
import org.apache.doris.catalog.EsResource;
|
||||
import org.apache.doris.catalog.external.EsExternalDatabase;
|
||||
import org.apache.doris.common.DdlException;
|
||||
import org.apache.doris.datasource.es.DorisEsException;
|
||||
import org.apache.doris.datasource.es.EsRestClient;
|
||||
import org.apache.doris.datasource.CatalogProperty;
|
||||
import org.apache.doris.datasource.ExternalCatalog;
|
||||
import org.apache.doris.datasource.InitCatalogLog;
|
||||
import org.apache.doris.datasource.SessionContext;
|
||||
|
||||
import com.google.common.collect.ImmutableList;
|
||||
import com.google.common.collect.Lists;
|
||||
@ -15,10 +15,10 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.catalog.external;
|
||||
package org.apache.doris.datasource.es;
|
||||
|
||||
import org.apache.doris.datasource.EsExternalCatalog;
|
||||
import org.apache.doris.datasource.ExternalCatalog;
|
||||
import org.apache.doris.datasource.ExternalDatabase;
|
||||
import org.apache.doris.datasource.InitDatabaseLog;
|
||||
|
||||
/**
|
||||
@ -15,13 +15,11 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.catalog.external;
|
||||
package org.apache.doris.datasource.es;
|
||||
|
||||
import org.apache.doris.catalog.Column;
|
||||
import org.apache.doris.catalog.EsTable;
|
||||
import org.apache.doris.datasource.EsExternalCatalog;
|
||||
import org.apache.doris.datasource.es.EsRestClient;
|
||||
import org.apache.doris.datasource.es.EsUtil;
|
||||
import org.apache.doris.datasource.ExternalTable;
|
||||
import org.apache.doris.thrift.TEsTable;
|
||||
import org.apache.doris.thrift.TTableDescriptor;
|
||||
import org.apache.doris.thrift.TTableType;
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner;
|
||||
package org.apache.doris.datasource.es.source;
|
||||
|
||||
import org.apache.doris.analysis.Analyzer;
|
||||
import org.apache.doris.analysis.Expr;
|
||||
@ -27,9 +27,11 @@ import org.apache.doris.catalog.EsTable;
|
||||
import org.apache.doris.catalog.PartitionInfo;
|
||||
import org.apache.doris.catalog.PartitionItem;
|
||||
import org.apache.doris.catalog.RangePartitionInfo;
|
||||
import org.apache.doris.catalog.external.EsExternalTable;
|
||||
import org.apache.doris.common.AnalysisException;
|
||||
import org.apache.doris.common.UserException;
|
||||
import org.apache.doris.datasource.ExternalScanNode;
|
||||
import org.apache.doris.datasource.FederationBackendPolicy;
|
||||
import org.apache.doris.datasource.es.EsExternalTable;
|
||||
import org.apache.doris.datasource.es.EsShardPartitions;
|
||||
import org.apache.doris.datasource.es.EsShardRouting;
|
||||
import org.apache.doris.datasource.es.EsTablePartitions;
|
||||
@ -37,8 +39,9 @@ import org.apache.doris.datasource.es.QueryBuilders;
|
||||
import org.apache.doris.datasource.es.QueryBuilders.BoolQueryBuilder;
|
||||
import org.apache.doris.datasource.es.QueryBuilders.BuilderOptions;
|
||||
import org.apache.doris.datasource.es.QueryBuilders.QueryBuilder;
|
||||
import org.apache.doris.planner.external.ExternalScanNode;
|
||||
import org.apache.doris.planner.external.FederationBackendPolicy;
|
||||
import org.apache.doris.planner.PartitionPruner;
|
||||
import org.apache.doris.planner.PlanNodeId;
|
||||
import org.apache.doris.planner.RangePartitionPrunerV2;
|
||||
import org.apache.doris.statistics.StatisticalType;
|
||||
import org.apache.doris.statistics.query.StatsDelta;
|
||||
import org.apache.doris.system.Backend;
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.datasource;
|
||||
package org.apache.doris.datasource.hive;
|
||||
|
||||
import org.apache.doris.common.util.Util;
|
||||
|
||||
@ -15,20 +15,21 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.datasource;
|
||||
package org.apache.doris.datasource.hive;
|
||||
|
||||
import org.apache.doris.catalog.Env;
|
||||
import org.apache.doris.catalog.HdfsResource;
|
||||
import org.apache.doris.catalog.external.ExternalDatabase;
|
||||
import org.apache.doris.catalog.external.ExternalTable;
|
||||
import org.apache.doris.catalog.external.HMSExternalDatabase;
|
||||
import org.apache.doris.cluster.ClusterNamespace;
|
||||
import org.apache.doris.common.Config;
|
||||
import org.apache.doris.common.DdlException;
|
||||
import org.apache.doris.common.security.authentication.AuthenticationConfig;
|
||||
import org.apache.doris.common.security.authentication.HadoopUGI;
|
||||
import org.apache.doris.datasource.hive.HMSCachedClient;
|
||||
import org.apache.doris.datasource.hive.HMSCachedClientFactory;
|
||||
import org.apache.doris.datasource.CatalogProperty;
|
||||
import org.apache.doris.datasource.ExternalCatalog;
|
||||
import org.apache.doris.datasource.ExternalDatabase;
|
||||
import org.apache.doris.datasource.ExternalTable;
|
||||
import org.apache.doris.datasource.InitCatalogLog;
|
||||
import org.apache.doris.datasource.SessionContext;
|
||||
import org.apache.doris.datasource.jdbc.client.JdbcClientConfig;
|
||||
import org.apache.doris.datasource.property.PropertyConverter;
|
||||
import org.apache.doris.datasource.property.constants.HMSProperties;
|
||||
@ -15,20 +15,15 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.catalog.external;
|
||||
package org.apache.doris.datasource.hive;
|
||||
|
||||
import org.apache.doris.catalog.TableIf;
|
||||
import org.apache.doris.datasource.ExternalCatalog;
|
||||
import org.apache.doris.datasource.HMSExternalCatalog;
|
||||
import org.apache.doris.datasource.ExternalDatabase;
|
||||
import org.apache.doris.datasource.InitDatabaseLog;
|
||||
|
||||
import org.apache.logging.log4j.LogManager;
|
||||
import org.apache.logging.log4j.Logger;
|
||||
|
||||
import java.util.Comparator;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* Hive metastore external database.
|
||||
*/
|
||||
@ -51,12 +46,6 @@ public class HMSExternalDatabase extends ExternalDatabase<HMSExternalTable> {
|
||||
return new HMSExternalTable(tblId, tableName, name, (HMSExternalCatalog) extCatalog);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<HMSExternalTable> getTablesOnIdOrder() {
|
||||
// Sort the name instead, because the id may change.
|
||||
return getTables().stream().sorted(Comparator.comparing(TableIf::getName)).collect(Collectors.toList());
|
||||
}
|
||||
|
||||
public void addTableForTest(HMSExternalTable tbl) {
|
||||
idToTbl.put(tbl.getId(), tbl);
|
||||
tableNameToId.put(tbl.getName(), tbl.getId());
|
||||
@ -15,11 +15,10 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.catalog.external;
|
||||
package org.apache.doris.datasource.hive;
|
||||
|
||||
import org.apache.doris.catalog.Column;
|
||||
import org.apache.doris.catalog.Env;
|
||||
import org.apache.doris.catalog.HiveMetaStoreClientHelper;
|
||||
import org.apache.doris.catalog.ListPartitionItem;
|
||||
import org.apache.doris.catalog.PartitionItem;
|
||||
import org.apache.doris.catalog.PartitionType;
|
||||
@ -27,10 +26,7 @@ import org.apache.doris.catalog.PrimitiveType;
|
||||
import org.apache.doris.catalog.ScalarType;
|
||||
import org.apache.doris.catalog.Type;
|
||||
import org.apache.doris.common.AnalysisException;
|
||||
import org.apache.doris.datasource.HMSExternalCatalog;
|
||||
import org.apache.doris.datasource.hive.HMSCachedClient;
|
||||
import org.apache.doris.datasource.hive.HiveMetaStoreCache;
|
||||
import org.apache.doris.datasource.hive.HivePartition;
|
||||
import org.apache.doris.datasource.ExternalTable;
|
||||
import org.apache.doris.datasource.hudi.HudiUtils;
|
||||
import org.apache.doris.datasource.iceberg.IcebergUtils;
|
||||
import org.apache.doris.mtmv.MTMVMaxTimestampSnapshot;
|
||||
@ -299,20 +295,6 @@ public class HMSExternalTable extends ExternalTable implements MTMVRelatedTableI
|
||||
return remoteTable.isSetViewOriginalText() || remoteTable.isSetViewExpandedText();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getEngine() {
|
||||
switch (type) {
|
||||
case HIVE:
|
||||
return "Hive";
|
||||
case ICEBERG:
|
||||
return "Iceberg";
|
||||
case HUDI:
|
||||
return "Hudi";
|
||||
default:
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getComment() {
|
||||
return "";
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.catalog;
|
||||
package org.apache.doris.datasource.hive;
|
||||
|
||||
import org.apache.doris.analysis.BinaryPredicate;
|
||||
import org.apache.doris.analysis.CompoundPredicate;
|
||||
@ -23,6 +23,7 @@ import org.apache.doris.analysis.Expr;
|
||||
import org.apache.doris.analysis.InPredicate;
|
||||
import org.apache.doris.analysis.LiteralExpr;
|
||||
import org.apache.doris.analysis.SlotRef;
|
||||
import org.apache.doris.catalog.PrimitiveType;
|
||||
import org.apache.doris.common.DdlException;
|
||||
import org.apache.doris.thrift.TExprOpcode;
|
||||
|
||||
@ -26,7 +26,6 @@ import org.apache.doris.catalog.ListPartitionItem;
|
||||
import org.apache.doris.catalog.PartitionItem;
|
||||
import org.apache.doris.catalog.PartitionKey;
|
||||
import org.apache.doris.catalog.Type;
|
||||
import org.apache.doris.catalog.external.HMSExternalTable;
|
||||
import org.apache.doris.common.AnalysisException;
|
||||
import org.apache.doris.common.Config;
|
||||
import org.apache.doris.common.FeConstants;
|
||||
@ -36,7 +35,7 @@ import org.apache.doris.common.security.authentication.AuthenticationConfig;
|
||||
import org.apache.doris.common.util.CacheBulkLoader;
|
||||
import org.apache.doris.common.util.LocationPath;
|
||||
import org.apache.doris.datasource.CacheException;
|
||||
import org.apache.doris.datasource.HMSExternalCatalog;
|
||||
import org.apache.doris.datasource.FileSplit;
|
||||
import org.apache.doris.datasource.hive.AcidInfo.DeleteDeltaInfo;
|
||||
import org.apache.doris.datasource.property.PropertyConverter;
|
||||
import org.apache.doris.fs.FileSystemCache;
|
||||
@ -50,7 +49,6 @@ import org.apache.doris.metric.MetricRepo;
|
||||
import org.apache.doris.planner.ColumnBound;
|
||||
import org.apache.doris.planner.ListPartitionPrunerV2;
|
||||
import org.apache.doris.planner.PartitionPrunerV2Base.UniqueId;
|
||||
import org.apache.doris.planner.external.FileSplit;
|
||||
|
||||
import com.google.common.base.Preconditions;
|
||||
import com.google.common.base.Strings;
|
||||
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.catalog;
|
||||
package org.apache.doris.datasource.hive;
|
||||
|
||||
import org.apache.doris.analysis.BinaryPredicate;
|
||||
import org.apache.doris.analysis.BoolLiteral;
|
||||
@ -30,7 +30,15 @@ import org.apache.doris.analysis.LiteralExpr;
|
||||
import org.apache.doris.analysis.NullLiteral;
|
||||
import org.apache.doris.analysis.SlotRef;
|
||||
import org.apache.doris.analysis.StringLiteral;
|
||||
import org.apache.doris.catalog.external.HMSExternalTable;
|
||||
import org.apache.doris.catalog.ArrayType;
|
||||
import org.apache.doris.catalog.Env;
|
||||
import org.apache.doris.catalog.HiveTable;
|
||||
import org.apache.doris.catalog.MapType;
|
||||
import org.apache.doris.catalog.PrimitiveType;
|
||||
import org.apache.doris.catalog.ScalarType;
|
||||
import org.apache.doris.catalog.StructField;
|
||||
import org.apache.doris.catalog.StructType;
|
||||
import org.apache.doris.catalog.Type;
|
||||
import org.apache.doris.common.Config;
|
||||
import org.apache.doris.common.DdlException;
|
||||
import org.apache.doris.common.security.authentication.AuthenticationConfig;
|
||||
@ -18,9 +18,7 @@
|
||||
package org.apache.doris.datasource.hive;
|
||||
|
||||
import org.apache.doris.analysis.TableName;
|
||||
import org.apache.doris.catalog.external.HMSExternalTable;
|
||||
import org.apache.doris.common.UserException;
|
||||
import org.apache.doris.datasource.HMSExternalCatalog;
|
||||
|
||||
import com.google.common.collect.Lists;
|
||||
import org.apache.hadoop.hive.common.ValidWriteIdList;
|
||||
|
||||
@ -17,7 +17,6 @@
|
||||
|
||||
package org.apache.doris.datasource.hive;
|
||||
|
||||
import org.apache.doris.catalog.external.HMSExternalTable;
|
||||
import org.apache.doris.common.UserException;
|
||||
import org.apache.doris.fs.remote.BrokerFileSystem;
|
||||
import org.apache.doris.fs.remote.RemoteFileSystem;
|
||||
|
||||
@ -20,7 +20,6 @@ package org.apache.doris.datasource.hive;
|
||||
import org.apache.doris.analysis.TableName;
|
||||
import org.apache.doris.catalog.JdbcTable;
|
||||
import org.apache.doris.catalog.Type;
|
||||
import org.apache.doris.datasource.HMSClientException;
|
||||
import org.apache.doris.datasource.hive.event.MetastoreNotificationFetchException;
|
||||
import org.apache.doris.datasource.jdbc.client.JdbcClientConfig;
|
||||
import org.apache.doris.thrift.TOdbcTableType;
|
||||
|
||||
@ -18,9 +18,7 @@
|
||||
package org.apache.doris.datasource.hive;
|
||||
|
||||
import org.apache.doris.analysis.TableName;
|
||||
import org.apache.doris.catalog.HiveMetaStoreClientHelper;
|
||||
import org.apache.doris.common.Config;
|
||||
import org.apache.doris.datasource.HMSClientException;
|
||||
import org.apache.doris.datasource.hive.event.MetastoreNotificationFetchException;
|
||||
import org.apache.doris.datasource.property.constants.HMSProperties;
|
||||
|
||||
|
||||
@ -19,8 +19,8 @@
|
||||
package org.apache.doris.datasource.hive.event;
|
||||
|
||||
import org.apache.doris.catalog.Env;
|
||||
import org.apache.doris.datasource.HMSExternalCatalog;
|
||||
import org.apache.doris.datasource.MetaIdMappingsLog;
|
||||
import org.apache.doris.datasource.hive.HMSExternalCatalog;
|
||||
|
||||
import com.google.common.base.Preconditions;
|
||||
import com.google.common.collect.ImmutableList;
|
||||
|
||||
@ -24,8 +24,8 @@ import org.apache.doris.common.Config;
|
||||
import org.apache.doris.common.util.MasterDaemon;
|
||||
import org.apache.doris.datasource.CatalogIf;
|
||||
import org.apache.doris.datasource.CatalogLog;
|
||||
import org.apache.doris.datasource.HMSClientException;
|
||||
import org.apache.doris.datasource.HMSExternalCatalog;
|
||||
import org.apache.doris.datasource.hive.HMSClientException;
|
||||
import org.apache.doris.datasource.hive.HMSExternalCatalog;
|
||||
import org.apache.doris.qe.ConnectContext;
|
||||
import org.apache.doris.qe.MasterOpExecutor;
|
||||
import org.apache.doris.qe.OriginStatement;
|
||||
|
||||
@ -15,33 +15,35 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external;
|
||||
package org.apache.doris.datasource.hive.source;
|
||||
|
||||
import org.apache.doris.analysis.FunctionCallExpr;
|
||||
import org.apache.doris.analysis.TupleDescriptor;
|
||||
import org.apache.doris.catalog.Column;
|
||||
import org.apache.doris.catalog.Env;
|
||||
import org.apache.doris.catalog.HiveMetaStoreClientHelper;
|
||||
import org.apache.doris.catalog.ListPartitionItem;
|
||||
import org.apache.doris.catalog.PartitionItem;
|
||||
import org.apache.doris.catalog.TableIf;
|
||||
import org.apache.doris.catalog.Type;
|
||||
import org.apache.doris.catalog.external.HMSExternalTable;
|
||||
import org.apache.doris.common.AnalysisException;
|
||||
import org.apache.doris.common.DdlException;
|
||||
import org.apache.doris.common.UserException;
|
||||
import org.apache.doris.common.util.DebugUtil;
|
||||
import org.apache.doris.common.util.LocationPath;
|
||||
import org.apache.doris.common.util.Util;
|
||||
import org.apache.doris.datasource.HMSExternalCatalog;
|
||||
import org.apache.doris.datasource.FileQueryScanNode;
|
||||
import org.apache.doris.datasource.FileSplit;
|
||||
import org.apache.doris.datasource.hive.HMSExternalCatalog;
|
||||
import org.apache.doris.datasource.hive.HMSExternalTable;
|
||||
import org.apache.doris.datasource.hive.HiveMetaStoreCache;
|
||||
import org.apache.doris.datasource.hive.HiveMetaStoreCache.FileCacheValue;
|
||||
import org.apache.doris.datasource.hive.HiveMetaStoreClientHelper;
|
||||
import org.apache.doris.datasource.hive.HivePartition;
|
||||
import org.apache.doris.datasource.hive.HiveTransaction;
|
||||
import org.apache.doris.datasource.hive.source.HiveSplit.HiveSplitCreator;
|
||||
import org.apache.doris.nereids.trees.plans.logical.LogicalFileScan.SelectedPartitions;
|
||||
import org.apache.doris.planner.ListPartitionPrunerV2;
|
||||
import org.apache.doris.planner.PlanNodeId;
|
||||
import org.apache.doris.planner.external.HiveSplit.HiveSplitCreator;
|
||||
import org.apache.doris.qe.ConnectContext;
|
||||
import org.apache.doris.spi.Split;
|
||||
import org.apache.doris.statistics.StatisticalType;
|
||||
@ -15,8 +15,10 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external;
|
||||
package org.apache.doris.datasource.hive.source;
|
||||
|
||||
import org.apache.doris.datasource.FileSplit;
|
||||
import org.apache.doris.datasource.SplitCreator;
|
||||
import org.apache.doris.datasource.hive.AcidInfo;
|
||||
import org.apache.doris.spi.Split;
|
||||
|
||||
@ -15,13 +15,13 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external.hudi;
|
||||
package org.apache.doris.datasource.hudi.source;
|
||||
|
||||
import org.apache.doris.catalog.external.HMSExternalTable;
|
||||
import org.apache.doris.common.Config;
|
||||
import org.apache.doris.datasource.CacheException;
|
||||
import org.apache.doris.planner.external.TablePartitionValues;
|
||||
import org.apache.doris.planner.external.TablePartitionValues.TablePartitionKey;
|
||||
import org.apache.doris.datasource.TablePartitionValues;
|
||||
import org.apache.doris.datasource.TablePartitionValues.TablePartitionKey;
|
||||
import org.apache.doris.datasource.hive.HMSExternalTable;
|
||||
|
||||
import com.google.common.base.Preconditions;
|
||||
import com.google.common.cache.CacheBuilder;
|
||||
@ -15,10 +15,10 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external.hudi;
|
||||
package org.apache.doris.datasource.hudi.source;
|
||||
|
||||
import org.apache.doris.datasource.ExternalCatalog;
|
||||
import org.apache.doris.datasource.HMSExternalCatalog;
|
||||
import org.apache.doris.datasource.hive.HMSExternalCatalog;
|
||||
|
||||
import com.google.common.collect.Maps;
|
||||
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external.hudi;
|
||||
package org.apache.doris.datasource.hudi.source;
|
||||
|
||||
import org.apache.hudi.common.config.HoodieMetadataConfig;
|
||||
import org.apache.hudi.common.engine.HoodieLocalEngineContext;
|
||||
@ -15,25 +15,25 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external.hudi;
|
||||
package org.apache.doris.datasource.hudi.source;
|
||||
|
||||
import org.apache.doris.analysis.TupleDescriptor;
|
||||
import org.apache.doris.catalog.Env;
|
||||
import org.apache.doris.catalog.HiveMetaStoreClientHelper;
|
||||
import org.apache.doris.catalog.PartitionItem;
|
||||
import org.apache.doris.catalog.Type;
|
||||
import org.apache.doris.catalog.external.ExternalTable;
|
||||
import org.apache.doris.common.AnalysisException;
|
||||
import org.apache.doris.common.UserException;
|
||||
import org.apache.doris.common.util.LocationPath;
|
||||
import org.apache.doris.datasource.ExternalTable;
|
||||
import org.apache.doris.datasource.FileSplit;
|
||||
import org.apache.doris.datasource.TableFormatType;
|
||||
import org.apache.doris.datasource.TablePartitionValues;
|
||||
import org.apache.doris.datasource.hive.HiveMetaStoreClientHelper;
|
||||
import org.apache.doris.datasource.hive.HivePartition;
|
||||
import org.apache.doris.datasource.hive.source.HiveScanNode;
|
||||
import org.apache.doris.datasource.hudi.HudiUtils;
|
||||
import org.apache.doris.planner.ListPartitionPrunerV2;
|
||||
import org.apache.doris.planner.PlanNodeId;
|
||||
import org.apache.doris.planner.external.FileSplit;
|
||||
import org.apache.doris.planner.external.HiveScanNode;
|
||||
import org.apache.doris.planner.external.TableFormatType;
|
||||
import org.apache.doris.planner.external.TablePartitionValues;
|
||||
import org.apache.doris.spi.Split;
|
||||
import org.apache.doris.statistics.StatisticalType;
|
||||
import org.apache.doris.thrift.TExplainLevel;
|
||||
@ -15,9 +15,9 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external.hudi;
|
||||
package org.apache.doris.datasource.hudi.source;
|
||||
|
||||
import org.apache.doris.planner.external.FileSplit;
|
||||
import org.apache.doris.datasource.FileSplit;
|
||||
|
||||
import lombok.Data;
|
||||
import org.apache.hadoop.fs.Path;
|
||||
@ -15,20 +15,15 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.catalog.external;
|
||||
package org.apache.doris.datasource.iceberg;
|
||||
|
||||
import org.apache.doris.catalog.TableIf;
|
||||
import org.apache.doris.datasource.ExternalCatalog;
|
||||
import org.apache.doris.datasource.ExternalDatabase;
|
||||
import org.apache.doris.datasource.InitDatabaseLog;
|
||||
import org.apache.doris.datasource.iceberg.IcebergExternalCatalog;
|
||||
|
||||
import org.apache.logging.log4j.LogManager;
|
||||
import org.apache.logging.log4j.Logger;
|
||||
|
||||
import java.util.Comparator;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class IcebergExternalDatabase extends ExternalDatabase<IcebergExternalTable> {
|
||||
|
||||
private static final Logger LOG = LogManager.getLogger(IcebergExternalDatabase.class);
|
||||
@ -42,12 +37,6 @@ public class IcebergExternalDatabase extends ExternalDatabase<IcebergExternalTab
|
||||
return new IcebergExternalTable(tblId, tableName, name, (IcebergExternalCatalog) extCatalog);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<IcebergExternalTable> getTablesOnIdOrder() {
|
||||
// Sort the name instead, because the id may change.
|
||||
return getTables().stream().sorted(Comparator.comparing(TableIf::getName)).collect(Collectors.toList());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void dropTable(String tableName) {
|
||||
if (LOG.isDebugEnabled()) {
|
||||
@ -15,12 +15,11 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.catalog.external;
|
||||
package org.apache.doris.datasource.iceberg;
|
||||
|
||||
import org.apache.doris.catalog.Column;
|
||||
import org.apache.doris.catalog.HiveMetaStoreClientHelper;
|
||||
import org.apache.doris.datasource.iceberg.IcebergExternalCatalog;
|
||||
import org.apache.doris.datasource.iceberg.IcebergUtils;
|
||||
import org.apache.doris.datasource.ExternalTable;
|
||||
import org.apache.doris.datasource.hive.HiveMetaStoreClientHelper;
|
||||
import org.apache.doris.statistics.AnalysisInfo;
|
||||
import org.apache.doris.statistics.BaseAnalysisTask;
|
||||
import org.apache.doris.statistics.ColumnStatistic;
|
||||
@ -15,15 +15,14 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external.iceberg;
|
||||
package org.apache.doris.datasource.iceberg;
|
||||
|
||||
import org.apache.doris.catalog.Env;
|
||||
import org.apache.doris.catalog.HiveMetaStoreClientHelper;
|
||||
import org.apache.doris.common.Config;
|
||||
import org.apache.doris.common.UserException;
|
||||
import org.apache.doris.datasource.CatalogIf;
|
||||
import org.apache.doris.datasource.HMSExternalCatalog;
|
||||
import org.apache.doris.datasource.iceberg.IcebergExternalCatalog;
|
||||
import org.apache.doris.datasource.hive.HMSExternalCatalog;
|
||||
import org.apache.doris.datasource.hive.HiveMetaStoreClientHelper;
|
||||
import org.apache.doris.datasource.property.constants.HMSProperties;
|
||||
import org.apache.doris.thrift.TIcebergMetadataParams;
|
||||
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external.iceberg;
|
||||
package org.apache.doris.datasource.iceberg;
|
||||
|
||||
public class IcebergMetadataCacheMgr {
|
||||
|
||||
@ -36,11 +36,11 @@ import org.apache.doris.analysis.Subquery;
|
||||
import org.apache.doris.catalog.ArrayType;
|
||||
import org.apache.doris.catalog.Column;
|
||||
import org.apache.doris.catalog.Env;
|
||||
import org.apache.doris.catalog.HiveMetaStoreClientHelper;
|
||||
import org.apache.doris.catalog.ScalarType;
|
||||
import org.apache.doris.catalog.Type;
|
||||
import org.apache.doris.common.util.TimeUtils;
|
||||
import org.apache.doris.datasource.ExternalCatalog;
|
||||
import org.apache.doris.datasource.hive.HiveMetaStoreClientHelper;
|
||||
import org.apache.doris.thrift.TExprOpcode;
|
||||
|
||||
import com.google.common.collect.Lists;
|
||||
|
||||
@ -18,7 +18,7 @@
|
||||
package org.apache.doris.datasource.iceberg.broker;
|
||||
|
||||
import org.apache.doris.analysis.BrokerDesc;
|
||||
import org.apache.doris.datasource.HMSExternalCatalog;
|
||||
import org.apache.doris.datasource.hive.HMSExternalCatalog;
|
||||
|
||||
import com.google.common.collect.ImmutableMap;
|
||||
import org.apache.iceberg.io.FileIO;
|
||||
|
||||
@ -15,15 +15,15 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external.iceberg;
|
||||
package org.apache.doris.datasource.iceberg.source;
|
||||
|
||||
import org.apache.doris.analysis.TupleDescriptor;
|
||||
import org.apache.doris.catalog.Env;
|
||||
import org.apache.doris.catalog.TableIf;
|
||||
import org.apache.doris.catalog.external.IcebergExternalTable;
|
||||
import org.apache.doris.common.MetaNotFoundException;
|
||||
import org.apache.doris.common.UserException;
|
||||
import org.apache.doris.datasource.ExternalCatalog;
|
||||
import org.apache.doris.datasource.iceberg.IcebergExternalTable;
|
||||
import org.apache.doris.planner.ColumnRange;
|
||||
import org.apache.doris.thrift.TFileAttributes;
|
||||
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external.iceberg;
|
||||
package org.apache.doris.datasource.iceberg.source;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@ -15,18 +15,18 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external.iceberg;
|
||||
package org.apache.doris.datasource.iceberg.source;
|
||||
|
||||
import org.apache.doris.analysis.TupleDescriptor;
|
||||
import org.apache.doris.catalog.Env;
|
||||
import org.apache.doris.catalog.TableIf;
|
||||
import org.apache.doris.catalog.external.HMSExternalTable;
|
||||
import org.apache.doris.common.DdlException;
|
||||
import org.apache.doris.common.MetaNotFoundException;
|
||||
import org.apache.doris.common.UserException;
|
||||
import org.apache.doris.datasource.ExternalCatalog;
|
||||
import org.apache.doris.datasource.hive.HMSExternalTable;
|
||||
import org.apache.doris.datasource.hive.source.HiveScanNode;
|
||||
import org.apache.doris.planner.ColumnRange;
|
||||
import org.apache.doris.planner.external.HiveScanNode;
|
||||
import org.apache.doris.thrift.TFileAttributes;
|
||||
import org.apache.doris.thrift.TFileTextScanRangeParams;
|
||||
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external.iceberg;
|
||||
package org.apache.doris.datasource.iceberg.source;
|
||||
|
||||
import org.apache.doris.analysis.Expr;
|
||||
import org.apache.doris.analysis.FunctionCallExpr;
|
||||
@ -23,24 +23,23 @@ import org.apache.doris.analysis.TableSnapshot;
|
||||
import org.apache.doris.analysis.TupleDescriptor;
|
||||
import org.apache.doris.catalog.Column;
|
||||
import org.apache.doris.catalog.HdfsResource;
|
||||
import org.apache.doris.catalog.HiveMetaStoreClientHelper;
|
||||
import org.apache.doris.catalog.TableIf;
|
||||
import org.apache.doris.catalog.external.ExternalTable;
|
||||
import org.apache.doris.catalog.external.HMSExternalTable;
|
||||
import org.apache.doris.catalog.external.IcebergExternalTable;
|
||||
import org.apache.doris.common.DdlException;
|
||||
import org.apache.doris.common.UserException;
|
||||
import org.apache.doris.common.util.LocationPath;
|
||||
import org.apache.doris.common.util.TimeUtils;
|
||||
import org.apache.doris.datasource.ExternalTable;
|
||||
import org.apache.doris.datasource.FileQueryScanNode;
|
||||
import org.apache.doris.datasource.TableFormatType;
|
||||
import org.apache.doris.datasource.hive.HMSExternalTable;
|
||||
import org.apache.doris.datasource.hive.HiveMetaStoreClientHelper;
|
||||
import org.apache.doris.datasource.iceberg.IcebergExternalCatalog;
|
||||
import org.apache.doris.datasource.iceberg.IcebergExternalTable;
|
||||
import org.apache.doris.datasource.iceberg.IcebergUtils;
|
||||
import org.apache.doris.planner.PlanNodeId;
|
||||
import org.apache.doris.planner.external.FileQueryScanNode;
|
||||
import org.apache.doris.planner.external.TableFormatType;
|
||||
import org.apache.doris.qe.ConnectContext;
|
||||
import org.apache.doris.spi.Split;
|
||||
import org.apache.doris.statistics.StatisticalType;
|
||||
import org.apache.doris.thrift.TFileAttributes;
|
||||
import org.apache.doris.thrift.TFileFormatType;
|
||||
import org.apache.doris.thrift.TFileRangeDesc;
|
||||
import org.apache.doris.thrift.TFileType;
|
||||
@ -381,11 +380,6 @@ public class IcebergScanNode extends FileQueryScanNode {
|
||||
return type;
|
||||
}
|
||||
|
||||
@Override
|
||||
public TFileAttributes getFileAttributes() throws UserException {
|
||||
return source.getFileAttributes();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<String> getPathPartitionKeys() throws UserException {
|
||||
return icebergTable.spec().fields().stream().map(PartitionField::name).map(String::toLowerCase)
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external.iceberg;
|
||||
package org.apache.doris.datasource.iceberg.source;
|
||||
|
||||
import org.apache.doris.analysis.TupleDescriptor;
|
||||
import org.apache.doris.catalog.TableIf;
|
||||
@ -15,9 +15,9 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external.iceberg;
|
||||
package org.apache.doris.datasource.iceberg.source;
|
||||
|
||||
import org.apache.doris.planner.external.FileSplit;
|
||||
import org.apache.doris.datasource.FileSplit;
|
||||
|
||||
import lombok.Data;
|
||||
import org.apache.hadoop.fs.Path;
|
||||
@ -19,9 +19,9 @@ package org.apache.doris.datasource.infoschema;
|
||||
|
||||
import org.apache.doris.catalog.InfoSchemaDb;
|
||||
import org.apache.doris.catalog.SchemaTable;
|
||||
import org.apache.doris.catalog.external.ExternalDatabase;
|
||||
import org.apache.doris.catalog.external.ExternalTable;
|
||||
import org.apache.doris.datasource.ExternalCatalog;
|
||||
import org.apache.doris.datasource.ExternalDatabase;
|
||||
import org.apache.doris.datasource.ExternalTable;
|
||||
import org.apache.doris.datasource.InitDatabaseLog.Type;
|
||||
|
||||
import com.google.common.collect.Lists;
|
||||
|
||||
@ -21,8 +21,8 @@ import org.apache.doris.analysis.SchemaTableType;
|
||||
import org.apache.doris.catalog.Column;
|
||||
import org.apache.doris.catalog.InfoSchemaDb;
|
||||
import org.apache.doris.catalog.SchemaTable;
|
||||
import org.apache.doris.catalog.external.ExternalTable;
|
||||
import org.apache.doris.datasource.ExternalCatalog;
|
||||
import org.apache.doris.datasource.ExternalTable;
|
||||
import org.apache.doris.thrift.TSchemaTable;
|
||||
import org.apache.doris.thrift.TTableDescriptor;
|
||||
import org.apache.doris.thrift.TTableType;
|
||||
|
||||
@ -18,7 +18,6 @@
|
||||
package org.apache.doris.datasource.jdbc;
|
||||
|
||||
import org.apache.doris.catalog.JdbcResource;
|
||||
import org.apache.doris.catalog.external.JdbcExternalDatabase;
|
||||
import org.apache.doris.common.DdlException;
|
||||
import org.apache.doris.datasource.CatalogProperty;
|
||||
import org.apache.doris.datasource.ExternalCatalog;
|
||||
|
||||
@ -15,11 +15,11 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.catalog.external;
|
||||
package org.apache.doris.datasource.jdbc;
|
||||
|
||||
import org.apache.doris.datasource.ExternalCatalog;
|
||||
import org.apache.doris.datasource.ExternalDatabase;
|
||||
import org.apache.doris.datasource.InitDatabaseLog;
|
||||
import org.apache.doris.datasource.jdbc.JdbcExternalCatalog;
|
||||
|
||||
public class JdbcExternalDatabase extends ExternalDatabase<JdbcExternalTable> {
|
||||
|
||||
@ -15,12 +15,12 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.catalog.external;
|
||||
package org.apache.doris.datasource.jdbc;
|
||||
|
||||
import org.apache.doris.catalog.Column;
|
||||
import org.apache.doris.catalog.Env;
|
||||
import org.apache.doris.catalog.JdbcTable;
|
||||
import org.apache.doris.datasource.jdbc.JdbcExternalCatalog;
|
||||
import org.apache.doris.datasource.ExternalTable;
|
||||
import org.apache.doris.statistics.AnalysisInfo;
|
||||
import org.apache.doris.statistics.BaseAnalysisTask;
|
||||
import org.apache.doris.statistics.JdbcAnalysisTask;
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external.jdbc;
|
||||
package org.apache.doris.datasource.jdbc.sink;
|
||||
|
||||
import org.apache.doris.catalog.JdbcTable;
|
||||
import org.apache.doris.planner.DataPartition;
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external.jdbc;
|
||||
package org.apache.doris.datasource.jdbc.source;
|
||||
|
||||
import org.apache.doris.analysis.Expr;
|
||||
import org.apache.doris.analysis.FunctionCallExpr;
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external.jdbc;
|
||||
package org.apache.doris.datasource.jdbc.source;
|
||||
|
||||
import org.apache.doris.analysis.Analyzer;
|
||||
import org.apache.doris.analysis.BinaryPredicate;
|
||||
@ -35,12 +35,12 @@ import org.apache.doris.catalog.Env;
|
||||
import org.apache.doris.catalog.JdbcTable;
|
||||
import org.apache.doris.catalog.TableIf;
|
||||
import org.apache.doris.catalog.TableIf.TableType;
|
||||
import org.apache.doris.catalog.external.JdbcExternalTable;
|
||||
import org.apache.doris.common.AnalysisException;
|
||||
import org.apache.doris.common.UserException;
|
||||
import org.apache.doris.datasource.ExternalScanNode;
|
||||
import org.apache.doris.datasource.jdbc.JdbcExternalTable;
|
||||
import org.apache.doris.nereids.glue.translator.PlanTranslatorContext;
|
||||
import org.apache.doris.planner.PlanNodeId;
|
||||
import org.apache.doris.planner.external.ExternalScanNode;
|
||||
import org.apache.doris.qe.ConnectContext;
|
||||
import org.apache.doris.statistics.StatisticalType;
|
||||
import org.apache.doris.statistics.StatsRecursiveDerive;
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.datasource;
|
||||
package org.apache.doris.datasource.maxcompute;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@ -15,10 +15,14 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.datasource;
|
||||
package org.apache.doris.datasource.maxcompute;
|
||||
|
||||
|
||||
import org.apache.doris.common.DdlException;
|
||||
import org.apache.doris.datasource.CatalogProperty;
|
||||
import org.apache.doris.datasource.ExternalCatalog;
|
||||
import org.apache.doris.datasource.InitCatalogLog;
|
||||
import org.apache.doris.datasource.SessionContext;
|
||||
import org.apache.doris.datasource.credentials.CloudCredential;
|
||||
import org.apache.doris.datasource.property.constants.MCProperties;
|
||||
|
||||
@ -15,11 +15,11 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.catalog.external;
|
||||
package org.apache.doris.datasource.maxcompute;
|
||||
|
||||
import org.apache.doris.datasource.ExternalCatalog;
|
||||
import org.apache.doris.datasource.ExternalDatabase;
|
||||
import org.apache.doris.datasource.InitDatabaseLog;
|
||||
import org.apache.doris.datasource.MaxComputeExternalCatalog;
|
||||
|
||||
/**
|
||||
* MaxCompute external database.
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.catalog.external;
|
||||
package org.apache.doris.datasource.maxcompute;
|
||||
|
||||
import org.apache.doris.catalog.ArrayType;
|
||||
import org.apache.doris.catalog.Column;
|
||||
@ -25,10 +25,8 @@ import org.apache.doris.catalog.ScalarType;
|
||||
import org.apache.doris.catalog.StructField;
|
||||
import org.apache.doris.catalog.StructType;
|
||||
import org.apache.doris.catalog.Type;
|
||||
import org.apache.doris.datasource.MaxComputeCacheKey;
|
||||
import org.apache.doris.datasource.MaxComputeExternalCatalog;
|
||||
import org.apache.doris.datasource.MaxComputeMetadataCache;
|
||||
import org.apache.doris.planner.external.TablePartitionValues;
|
||||
import org.apache.doris.datasource.ExternalTable;
|
||||
import org.apache.doris.datasource.TablePartitionValues;
|
||||
import org.apache.doris.thrift.TMCTable;
|
||||
import org.apache.doris.thrift.TTableDescriptor;
|
||||
import org.apache.doris.thrift.TTableType;
|
||||
@ -15,10 +15,10 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.datasource;
|
||||
package org.apache.doris.datasource.maxcompute;
|
||||
|
||||
import org.apache.doris.common.Config;
|
||||
import org.apache.doris.planner.external.TablePartitionValues;
|
||||
import org.apache.doris.datasource.TablePartitionValues;
|
||||
|
||||
import com.aliyun.odps.tunnel.TunnelException;
|
||||
import com.google.common.cache.Cache;
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.datasource;
|
||||
package org.apache.doris.datasource.maxcompute;
|
||||
|
||||
import com.google.common.collect.Maps;
|
||||
|
||||
@ -15,16 +15,20 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external;
|
||||
package org.apache.doris.datasource.maxcompute.source;
|
||||
|
||||
import org.apache.doris.analysis.TupleDescriptor;
|
||||
import org.apache.doris.catalog.PartitionItem;
|
||||
import org.apache.doris.catalog.TableIf;
|
||||
import org.apache.doris.catalog.external.MaxComputeExternalTable;
|
||||
import org.apache.doris.common.AnalysisException;
|
||||
import org.apache.doris.common.Pair;
|
||||
import org.apache.doris.common.UserException;
|
||||
import org.apache.doris.datasource.MaxComputeExternalCatalog;
|
||||
import org.apache.doris.datasource.FileQueryScanNode;
|
||||
import org.apache.doris.datasource.FileSplit;
|
||||
import org.apache.doris.datasource.TableFormatType;
|
||||
import org.apache.doris.datasource.TablePartitionValues;
|
||||
import org.apache.doris.datasource.maxcompute.MaxComputeExternalCatalog;
|
||||
import org.apache.doris.datasource.maxcompute.MaxComputeExternalTable;
|
||||
import org.apache.doris.planner.ListPartitionPrunerV2;
|
||||
import org.apache.doris.planner.PlanNodeId;
|
||||
import org.apache.doris.spi.Split;
|
||||
@ -15,7 +15,9 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external;
|
||||
package org.apache.doris.datasource.maxcompute.source;
|
||||
|
||||
import org.apache.doris.datasource.FileSplit;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external.odbc;
|
||||
package org.apache.doris.datasource.odbc.sink;
|
||||
|
||||
import org.apache.doris.catalog.JdbcTable;
|
||||
import org.apache.doris.catalog.OdbcTable;
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external.odbc;
|
||||
package org.apache.doris.datasource.odbc.source;
|
||||
|
||||
import org.apache.doris.analysis.Analyzer;
|
||||
import org.apache.doris.analysis.Expr;
|
||||
@ -31,10 +31,10 @@ import org.apache.doris.catalog.JdbcTable;
|
||||
import org.apache.doris.catalog.OdbcTable;
|
||||
import org.apache.doris.common.AnalysisException;
|
||||
import org.apache.doris.common.UserException;
|
||||
import org.apache.doris.datasource.ExternalScanNode;
|
||||
import org.apache.doris.datasource.jdbc.source.JdbcScanNode;
|
||||
import org.apache.doris.nereids.glue.translator.PlanTranslatorContext;
|
||||
import org.apache.doris.planner.PlanNodeId;
|
||||
import org.apache.doris.planner.external.ExternalScanNode;
|
||||
import org.apache.doris.planner.external.jdbc.JdbcScanNode;
|
||||
import org.apache.doris.qe.ConnectContext;
|
||||
import org.apache.doris.statistics.StatisticalType;
|
||||
import org.apache.doris.statistics.StatsRecursiveDerive;
|
||||
@ -15,20 +15,15 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.catalog.external;
|
||||
package org.apache.doris.datasource.paimon;
|
||||
|
||||
import org.apache.doris.catalog.TableIf;
|
||||
import org.apache.doris.datasource.ExternalCatalog;
|
||||
import org.apache.doris.datasource.ExternalDatabase;
|
||||
import org.apache.doris.datasource.InitDatabaseLog;
|
||||
import org.apache.doris.datasource.paimon.PaimonExternalCatalog;
|
||||
|
||||
import org.apache.logging.log4j.LogManager;
|
||||
import org.apache.logging.log4j.Logger;
|
||||
|
||||
import java.util.Comparator;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class PaimonExternalDatabase extends ExternalDatabase<PaimonExternalTable> {
|
||||
|
||||
private static final Logger LOG = LogManager.getLogger(PaimonExternalDatabase.class);
|
||||
@ -42,12 +37,6 @@ public class PaimonExternalDatabase extends ExternalDatabase<PaimonExternalTable
|
||||
return new PaimonExternalTable(tblId, tableName, name, (PaimonExternalCatalog) extCatalog);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<PaimonExternalTable> getTablesOnIdOrder() {
|
||||
// Sort the name instead, because the id may change.
|
||||
return getTables().stream().sorted(Comparator.comparing(TableIf::getName)).collect(Collectors.toList());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void dropTable(String tableName) {
|
||||
if (LOG.isDebugEnabled()) {
|
||||
@ -15,12 +15,12 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.catalog.external;
|
||||
package org.apache.doris.datasource.paimon;
|
||||
|
||||
import org.apache.doris.catalog.Column;
|
||||
import org.apache.doris.catalog.ScalarType;
|
||||
import org.apache.doris.catalog.Type;
|
||||
import org.apache.doris.datasource.paimon.PaimonExternalCatalog;
|
||||
import org.apache.doris.datasource.ExternalTable;
|
||||
import org.apache.doris.statistics.AnalysisInfo;
|
||||
import org.apache.doris.statistics.BaseAnalysisTask;
|
||||
import org.apache.doris.statistics.ExternalAnalysisTask;
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external.paimon;
|
||||
package org.apache.doris.datasource.paimon.source;
|
||||
|
||||
import org.apache.doris.analysis.CastExpr;
|
||||
import org.apache.doris.analysis.CompoundPredicate;
|
||||
@ -15,26 +15,25 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external.paimon;
|
||||
package org.apache.doris.datasource.paimon.source;
|
||||
|
||||
import org.apache.doris.analysis.SlotId;
|
||||
import org.apache.doris.analysis.TupleDescriptor;
|
||||
import org.apache.doris.catalog.TableIf;
|
||||
import org.apache.doris.catalog.external.ExternalTable;
|
||||
import org.apache.doris.catalog.external.PaimonExternalTable;
|
||||
import org.apache.doris.common.AnalysisException;
|
||||
import org.apache.doris.common.DdlException;
|
||||
import org.apache.doris.common.MetaNotFoundException;
|
||||
import org.apache.doris.common.UserException;
|
||||
import org.apache.doris.common.util.LocationPath;
|
||||
import org.apache.doris.datasource.ExternalTable;
|
||||
import org.apache.doris.datasource.FileQueryScanNode;
|
||||
import org.apache.doris.datasource.paimon.PaimonExternalCatalog;
|
||||
import org.apache.doris.datasource.paimon.PaimonExternalTable;
|
||||
import org.apache.doris.nereids.glue.translator.PlanTranslatorContext;
|
||||
import org.apache.doris.planner.PlanNodeId;
|
||||
import org.apache.doris.planner.external.FileQueryScanNode;
|
||||
import org.apache.doris.qe.ConnectContext;
|
||||
import org.apache.doris.spi.Split;
|
||||
import org.apache.doris.statistics.StatisticalType;
|
||||
import org.apache.doris.thrift.TFileAttributes;
|
||||
import org.apache.doris.thrift.TFileFormatType;
|
||||
import org.apache.doris.thrift.TFileRangeDesc;
|
||||
import org.apache.doris.thrift.TFileType;
|
||||
@ -229,11 +228,6 @@ public class PaimonScanNode extends FileQueryScanNode {
|
||||
return new ArrayList<>();
|
||||
}
|
||||
|
||||
@Override
|
||||
public TFileAttributes getFileAttributes() throws UserException {
|
||||
return source.getFileAttributes();
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableIf getTargetTable() {
|
||||
return source.getTargetTable();
|
||||
@ -15,13 +15,13 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external.paimon;
|
||||
package org.apache.doris.datasource.paimon.source;
|
||||
|
||||
import org.apache.doris.analysis.TupleDescriptor;
|
||||
import org.apache.doris.catalog.TableIf;
|
||||
import org.apache.doris.catalog.external.PaimonExternalTable;
|
||||
import org.apache.doris.common.UserException;
|
||||
import org.apache.doris.datasource.ExternalCatalog;
|
||||
import org.apache.doris.datasource.paimon.PaimonExternalTable;
|
||||
import org.apache.doris.datasource.property.constants.PaimonProperties;
|
||||
import org.apache.doris.planner.ColumnRange;
|
||||
import org.apache.doris.thrift.TFileAttributes;
|
||||
@ -15,11 +15,11 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external.paimon;
|
||||
package org.apache.doris.datasource.paimon.source;
|
||||
|
||||
import org.apache.doris.planner.external.FileSplit;
|
||||
import org.apache.doris.planner.external.SplitCreator;
|
||||
import org.apache.doris.planner.external.TableFormatType;
|
||||
import org.apache.doris.datasource.FileSplit;
|
||||
import org.apache.doris.datasource.SplitCreator;
|
||||
import org.apache.doris.datasource.TableFormatType;
|
||||
|
||||
import org.apache.hadoop.fs.Path;
|
||||
import org.apache.paimon.table.source.Split;
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external.paimon;
|
||||
package org.apache.doris.datasource.paimon.source;
|
||||
|
||||
import org.apache.doris.analysis.BoolLiteral;
|
||||
import org.apache.doris.analysis.DateLiteral;
|
||||
@ -18,7 +18,6 @@
|
||||
package org.apache.doris.datasource.test;
|
||||
|
||||
import org.apache.doris.catalog.Column;
|
||||
import org.apache.doris.catalog.external.TestExternalDatabase;
|
||||
import org.apache.doris.datasource.CatalogProperty;
|
||||
import org.apache.doris.datasource.ExternalCatalog;
|
||||
import org.apache.doris.datasource.InitCatalogLog;
|
||||
|
||||
@ -15,11 +15,11 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.catalog.external;
|
||||
package org.apache.doris.datasource.test;
|
||||
|
||||
import org.apache.doris.datasource.ExternalCatalog;
|
||||
import org.apache.doris.datasource.ExternalDatabase;
|
||||
import org.apache.doris.datasource.InitDatabaseLog;
|
||||
import org.apache.doris.datasource.test.TestExternalCatalog;
|
||||
|
||||
public class TestExternalDatabase extends ExternalDatabase<TestExternalTable> {
|
||||
|
||||
@ -15,10 +15,10 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.catalog.external;
|
||||
package org.apache.doris.datasource.test;
|
||||
|
||||
import org.apache.doris.catalog.Column;
|
||||
import org.apache.doris.datasource.test.TestExternalCatalog;
|
||||
import org.apache.doris.datasource.ExternalTable;
|
||||
import org.apache.doris.thrift.TTableDescriptor;
|
||||
import org.apache.doris.thrift.TTableType;
|
||||
|
||||
@ -15,11 +15,12 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external;
|
||||
package org.apache.doris.datasource.tvf.source;
|
||||
|
||||
import org.apache.doris.analysis.Analyzer;
|
||||
import org.apache.doris.analysis.TupleDescriptor;
|
||||
import org.apache.doris.common.UserException;
|
||||
import org.apache.doris.datasource.ExternalScanNode;
|
||||
import org.apache.doris.planner.PlanNodeId;
|
||||
import org.apache.doris.qe.ConnectContext;
|
||||
import org.apache.doris.statistics.StatisticalType;
|
||||
@ -15,7 +15,7 @@
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
|
||||
package org.apache.doris.planner.external;
|
||||
package org.apache.doris.datasource.tvf.source;
|
||||
|
||||
import org.apache.doris.analysis.TupleDescriptor;
|
||||
import org.apache.doris.catalog.Env;
|
||||
@ -25,6 +25,8 @@ import org.apache.doris.common.DdlException;
|
||||
import org.apache.doris.common.MetaNotFoundException;
|
||||
import org.apache.doris.common.UserException;
|
||||
import org.apache.doris.common.util.Util;
|
||||
import org.apache.doris.datasource.FileQueryScanNode;
|
||||
import org.apache.doris.datasource.FileSplit;
|
||||
import org.apache.doris.planner.PlanNodeId;
|
||||
import org.apache.doris.spi.Split;
|
||||
import org.apache.doris.statistics.StatisticalType;
|
||||
@ -82,7 +84,7 @@ public class TVFScanNode extends FileQueryScanNode {
|
||||
}
|
||||
|
||||
@Override
|
||||
public TFileAttributes getFileAttributes() throws UserException {
|
||||
public TFileAttributes getFileAttributes() {
|
||||
return tableValuedFunction.getFileAttributes();
|
||||
}
|
||||
|
||||
@ -22,13 +22,13 @@ import org.apache.doris.catalog.Env;
|
||||
import org.apache.doris.catalog.MTMV;
|
||||
import org.apache.doris.catalog.ScalarType;
|
||||
import org.apache.doris.catalog.TableIf;
|
||||
import org.apache.doris.catalog.external.HMSExternalTable;
|
||||
import org.apache.doris.common.AnalysisException;
|
||||
import org.apache.doris.common.DdlException;
|
||||
import org.apache.doris.common.FeConstants;
|
||||
import org.apache.doris.common.UserException;
|
||||
import org.apache.doris.common.util.DebugUtil;
|
||||
import org.apache.doris.common.util.TimeUtils;
|
||||
import org.apache.doris.datasource.hive.HMSExternalTable;
|
||||
import org.apache.doris.job.exception.JobException;
|
||||
import org.apache.doris.job.task.AbstractTask;
|
||||
import org.apache.doris.mtmv.BaseTableInfo;
|
||||
|
||||
@ -45,14 +45,22 @@ import org.apache.doris.catalog.OdbcTable;
|
||||
import org.apache.doris.catalog.OlapTable;
|
||||
import org.apache.doris.catalog.TableIf;
|
||||
import org.apache.doris.catalog.Type;
|
||||
import org.apache.doris.catalog.external.ExternalTable;
|
||||
import org.apache.doris.catalog.external.HMSExternalTable;
|
||||
import org.apache.doris.catalog.external.IcebergExternalTable;
|
||||
import org.apache.doris.catalog.external.JdbcExternalTable;
|
||||
import org.apache.doris.catalog.external.MaxComputeExternalTable;
|
||||
import org.apache.doris.catalog.external.PaimonExternalTable;
|
||||
import org.apache.doris.common.UserException;
|
||||
import org.apache.doris.common.util.Util;
|
||||
import org.apache.doris.datasource.ExternalTable;
|
||||
import org.apache.doris.datasource.es.source.EsScanNode;
|
||||
import org.apache.doris.datasource.hive.HMSExternalTable;
|
||||
import org.apache.doris.datasource.hive.source.HiveScanNode;
|
||||
import org.apache.doris.datasource.hudi.source.HudiScanNode;
|
||||
import org.apache.doris.datasource.iceberg.IcebergExternalTable;
|
||||
import org.apache.doris.datasource.iceberg.source.IcebergScanNode;
|
||||
import org.apache.doris.datasource.jdbc.JdbcExternalTable;
|
||||
import org.apache.doris.datasource.jdbc.source.JdbcScanNode;
|
||||
import org.apache.doris.datasource.maxcompute.MaxComputeExternalTable;
|
||||
import org.apache.doris.datasource.maxcompute.source.MaxComputeScanNode;
|
||||
import org.apache.doris.datasource.odbc.source.OdbcScanNode;
|
||||
import org.apache.doris.datasource.paimon.PaimonExternalTable;
|
||||
import org.apache.doris.datasource.paimon.source.PaimonScanNode;
|
||||
import org.apache.doris.nereids.exceptions.AnalysisException;
|
||||
import org.apache.doris.nereids.properties.DistributionSpec;
|
||||
import org.apache.doris.nereids.properties.DistributionSpecAny;
|
||||
@ -148,7 +156,6 @@ import org.apache.doris.planner.CTEScanNode;
|
||||
import org.apache.doris.planner.DataPartition;
|
||||
import org.apache.doris.planner.DataStreamSink;
|
||||
import org.apache.doris.planner.EmptySetNode;
|
||||
import org.apache.doris.planner.EsScanNode;
|
||||
import org.apache.doris.planner.ExceptNode;
|
||||
import org.apache.doris.planner.ExchangeNode;
|
||||
import org.apache.doris.planner.HashJoinNode;
|
||||
@ -173,13 +180,6 @@ import org.apache.doris.planner.SetOperationNode;
|
||||
import org.apache.doris.planner.SortNode;
|
||||
import org.apache.doris.planner.TableFunctionNode;
|
||||
import org.apache.doris.planner.UnionNode;
|
||||
import org.apache.doris.planner.external.HiveScanNode;
|
||||
import org.apache.doris.planner.external.MaxComputeScanNode;
|
||||
import org.apache.doris.planner.external.hudi.HudiScanNode;
|
||||
import org.apache.doris.planner.external.iceberg.IcebergScanNode;
|
||||
import org.apache.doris.planner.external.jdbc.JdbcScanNode;
|
||||
import org.apache.doris.planner.external.odbc.OdbcScanNode;
|
||||
import org.apache.doris.planner.external.paimon.PaimonScanNode;
|
||||
import org.apache.doris.statistics.StatisticConstants;
|
||||
import org.apache.doris.tablefunction.TableValuedFunctionIf;
|
||||
import org.apache.doris.thrift.TFetchOption;
|
||||
|
||||
@ -23,12 +23,12 @@ import org.apache.doris.catalog.OlapTable;
|
||||
import org.apache.doris.catalog.Partition;
|
||||
import org.apache.doris.catalog.TableIf;
|
||||
import org.apache.doris.catalog.View;
|
||||
import org.apache.doris.catalog.external.EsExternalTable;
|
||||
import org.apache.doris.catalog.external.ExternalTable;
|
||||
import org.apache.doris.catalog.external.HMSExternalTable;
|
||||
import org.apache.doris.common.Config;
|
||||
import org.apache.doris.common.Pair;
|
||||
import org.apache.doris.common.util.Util;
|
||||
import org.apache.doris.datasource.ExternalTable;
|
||||
import org.apache.doris.datasource.es.EsExternalTable;
|
||||
import org.apache.doris.datasource.hive.HMSExternalTable;
|
||||
import org.apache.doris.nereids.CTEContext;
|
||||
import org.apache.doris.nereids.CascadesContext;
|
||||
import org.apache.doris.nereids.analyzer.Unbound;
|
||||
|
||||
@ -21,7 +21,6 @@ import org.apache.doris.nereids.exceptions.AnalysisException;
|
||||
import org.apache.doris.nereids.rules.Rule;
|
||||
import org.apache.doris.nereids.rules.RuleType;
|
||||
import org.apache.doris.nereids.rules.rewrite.NormalizeToSlot;
|
||||
import org.apache.doris.nereids.rules.rewrite.NormalizeToSlot.NormalizeToSlotContext;
|
||||
import org.apache.doris.nereids.rules.rewrite.RewriteRuleFactory;
|
||||
import org.apache.doris.nereids.trees.expressions.Alias;
|
||||
import org.apache.doris.nereids.trees.expressions.Expression;
|
||||
|
||||
@ -19,10 +19,10 @@ package org.apache.doris.nereids.rules.rewrite;
|
||||
|
||||
import org.apache.doris.catalog.Env;
|
||||
import org.apache.doris.catalog.PartitionItem;
|
||||
import org.apache.doris.catalog.external.ExternalTable;
|
||||
import org.apache.doris.catalog.external.HMSExternalTable;
|
||||
import org.apache.doris.catalog.external.HMSExternalTable.DLAType;
|
||||
import org.apache.doris.datasource.HMSExternalCatalog;
|
||||
import org.apache.doris.datasource.ExternalTable;
|
||||
import org.apache.doris.datasource.hive.HMSExternalCatalog;
|
||||
import org.apache.doris.datasource.hive.HMSExternalTable;
|
||||
import org.apache.doris.datasource.hive.HMSExternalTable.DLAType;
|
||||
import org.apache.doris.datasource.hive.HiveMetaStoreCache;
|
||||
import org.apache.doris.nereids.CascadesContext;
|
||||
import org.apache.doris.nereids.rules.Rule;
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user