You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by mo...@apache.org on 2024/09/02 06:36:33 UTC
(doris) branch master updated: [opt](Nereids) add job, analyze, load and cancel statements syntax (#40203)
This is an automated email from the ASF dual-hosted git repository.
morrysnow pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/master by this push:
new 4c16768f7c5 [opt](Nereids) add job, analyze, load and cancel statements syntax (#40203)
4c16768f7c5 is described below
commit 4c16768f7c5ed63f6b573c88264ad1a3aca01149
Author: morrySnow <10...@users.noreply.github.com>
AuthorDate: Mon Sep 2 14:36:27 2024 +0800
[opt](Nereids) add job, analyze, load and cancel statements syntax (#40203)
---
.../antlr4/org/apache/doris/nereids/DorisParser.g4 | 171 ++++++++++++++++++---
.../apache/doris/analysis/AlterJobStatusStmt.java | 2 +-
.../org/apache/doris/analysis/AnalyzeDBStmt.java | 2 +-
.../org/apache/doris/analysis/AnalyzeTblStmt.java | 2 +-
.../doris/analysis/CancelAlterSystemStmt.java | 2 +-
.../doris/analysis/CancelAlterTableStmt.java | 2 +-
.../apache/doris/analysis/CancelBackupStmt.java | 2 +-
.../doris/analysis/CancelCloudWarmUpStmt.java | 2 +-
.../apache/doris/analysis/CancelExportStmt.java | 2 +-
.../apache/doris/analysis/CancelJobTaskStmt.java | 2 +-
.../org/apache/doris/analysis/CancelLoadStmt.java | 2 +-
.../org/apache/doris/analysis/CleanLabelStmt.java | 2 +-
.../apache/doris/analysis/CleanProfileStmt.java | 2 +-
.../apache/doris/analysis/CleanQueryStatsStmt.java | 2 +-
.../org/apache/doris/analysis/CreateJobStmt.java | 2 +-
.../doris/analysis/CreateRoutineLoadStmt.java | 2 +-
.../apache/doris/analysis/ImportColumnsStmt.java | 2 +-
.../apache/doris/analysis/ImportDeleteOnStmt.java | 2 +-
.../apache/doris/analysis/ImportSequenceStmt.java | 2 +-
.../org/apache/doris/analysis/ImportWhereStmt.java | 2 +-
.../apache/doris/analysis/KillAnalysisJobStmt.java | 2 +-
.../java/org/apache/doris/analysis/LoadStmt.java | 2 +-
.../doris/analysis/PauseRoutineLoadStmt.java | 2 +-
.../apache/doris/analysis/PauseSyncJobStmt.java | 2 +-
.../apache/doris/analysis/RefreshCatalogStmt.java | 2 +-
.../org/apache/doris/analysis/RefreshDbStmt.java | 2 +-
.../org/apache/doris/analysis/RefreshLdapStmt.java | 2 +-
.../apache/doris/analysis/RefreshTableStmt.java | 2 +-
.../doris/analysis/ResumeRoutineLoadStmt.java | 2 +-
.../apache/doris/analysis/ResumeSyncJobStmt.java | 2 +-
.../apache/doris/analysis/ShowCreateLoadStmt.java | 2 +-
.../doris/analysis/ShowCreateRoutineLoadStmt.java | 2 +-
.../apache/doris/analysis/ShowRoutineLoadStmt.java | 2 +-
.../doris/analysis/ShowRoutineLoadTaskStmt.java | 2 +-
.../apache/doris/analysis/StopRoutineLoadStmt.java | 2 +-
.../org/apache/doris/analysis/StopSyncJobStmt.java | 2 +-
.../java/org/apache/doris/analysis/SyncStmt.java | 2 +-
.../org/apache/doris/analysis/UnifiedLoadStmt.java | 2 +-
.../doris/nereids/parser/LogicalPlanBuilder.java | 5 +-
.../nereids/trees/plans/commands/LoadCommand.java | 4 +-
40 files changed, 194 insertions(+), 60 deletions(-)
diff --git a/fe/fe-core/src/main/antlr4/org/apache/doris/nereids/DorisParser.g4 b/fe/fe-core/src/main/antlr4/org/apache/doris/nereids/DorisParser.g4
index 32f5293c00e..b46b55a96e0 100644
--- a/fe/fe-core/src/main/antlr4/org/apache/doris/nereids/DorisParser.g4
+++ b/fe/fe-core/src/main/antlr4/org/apache/doris/nereids/DorisParser.g4
@@ -70,6 +70,11 @@ unsupportedStatement
| unsupportedAdminStatement
| unsupportedTransactionStatement
| unsupportedRecoverStatement
+ | unsupportedCancelStatement
+ | unsupportedJobStatement
+ | unsupportedCleanStatement
+ | unsupportedRefreshStatement
+ | unsupportedLoadStatement
| unsupportedOtherStatement
;
@@ -121,14 +126,11 @@ supportedDmlStatement
partitionSpec? tableAlias
(USING relations)?
whereClause? #delete
- | LOAD LABEL lableName=identifier
+ | LOAD LABEL lableName=multipartIdentifier
LEFT_PAREN dataDescs+=dataDesc (COMMA dataDescs+=dataDesc)* RIGHT_PAREN
(withRemoteStorageSystem)?
- (PROPERTIES LEFT_PAREN properties=propertyItemList RIGHT_PAREN)?
+ propertyClause?
(commentSpec)? #load
- | LOAD mysqlDataDesc
- (PROPERTIES LEFT_PAREN properties=propertyItemList RIGHT_PAREN)?
- (commentSpec)? #mysqlLoad
| EXPORT TABLE tableName=multipartIdentifier
(PARTITION partition=identifierList)?
(whereClause)?
@@ -200,6 +202,130 @@ lockTable
(READ (LOCAL)? | (LOW_PRIORITY)? WRITE)
;
+unsupportedLoadStatement
+ : LOAD mysqlDataDesc
+ (PROPERTIES LEFT_PAREN properties=propertyItemList RIGHT_PAREN)?
+ (commentSpec)? #mysqlLoad
+ | CREATE SYNC label=multipartIdentifier
+ LEFT_PAREN channelDescriptions RIGHT_PAREN
+ FROM BINLOG LEFT_PAREN propertyItemList RIGHT_PAREN
+ properties=propertyClause? #createDataSyncJob
+ | STOP SYNC JOB name=multipartIdentifier #stopDataSyncJob
+ | RESUME SYNC JOB name=multipartIdentifier #resumeDataSyncJob
+ | PAUSE SYNC JOB name=multipartIdentifier #pauseDataSyncJob
+ | CREATE ROUTINE LOAD label=multipartIdentifier (ON table=identifier)?
+ (WITH (APPEND | DELETE | MERGE))?
+ (loadProperty (COMMA loadProperty)*)? propertyClause? FROM type=identifier
+ LEFT_PAREN customProperties=propertyItemList RIGHT_PAREN
+ commentSpec? #createRoutineLoadJob
+ | PAUSE ROUTINE LOAD FOR label=multipartIdentifier #pauseRoutineLoad
+ | PAUSE ALL ROUTINE LOAD #pauseAllRoutineLoad
+ | RESUME ROUTINE LOAD FOR label=multipartIdentifier #resumeRoutineLoad
+ | RESUME ALL ROUTINE LOAD #resumeAllRoutineLoad
+ | STOP ROUTINE LOAD FOR label=multipartIdentifier #stopRoutineLoad
+ | SHOW ALL? ROUTINE LOAD ((FOR label=multipartIdentifier) | wildWhere?) #showRoutineLoad
+ | SHOW ROUTINE LOAD TASK ((FROM | IN) database=identifier)? wildWhere? #showRoutineLoadTask
+ | SHOW ALL? CREATE ROUTINE LOAD FOR label=multipartIdentifier #showCreateRoutineLoad
+ | SHOW CREATE LOAD FOR label=multipartIdentifier #showCreateLoad
+ | SYNC #sync
+ | importSequenceStatement #importSequenceStatementAlias
+ | importPrecedingFilterStatement #importPrecedingFilterStatementAlias
+ | importWhereStatement #importWhereStatementAlias
+ | importDeleteOnStatement #importDeleteOnStatementAlias
+ | importColumnsStatement #importColumnsStatementAlias
+ ;
+
+loadProperty
+ : COLUMNS TERMINATED BY STRING_LITERAL #separator
+ | importColumnsStatement #importColumns
+ | importPrecedingFilterStatement #importPrecedingFilter
+ | importWhereStatement #importWhere
+ | importDeleteOnStatement #importDeleteOn
+ | importSequenceStatement #importSequence
+ | partitionSpec #importPartitions
+ ;
+
+importSequenceStatement
+ : ORDER BY identifier
+ ;
+
+importDeleteOnStatement
+ : DELETE ON booleanExpression
+ ;
+
+importWhereStatement
+ : WHERE booleanExpression
+ ;
+
+importPrecedingFilterStatement
+ : PRECEDING FILTER booleanExpression
+ ;
+
+importColumnsStatement
+ : COLUMNS LEFT_PAREN importColumnDesc (COMMA importColumnDesc)* RIGHT_PAREN
+ ;
+
+importColumnDesc
+ : name=identifier (EQ booleanExpression)?
+ | LEFT_PAREN name=identifier (EQ booleanExpression)? RIGHT_PAREN
+ ;
+
+channelDescriptions
+ : channelDescription (COMMA channelDescription)*
+ ;
+
+channelDescription
+ : FROM source=multipartIdentifier INTO destination=multipartIdentifier
+ partitionSpec? columnList=identifierList?
+ ;
+
+unsupportedRefreshStatement
+ : REFRESH TABLE name=multipartIdentifier #refreshTable
+ | REFRESH DATABASE name=multipartIdentifier propertyClause? #refreshDatabase
+ | REFRESH CATALOG name=identifier propertyClause? #refreshCatalog
+ | REFRESH LDAP (ALL | (FOR user=identifierOrText)) #refreshLdap
+ ;
+
+unsupportedCleanStatement
+ : CLEAN LABEL label=identifier? (FROM | IN) database=identifier #cleanLabel
+ | CLEAN ALL PROFILE #cleanAllProfile
+ | CLEAN QUERY STATS ((FOR database=identifier)
+ | ((FROM | IN) table=multipartIdentifier)) #cleanQueryStats
+ | CLEAN ALL QUERY STATS #cleanAllQueryStats
+ ;
+
+unsupportedJobStatement
+ : CREATE JOB label=multipartIdentifier ON SCHEDULE
+ (
+ (EVERY timeInterval=INTEGER_VALUE timeUnit=identifier
+ (STARTS (startTime=STRING_LITERAL | CURRENT_TIMESTAMP))?
+ (ENDS endsTime=STRING_LITERAL)?)
+ |
+ (AT (atTime=STRING_LITERAL | CURRENT_TIMESTAMP)))
+ commentSpec?
+ DO statement #createJob
+ | PAUSE JOB wildWhere? #pauseJob
+ | DROP JOB (IF EXISTS)? wildWhere? #dropJob
+ | RESUME JOB wildWhere? #resumeJob
+ | CANCEL TASK wildWhere? #cancelJobTask
+ ;
+
+unsupportedCancelStatement
+ : CANCEL LOAD ((FROM | IN) database=identifier)? wildWhere? #cancelLoad
+ | CANCEL EXPORT ((FROM | IN) database=identifier)? wildWhere? #cancelExport
+ | CANCEL ALTER TABLE (ROLLUP | (MATERIALIZED VIEW) | COLUMN)
+ FROM tableName=multipartIdentifier (LEFT_PAREN jobIds+=INTEGER_VALUE
+ (COMMA jobIds+=INTEGER_VALUE)* RIGHT_PAREN)? #cancelAlterTable
+ | CANCEL BUILD INDEX ON tableName=multipartIdentifier
+ (LEFT_PAREN jobIds+=INTEGER_VALUE
+ (COMMA jobIds+=INTEGER_VALUE)* RIGHT_PAREN)? #cancelBuildIndex
+ | CANCEL DECOMMISSION BACKEND hostPorts+=STRING_LITERAL
+ (COMMA hostPorts+=STRING_LITERAL)* #cancelDecommisionBackend
+ | CANCEL BACKUP ((FROM | IN) database=identifier)? #cancelBackup
+ | CANCEL RESTORE ((FROM | IN) database=identifier)? #cancelRestore
+ | CANCEL WARM UP JOB wildWhere? #cancelWarmUp
+ ;
+
unsupportedRecoverStatement
: RECOVER DATABASE name=identifier id=INTEGER_VALUE? (AS alias=identifier)? #recoverDatabase
| RECOVER TABLE name=multipartIdentifier
@@ -421,7 +547,11 @@ unsupportedDropStatement
;
unsupportedStatsStatement
- : ALTER TABLE name=multipartIdentifier SET STATS
+ : ANALYZE TABLE name=multipartIdentifier partitionSpec?
+ columns=identifierList? (WITH analyzeProperties)* propertyClause? #analyzeTable
+ | ANALYZE DATABASE name=multipartIdentifier
+ (WITH analyzeProperties)* propertyClause? #analyzeDatabase
+ | ALTER TABLE name=multipartIdentifier SET STATS
LEFT_PAREN propertyItemList RIGHT_PAREN partitionSpec? #alterTableStats
| ALTER TABLE name=multipartIdentifier (INDEX indexName=identifier)?
MODIFY COLUMN columnName=identifier
@@ -431,6 +561,19 @@ unsupportedStatsStatement
| DROP CACHED STATS tableName=multipartIdentifier #dropCachedStats
| DROP EXPIRED STATS #dropExpiredStats
| DROP ANALYZE JOB INTEGER_VALUE #dropAanalyzeJob
+ | KILL ANALYZE jobId=INTEGER_VALUE #killAnalyzeJob
+ ;
+
+analyzeProperties
+ : SYNC
+ | INCREMENTAL
+ | FULL
+ | SQL
+ | HISTOGRAM
+ | (SAMPLE ((ROWS rows=INTEGER_VALUE) | (PERCENT percent=INTEGER_VALUE)) )
+ | (BUCKETS bucket=INTEGER_VALUE)
+ | (PERIOD periodInSecond=INTEGER_VALUE)
+ | (CRON crontabExpr=STRING_LITERAL)
;
unsupportedCreateStatement
@@ -470,10 +613,6 @@ unsupportedCreateStatement
(ACTIONS LEFT_PAREN workloadPolicyActions RIGHT_PAREN)?
properties=propertyClause? #createWorkloadPolicy
| CREATE ENCRYPTKEY (IF NOT EXISTS)? multipartIdentifier AS STRING_LITERAL #createEncryptkey
- | CREATE SYNC dbName=identifier DOT jobName=identifierOrText
- LEFT_PAREN channelDescriptions RIGHT_PAREN
- FROM BINLOG LEFT_PAREN propertyItemList RIGHT_PAREN
- properties=propertyClause? #createDataSyncJob
| CREATE SQL_BLOCK_RULE (IF NOT EXISTS)?
name=identifier properties=propertyClause? #createSqlBlockRule
| CREATE STORAGE POLICY (IF NOT EXISTS)?
@@ -483,15 +622,6 @@ unsupportedCreateStatement
| CREATE STAGE (IF NOT EXISTS)? name=identifier properties=propertyClause? #createStage
;
-channelDescriptions
- : channelDescription (COMMA channelDescription)*
- ;
-
-channelDescription
- : FROM source=multipartIdentifier INTO destination=multipartIdentifier
- partitionSpec? columnList=identifierList?
- ;
-
workloadPolicyActions
: workloadPolicyAction (COMMA workloadPolicyAction)*
;
@@ -646,6 +776,7 @@ dataDesc
(COLUMNS TERMINATED BY comma=STRING_LITERAL)?
(LINES TERMINATED BY separator=STRING_LITERAL)?
(FORMAT AS format=identifierOrText)?
+ (COMPRESS_TYPE AS compressType=identifierOrText)?
(columns=identifierList)?
(columnsFromPath=colFromPath)?
(columnMapping=colMappingList)?
@@ -791,7 +922,7 @@ resourceDesc
;
mysqlDataDesc
- : DATA (LOCAL booleanValue)?
+ : DATA LOCAL?
INFILE filePath=STRING_LITERAL
INTO TABLE tableName=multipartIdentifier
(PARTITION partition=identifierList)?
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/AlterJobStatusStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/AlterJobStatusStmt.java
index 3dd2a9f27fa..a73d19b9ceb 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/AlterJobStatusStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/AlterJobStatusStmt.java
@@ -24,7 +24,7 @@ import org.apache.doris.job.common.JobStatus;
import com.google.common.base.Strings;
import lombok.Getter;
-public class AlterJobStatusStmt extends DdlStmt {
+public class AlterJobStatusStmt extends DdlStmt implements NotFallbackInParser {
private Expr expr;
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/AnalyzeDBStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/AnalyzeDBStmt.java
index ac880a39d02..17c65ea57ef 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/AnalyzeDBStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/AnalyzeDBStmt.java
@@ -24,7 +24,7 @@ import org.apache.doris.common.AnalysisException;
import org.apache.doris.common.UserException;
import org.apache.doris.datasource.CatalogIf;
-public class AnalyzeDBStmt extends AnalyzeStmt {
+public class AnalyzeDBStmt extends AnalyzeStmt implements NotFallbackInParser {
private final String ctlName;
private final String dbName;
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/AnalyzeTblStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/AnalyzeTblStmt.java
index 270c41d71bf..db98f6af706 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/AnalyzeTblStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/AnalyzeTblStmt.java
@@ -78,7 +78,7 @@ import java.util.stream.Collectors;
* - 'sample.rows' = '1000'
* - 'num.buckets' = 10
*/
-public class AnalyzeTblStmt extends AnalyzeStmt {
+public class AnalyzeTblStmt extends AnalyzeStmt implements NotFallbackInParser {
// The properties passed in by the user through "with" or "properties('K', 'V')"
private final TableName tableName;
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/CancelAlterSystemStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/CancelAlterSystemStmt.java
index 9cfde8da4b3..1895549140c 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/CancelAlterSystemStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/CancelAlterSystemStmt.java
@@ -32,7 +32,7 @@ import lombok.Getter;
import java.util.List;
-public class CancelAlterSystemStmt extends CancelStmt {
+public class CancelAlterSystemStmt extends CancelStmt implements NotFallbackInParser {
protected List<String> params;
@Getter
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/CancelAlterTableStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/CancelAlterTableStmt.java
index 7dac7c28ff1..10f1d121d79 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/CancelAlterTableStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/CancelAlterTableStmt.java
@@ -34,7 +34,7 @@ import java.util.stream.Collectors;
/*
* CANCEL ALTER COLUMN|ROLLUP FROM db_name.table_name
*/
-public class CancelAlterTableStmt extends CancelStmt {
+public class CancelAlterTableStmt extends CancelStmt implements NotFallbackInParser {
private AlterType alterType;
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/CancelBackupStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/CancelBackupStmt.java
index 54e9ba8b8ce..06c1d09972c 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/CancelBackupStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/CancelBackupStmt.java
@@ -28,7 +28,7 @@ import org.apache.doris.qe.ConnectContext;
import com.google.common.base.Strings;
-public class CancelBackupStmt extends CancelStmt {
+public class CancelBackupStmt extends CancelStmt implements NotFallbackInParser {
private String dbName;
private boolean isRestore;
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/CancelCloudWarmUpStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/CancelCloudWarmUpStmt.java
index c46a1c18e78..51a2b729be0 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/CancelCloudWarmUpStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/CancelCloudWarmUpStmt.java
@@ -21,7 +21,7 @@ import org.apache.doris.analysis.BinaryPredicate.Operator;
import org.apache.doris.common.AnalysisException;
import org.apache.doris.common.Config;
-public class CancelCloudWarmUpStmt extends CancelStmt {
+public class CancelCloudWarmUpStmt extends CancelStmt implements NotFallbackInParser {
private Expr whereClause;
private long jobId;
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/CancelExportStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/CancelExportStmt.java
index 039443becd6..63448cf35a0 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/CancelExportStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/CancelExportStmt.java
@@ -33,7 +33,7 @@ import lombok.Getter;
* CANCEL EXPORT [FROM db]
* WHERE [LABEL = "export_label" | LABEL like "label_pattern" | STATE = "PENDING/IN_QUEUE/EXPORTING"]
**/
-public class CancelExportStmt extends DdlStmt {
+public class CancelExportStmt extends DdlStmt implements NotFallbackInParser {
private static final ImmutableSet<String> SUPPORT_COLUMNS = new ImmutableSet.Builder<String>()
.add("label")
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/CancelJobTaskStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/CancelJobTaskStmt.java
index 841e43a8257..80bcc9a3fe4 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/CancelJobTaskStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/CancelJobTaskStmt.java
@@ -25,7 +25,7 @@ import org.apache.doris.common.UserException;
import lombok.Getter;
-public class CancelJobTaskStmt extends DdlStmt {
+public class CancelJobTaskStmt extends DdlStmt implements NotFallbackInParser {
@Getter
private String jobName;
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/CancelLoadStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/CancelLoadStmt.java
index dad9a0ccd2d..1371e308675 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/CancelLoadStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/CancelLoadStmt.java
@@ -34,7 +34,7 @@ import java.util.Set;
* syntax:
* CANCEL LOAD [FROM db] WHERE load_label (= "xxx" | LIKE "xxx")
**/
-public class CancelLoadStmt extends DdlStmt {
+public class CancelLoadStmt extends DdlStmt implements NotFallbackInParser {
private static final Set<String> SUPPORT_COLUMNS = Sets.newTreeSet(String.CASE_INSENSITIVE_ORDER);
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/CleanLabelStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/CleanLabelStmt.java
index 84de16c4e6a..8864a760914 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/CleanLabelStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/CleanLabelStmt.java
@@ -31,7 +31,7 @@ import com.google.common.base.Strings;
* CLEAN LABEL FROM db;
* CLEAN LABEL my_label FROM db;
*/
-public class CleanLabelStmt extends DdlStmt {
+public class CleanLabelStmt extends DdlStmt implements NotFallbackInParser {
private String db;
private String label;
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/CleanProfileStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/CleanProfileStmt.java
index f9552965379..e51fa8b82c4 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/CleanProfileStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/CleanProfileStmt.java
@@ -27,7 +27,7 @@ import org.apache.doris.qe.ConnectContext;
/**
* CLEAN ALL PROFILE;
*/
-public class CleanProfileStmt extends DdlStmt {
+public class CleanProfileStmt extends DdlStmt implements NotFallbackInParser {
public CleanProfileStmt() {
}
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/CleanQueryStatsStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/CleanQueryStatsStmt.java
index c0964f796e3..6bf384b7c73 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/CleanQueryStatsStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/CleanQueryStatsStmt.java
@@ -33,7 +33,7 @@ import org.apache.commons.lang3.StringUtils;
* CLEAN DATABASE QUERY STATS FROM db;
* CLEAN TABLE QUERY STATS FROM db.table;
*/
-public class CleanQueryStatsStmt extends DdlStmt {
+public class CleanQueryStatsStmt extends DdlStmt implements NotFallbackInParser {
private String dbName;
private TableName tableName;
private Scope scope;
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/CreateJobStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/CreateJobStmt.java
index 8a8db0a3d1e..b9d42b249b2 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/CreateJobStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/CreateJobStmt.java
@@ -61,7 +61,7 @@ import java.util.HashSet;
* WEEK | SECOND }
*/
@Slf4j
-public class CreateJobStmt extends DdlStmt {
+public class CreateJobStmt extends DdlStmt implements NotFallbackInParser {
@Getter
private StatementBase doStmt;
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/CreateRoutineLoadStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/CreateRoutineLoadStmt.java
index 1648d943ae4..a16259dcdb9 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/CreateRoutineLoadStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/CreateRoutineLoadStmt.java
@@ -87,7 +87,7 @@ import java.util.function.Predicate;
type of routine load:
KAFKA
*/
-public class CreateRoutineLoadStmt extends DdlStmt {
+public class CreateRoutineLoadStmt extends DdlStmt implements NotFallbackInParser {
private static final Logger LOG = LogManager.getLogger(CreateRoutineLoadStmt.class);
// routine load properties
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/ImportColumnsStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/ImportColumnsStmt.java
index c8f6d6eef73..a67931e9491 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/ImportColumnsStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/ImportColumnsStmt.java
@@ -19,7 +19,7 @@ package org.apache.doris.analysis;
import java.util.List;
-public class ImportColumnsStmt extends StatementBase {
+public class ImportColumnsStmt extends StatementBase implements NotFallbackInParser {
private List<ImportColumnDesc> columns;
public ImportColumnsStmt(List<ImportColumnDesc> columns) {
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/ImportDeleteOnStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/ImportDeleteOnStmt.java
index 22db97455ab..a1424056375 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/ImportDeleteOnStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/ImportDeleteOnStmt.java
@@ -17,7 +17,7 @@
package org.apache.doris.analysis;
-public class ImportDeleteOnStmt extends StatementBase {
+public class ImportDeleteOnStmt extends StatementBase implements NotFallbackInParser {
private Expr expr;
public ImportDeleteOnStmt(Expr expr) {
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/ImportSequenceStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/ImportSequenceStmt.java
index 01addb9af57..52063c5a1fd 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/ImportSequenceStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/ImportSequenceStmt.java
@@ -17,7 +17,7 @@
package org.apache.doris.analysis;
-public class ImportSequenceStmt extends StatementBase {
+public class ImportSequenceStmt extends StatementBase implements NotFallbackInParser {
private String sequenceColName;
public ImportSequenceStmt(String sequenceColName) {
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/ImportWhereStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/ImportWhereStmt.java
index c4cfaa38e30..1e5e1da1f8c 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/ImportWhereStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/ImportWhereStmt.java
@@ -17,7 +17,7 @@
package org.apache.doris.analysis;
-public class ImportWhereStmt extends StatementBase {
+public class ImportWhereStmt extends StatementBase implements NotFallbackInParser {
private Expr expr;
// Only used in load processs to define a "preceding filter" expr
private boolean isPreceding;
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/KillAnalysisJobStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/KillAnalysisJobStmt.java
index 996afb8c8a6..218b77c4fdd 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/KillAnalysisJobStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/KillAnalysisJobStmt.java
@@ -17,7 +17,7 @@
package org.apache.doris.analysis;
-public class KillAnalysisJobStmt extends DdlStmt {
+public class KillAnalysisJobStmt extends DdlStmt implements NotFallbackInParser {
public final long jobId;
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/LoadStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/LoadStmt.java
index cec5534562f..b447bf92690 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/LoadStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/LoadStmt.java
@@ -85,7 +85,7 @@ import java.util.Map.Entry;
// resource_desc:
// WITH RESOURCE name
// (key3=value3, ...)
-public class LoadStmt extends DdlStmt {
+public class LoadStmt extends DdlStmt implements NotFallbackInParser {
private static final Logger LOG = LogManager.getLogger(LoadStmt.class);
public static final String TIMEOUT_PROPERTY = "timeout";
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/PauseRoutineLoadStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/PauseRoutineLoadStmt.java
index 745b6ecf385..cda61b903e8 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/PauseRoutineLoadStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/PauseRoutineLoadStmt.java
@@ -29,7 +29,7 @@ import com.google.common.base.Strings;
syntax:
PAUSE ROUTINE LOAD [database.]name
*/
-public class PauseRoutineLoadStmt extends DdlStmt {
+public class PauseRoutineLoadStmt extends DdlStmt implements NotFallbackInParser {
private final LabelName labelName;
private String db;
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/PauseSyncJobStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/PauseSyncJobStmt.java
index 14d38a882c3..c66b31be762 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/PauseSyncJobStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/PauseSyncJobStmt.java
@@ -24,7 +24,7 @@ import org.apache.doris.common.UserException;
//
// syntax:
// PAUSE SYNC JOB [db.]jobName
-public class PauseSyncJobStmt extends DdlStmt {
+public class PauseSyncJobStmt extends DdlStmt implements NotFallbackInParser {
private JobName jobName;
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/RefreshCatalogStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/RefreshCatalogStmt.java
index 7f72a25b7b7..3cada53b4cf 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/RefreshCatalogStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/RefreshCatalogStmt.java
@@ -33,7 +33,7 @@ import java.util.Map;
* RefreshCatalogStmt
* Manually refresh the catalog metadata.
*/
-public class RefreshCatalogStmt extends DdlStmt {
+public class RefreshCatalogStmt extends DdlStmt implements NotFallbackInParser {
private static final String INVALID_CACHE = "invalid_cache";
private final String catalogName;
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/RefreshDbStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/RefreshDbStmt.java
index 69b312455a0..19f9d339cfb 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/RefreshDbStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/RefreshDbStmt.java
@@ -33,7 +33,7 @@ import org.apache.logging.log4j.Logger;
import java.util.Map;
-public class RefreshDbStmt extends DdlStmt {
+public class RefreshDbStmt extends DdlStmt implements NotFallbackInParser {
private static final Logger LOG = LogManager.getLogger(RefreshDbStmt.class);
private static final String INVALID_CACHE = "invalid_cache";
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/RefreshLdapStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/RefreshLdapStmt.java
index 81296a4961c..b325d8ae93b 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/RefreshLdapStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/RefreshLdapStmt.java
@@ -26,7 +26,7 @@ import org.apache.doris.qe.ConnectContext;
import com.google.common.base.Strings;
-public class RefreshLdapStmt extends DdlStmt {
+public class RefreshLdapStmt extends DdlStmt implements NotFallbackInParser {
private boolean isAll;
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/RefreshTableStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/RefreshTableStmt.java
index 7d872f70a94..f6ff53a4d12 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/RefreshTableStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/RefreshTableStmt.java
@@ -27,7 +27,7 @@ import org.apache.doris.qe.ConnectContext;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
-public class RefreshTableStmt extends DdlStmt {
+public class RefreshTableStmt extends DdlStmt implements NotFallbackInParser {
private static final Logger LOG = LogManager.getLogger(RefreshTableStmt.class);
private TableName tableName;
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/ResumeRoutineLoadStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/ResumeRoutineLoadStmt.java
index e21a6ca53c5..176c3345c9f 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/ResumeRoutineLoadStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/ResumeRoutineLoadStmt.java
@@ -29,7 +29,7 @@ import com.google.common.base.Strings;
syntax:
RESUME ROUTINE LOAD [database.]name
*/
-public class ResumeRoutineLoadStmt extends DdlStmt {
+public class ResumeRoutineLoadStmt extends DdlStmt implements NotFallbackInParser {
private final LabelName labelName;
private String db;
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/ResumeSyncJobStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/ResumeSyncJobStmt.java
index 2f401a09112..79aff303f67 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/ResumeSyncJobStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/ResumeSyncJobStmt.java
@@ -24,7 +24,7 @@ import org.apache.doris.common.UserException;
//
// syntax:
// RESUME SYNC JOB [db.]jobName
-public class ResumeSyncJobStmt extends DdlStmt {
+public class ResumeSyncJobStmt extends DdlStmt implements NotFallbackInParser {
private JobName jobName;
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/ShowCreateLoadStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/ShowCreateLoadStmt.java
index 346fb107c91..fabae023652 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/ShowCreateLoadStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/ShowCreateLoadStmt.java
@@ -28,7 +28,7 @@ import org.apache.doris.qe.ConnectContext;
import org.apache.doris.qe.ShowResultSetMetaData;
// SHOW CREATE LOAD statement.
-public class ShowCreateLoadStmt extends ShowStmt {
+public class ShowCreateLoadStmt extends ShowStmt implements NotFallbackInParser {
private static final ShowResultSetMetaData META_DATA =
ShowResultSetMetaData.builder()
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/ShowCreateRoutineLoadStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/ShowCreateRoutineLoadStmt.java
index 7450c08d161..6b93920ae7b 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/ShowCreateRoutineLoadStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/ShowCreateRoutineLoadStmt.java
@@ -23,7 +23,7 @@ import org.apache.doris.common.AnalysisException;
import org.apache.doris.qe.ShowResultSetMetaData;
// SHOW CREATE ROUTINE LOAD statement.
-public class ShowCreateRoutineLoadStmt extends ShowStmt {
+public class ShowCreateRoutineLoadStmt extends ShowStmt implements NotFallbackInParser {
private static final ShowResultSetMetaData META_DATA =
ShowResultSetMetaData.builder()
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/ShowRoutineLoadStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/ShowRoutineLoadStmt.java
index 05ce8be6ade..8220eab9458 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/ShowRoutineLoadStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/ShowRoutineLoadStmt.java
@@ -62,7 +62,7 @@ import java.util.List;
show routine load in all of database
please use show proc
*/
-public class ShowRoutineLoadStmt extends ShowStmt {
+public class ShowRoutineLoadStmt extends ShowStmt implements NotFallbackInParser {
private static final ImmutableList<String> TITLE_NAMES =
new ImmutableList.Builder<String>()
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/ShowRoutineLoadTaskStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/ShowRoutineLoadTaskStmt.java
index 570b82d3667..248c0c7a6cf 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/ShowRoutineLoadTaskStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/ShowRoutineLoadTaskStmt.java
@@ -35,7 +35,7 @@ import java.util.List;
where expr: JobName=xxx
*/
-public class ShowRoutineLoadTaskStmt extends ShowStmt {
+public class ShowRoutineLoadTaskStmt extends ShowStmt implements NotFallbackInParser {
private static final List<String> supportColumn = Arrays.asList("jobname");
private static final ImmutableList<String> TITLE_NAMES =
new ImmutableList.Builder<String>()
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/StopRoutineLoadStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/StopRoutineLoadStmt.java
index df18979cc7e..b0a340c625c 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/StopRoutineLoadStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/StopRoutineLoadStmt.java
@@ -26,7 +26,7 @@ import org.apache.doris.common.UserException;
syntax:
STOP ROUTINE LOAD [database.]name
*/
-public class StopRoutineLoadStmt extends DdlStmt {
+public class StopRoutineLoadStmt extends DdlStmt implements NotFallbackInParser {
private final LabelName labelName;
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/StopSyncJobStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/StopSyncJobStmt.java
index e58835a26a9..e83b1825852 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/StopSyncJobStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/StopSyncJobStmt.java
@@ -24,7 +24,7 @@ import org.apache.doris.common.UserException;
//
// syntax:
// STOP SYNC JOB [db.]jobName
-public class StopSyncJobStmt extends DdlStmt {
+public class StopSyncJobStmt extends DdlStmt implements NotFallbackInParser {
private JobName jobName;
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/SyncStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/SyncStmt.java
index e559b30f420..536d5e6ae66 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/SyncStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/SyncStmt.java
@@ -19,7 +19,7 @@ package org.apache.doris.analysis;
import org.apache.doris.common.UserException;
-public class SyncStmt extends DdlStmt {
+public class SyncStmt extends DdlStmt implements NotFallbackInParser {
@Override
public void analyze(Analyzer analyzer) throws UserException {
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/UnifiedLoadStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/UnifiedLoadStmt.java
index e8d4e513223..996a3334b4d 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/UnifiedLoadStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/UnifiedLoadStmt.java
@@ -28,7 +28,7 @@ import java.util.Map;
* Used for load refactor, as an adapter for original load stmt, will proxy to insert stmt or original load stmt, chosen
* by configuration
*/
-public class UnifiedLoadStmt extends DdlStmt {
+public class UnifiedLoadStmt extends DdlStmt implements NotFallbackInParser {
private final StatementBase proxyStmt;
diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/parser/LogicalPlanBuilder.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/parser/LogicalPlanBuilder.java
index c7d43a696fc..7369b714f74 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/nereids/parser/LogicalPlanBuilder.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/parser/LogicalPlanBuilder.java
@@ -1153,7 +1153,10 @@ public class LogicalPlanBuilder extends DorisParserBaseVisitor<Object> {
: Optional.of(ddc.sequenceColumn.identifier().getText()), dataProperties));
}
String labelName = ctx.lableName.getText();
- Map<String, String> properties = visitPropertyItemList(ctx.properties);
+ Map<String, String> properties = Collections.emptyMap();
+ if (ctx.propertyClause() != null) {
+ properties = visitPropertyItemList(ctx.propertyClause().propertyItemList());
+ }
String commentSpec = ctx.commentSpec() == null ? "''" : ctx.commentSpec().STRING_LITERAL().getText();
String comment =
LogicalPlanBuilderAssistant.escapeBackSlash(commentSpec.substring(1, commentSpec.length() - 1));
diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/LoadCommand.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/LoadCommand.java
index b439c977c94..aed3cb4c1f2 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/LoadCommand.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/LoadCommand.java
@@ -39,6 +39,7 @@ import org.apache.doris.nereids.analyzer.UnboundSlot;
import org.apache.doris.nereids.analyzer.UnboundStar;
import org.apache.doris.nereids.analyzer.UnboundTVFRelation;
import org.apache.doris.nereids.analyzer.UnboundTableSinkCreator;
+import org.apache.doris.nereids.exceptions.MustFallbackException;
import org.apache.doris.nereids.trees.expressions.ComparisonPredicate;
import org.apache.doris.nereids.trees.expressions.Expression;
import org.apache.doris.nereids.trees.expressions.NamedExpression;
@@ -126,8 +127,7 @@ public class LoadCommand extends Command implements ForwardWithSync {
@Override
public void run(ConnectContext ctx, StmtExecutor executor) throws Exception {
if (!Config.enable_nereids_load) {
- ctx.getSessionVariable().enableFallbackToOriginalPlannerOnce();
- throw new AnalysisException("Fallback to legacy planner temporary.");
+ throw new MustFallbackException("Fallback to legacy planner temporary.");
}
this.profile = new Profile(
ctx.getSessionVariable().enableProfile,
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org