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

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


The following commit(s) were added to refs/heads/master by this push:
     new a478065dc31 Support parsing Doris ADMIN CANCEL REBALANCE DISK 
statement, and add Doris sql-cases for YEARWEEK and RTRIM (#39587)
a478065dc31 is described below

commit a478065dc31d31f26bd84b15299e9598a90a4c5a
Author: Liang Zhang <[email protected]>
AuthorDate: Sun Aug 23 23:23:33 2026 +0800

    Support parsing Doris ADMIN CANCEL REBALANCE DISK statement, and add Doris 
sql-cases for YEARWEEK and RTRIM (#39587)
    
    Fixes #31507
---
 .../core/database/visitor/SQLVisitorRule.java      |  2 +
 .../src/main/antlr4/imports/doris/DALStatement.g4  |  4 ++
 .../sql/parser/autogen/DorisStatement.g4           |  1 +
 .../statement/type/DorisDALStatementVisitor.java   | 11 +++++
 .../DorisAdminCancelRebalanceDiskStatement.java    | 38 ++++++++++++++++
 .../dal/dialect/doris/DorisDALStatementAssert.java |  5 +++
 ...risAdminCancelRebalanceDiskStatementAssert.java | 52 ++++++++++++++++++++++
 .../cases/parser/jaxb/RootSQLParserTestCases.java  |  4 ++
 ...sAdminCancelRebalanceDiskStatementTestCase.java | 40 +++++++++++++++++
 .../case/dal/admin-cancel-rebalance-disk.xml       | 31 +++++++++++++
 .../supported/dal/admin-cancel-rebalance-disk.xml  | 24 ++++++++++
 .../sql/supported/dml/select-special-function.xml  |  4 +-
 12 files changed, 214 insertions(+), 2 deletions(-)

diff --git 
a/parser/sql/engine/core/src/main/java/org/apache/shardingsphere/sql/parser/engine/core/database/visitor/SQLVisitorRule.java
 
b/parser/sql/engine/core/src/main/java/org/apache/shardingsphere/sql/parser/engine/core/database/visitor/SQLVisitorRule.java
index fef82a7fab5..951858b65ac 100644
--- 
a/parser/sql/engine/core/src/main/java/org/apache/shardingsphere/sql/parser/engine/core/database/visitor/SQLVisitorRule.java
+++ 
b/parser/sql/engine/core/src/main/java/org/apache/shardingsphere/sql/parser/engine/core/database/visitor/SQLVisitorRule.java
@@ -609,6 +609,8 @@ public enum SQLVisitorRule {
     
     ADMIN_REBALANCE_DISK("AdminRebalanceDisk", SQLStatementType.DAL),
     
+    ADMIN_CANCEL_REBALANCE_DISK("AdminCancelRebalanceDisk", 
SQLStatementType.DAL),
+    
     ADMIN_REPAIR("AdminRepair", SQLStatementType.DAL),
     
     ADMIN_CANCEL_REPAIR("AdminCancelRepair", SQLStatementType.DAL),
diff --git 
a/parser/sql/engine/dialect/doris/src/main/antlr4/imports/doris/DALStatement.g4 
b/parser/sql/engine/dialect/doris/src/main/antlr4/imports/doris/DALStatement.g4
index 735b174f95a..806d7b026bd 100644
--- 
a/parser/sql/engine/dialect/doris/src/main/antlr4/imports/doris/DALStatement.g4
+++ 
b/parser/sql/engine/dialect/doris/src/main/antlr4/imports/doris/DALStatement.g4
@@ -514,6 +514,10 @@ adminRebalanceDisk
     : ADMIN REBALANCE DISK (ON LP_ string_ (COMMA_ string_)* RP_)?
     ;
 
+adminCancelRebalanceDisk
+    : ADMIN CANCEL REBALANCE DISK (ON LP_ string_ (COMMA_ string_)* RP_)?
+    ;
+
 adminRepair
     : ADMIN REPAIR TABLE tableName (PARTITION LP_ partitionName (COMMA_ 
partitionName)* RP_)?
     ;
diff --git 
a/parser/sql/engine/dialect/doris/src/main/antlr4/org/apache/shardingsphere/sql/parser/autogen/DorisStatement.g4
 
b/parser/sql/engine/dialect/doris/src/main/antlr4/org/apache/shardingsphere/sql/parser/autogen/DorisStatement.g4
index d4a7939a903..daca1ea7ab4 100644
--- 
a/parser/sql/engine/dialect/doris/src/main/antlr4/org/apache/shardingsphere/sql/parser/autogen/DorisStatement.g4
+++ 
b/parser/sql/engine/dialect/doris/src/main/antlr4/org/apache/shardingsphere/sql/parser/autogen/DorisStatement.g4
@@ -159,6 +159,7 @@ execute
     | adminSetPartitionVersion
     | adminCleanTrash
     | adminRebalanceDisk
+    | adminCancelRebalanceDisk
     | adminRepair
     | adminCancelRepair
     | createSqlBlockRule
diff --git 
a/parser/sql/engine/dialect/doris/src/main/java/org/apache/shardingsphere/sql/parser/engine/doris/visitor/statement/type/DorisDALStatementVisitor.java
 
b/parser/sql/engine/dialect/doris/src/main/java/org/apache/shardingsphere/sql/parser/engine/doris/visitor/statement/type/DorisDALStatementVisitor.java
index 05f4a9b2cbe..c3fcd2bd172 100644
--- 
a/parser/sql/engine/dialect/doris/src/main/java/org/apache/shardingsphere/sql/parser/engine/doris/visitor/statement/type/DorisDALStatementVisitor.java
+++ 
b/parser/sql/engine/dialect/doris/src/main/java/org/apache/shardingsphere/sql/parser/engine/doris/visitor/statement/type/DorisDALStatementVisitor.java
@@ -150,6 +150,7 @@ import 
org.apache.shardingsphere.sql.parser.autogen.DorisStatementParser.PluginP
 import 
org.apache.shardingsphere.sql.parser.autogen.DorisStatementParser.PluginPropertyValueContext;
 import 
org.apache.shardingsphere.sql.parser.autogen.DorisStatementParser.AdminCleanTrashContext;
 import 
org.apache.shardingsphere.sql.parser.autogen.DorisStatementParser.AdminRebalanceDiskContext;
+import 
org.apache.shardingsphere.sql.parser.autogen.DorisStatementParser.AdminCancelRebalanceDiskContext;
 import 
org.apache.shardingsphere.sql.parser.autogen.DorisStatementParser.AdminRepairContext;
 import 
org.apache.shardingsphere.sql.parser.autogen.DorisStatementParser.AdminCancelRepairContext;
 import 
org.apache.shardingsphere.sql.parser.autogen.DorisStatementParser.CleanAllProfileContext;
@@ -256,6 +257,7 @@ import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisAdminCopyTa
 import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisAdminCheckTabletStatement;
 import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisAdminSetPartitionVersionStatement;
 import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisAdminRebalanceDiskStatement;
+import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisAdminCancelRebalanceDiskStatement;
 import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisAdminRepairStatement;
 import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisAdminCancelRepairStatement;
 import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisAlterResourceStatement;
@@ -1328,6 +1330,15 @@ public final class DorisDALStatementVisitor extends 
DorisStatementVisitor implem
         return result;
     }
     
+    @Override
+    public ASTNode visitAdminCancelRebalanceDisk(final 
AdminCancelRebalanceDiskContext ctx) {
+        DorisAdminCancelRebalanceDiskStatement result = new 
DorisAdminCancelRebalanceDiskStatement(getDatabaseType());
+        if (null != ctx.string_()) {
+            ctx.string_().forEach(each -> 
result.getBackends().add(SQLUtils.getExactlyValue(each.getText())));
+        }
+        return result;
+    }
+    
     @Override
     public ASTNode visitAdminRepair(final AdminRepairContext ctx) {
         return new DorisAdminRepairStatement(getDatabaseType(), 
(SimpleTableSegment) visit(ctx.tableName()),
diff --git 
a/parser/sql/statement/dialect/doris/src/main/java/org/apache/shardingsphere/sql/parser/statement/doris/dal/DorisAdminCancelRebalanceDiskStatement.java
 
b/parser/sql/statement/dialect/doris/src/main/java/org/apache/shardingsphere/sql/parser/statement/doris/dal/DorisAdminCancelRebalanceDiskStatement.java
new file mode 100644
index 00000000000..28a5ac6cec5
--- /dev/null
+++ 
b/parser/sql/statement/dialect/doris/src/main/java/org/apache/shardingsphere/sql/parser/statement/doris/dal/DorisAdminCancelRebalanceDiskStatement.java
@@ -0,0 +1,38 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.shardingsphere.sql.parser.statement.doris.dal;
+
+import lombok.Getter;
+import org.apache.shardingsphere.database.connector.core.type.DatabaseType;
+import 
org.apache.shardingsphere.sql.parser.statement.core.statement.type.dal.DALStatement;
+
+import java.util.Collection;
+import java.util.LinkedList;
+
+/**
+ * Admin cancel rebalance disk statement for Doris.
+ */
+@Getter
+public final class DorisAdminCancelRebalanceDiskStatement extends DALStatement 
{
+    
+    private final Collection<String> backends = new LinkedList<>();
+    
+    public DorisAdminCancelRebalanceDiskStatement(final DatabaseType 
databaseType) {
+        super(databaseType);
+    }
+}
diff --git 
a/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/dialect/doris/DorisDALStatementAssert.java
 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/dialect/doris/DorisDALStatementAssert.java
index 5052bffc09e..9cd30aa7118 100644
--- 
a/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/dialect/doris/DorisDALStatementAssert.java
+++ 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/dialect/doris/DorisDALStatementAssert.java
@@ -23,6 +23,7 @@ import 
org.apache.shardingsphere.sql.parser.statement.core.statement.type.dal.DA
 import 
org.apache.shardingsphere.sql.parser.statement.core.statement.type.dal.UnsetVariableStatement;
 import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisAdminCleanTrashStatement;
 import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisAdminRebalanceDiskStatement;
+import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisAdminCancelRebalanceDiskStatement;
 import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisAdminRepairStatement;
 import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisAdminCancelRepairStatement;
 import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisCleanAllProfileStatement;
@@ -67,6 +68,7 @@ import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.show.DorisShowDa
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.SQLCaseAssertContext;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.dialect.doris.type.DorisAdminCleanTrashStatementAssert;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.dialect.doris.type.DorisAdminRebalanceDiskStatementAssert;
+import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.dialect.doris.type.DorisAdminCancelRebalanceDiskStatementAssert;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.dialect.doris.type.DorisAdminRepairStatementAssert;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.dialect.doris.type.DorisAdminCancelRepairStatementAssert;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.dialect.doris.type.DorisCleanAllProfileStatementAssert;
@@ -112,6 +114,7 @@ import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.d
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.SQLParserTestCase;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris.DorisAdminCleanTrashStatementTestCase;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris.DorisAdminRebalanceDiskStatementTestCase;
+import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris.DorisAdminCancelRebalanceDiskStatementTestCase;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris.DorisAdminRepairStatementTestCase;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris.DorisAdminCancelRepairStatementTestCase;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris.DorisCleanAllProfileStatementTestCase;
@@ -227,6 +230,8 @@ public final class DorisDALStatementAssert {
             DorisAdminCleanTrashStatementAssert.assertIs(assertContext, 
(DorisAdminCleanTrashStatement) actual, (DorisAdminCleanTrashStatementTestCase) 
expected);
         } else if (actual instanceof DorisAdminRebalanceDiskStatement) {
             DorisAdminRebalanceDiskStatementAssert.assertIs(assertContext, 
(DorisAdminRebalanceDiskStatement) actual, 
(DorisAdminRebalanceDiskStatementTestCase) expected);
+        } else if (actual instanceof DorisAdminCancelRebalanceDiskStatement) {
+            
DorisAdminCancelRebalanceDiskStatementAssert.assertIs(assertContext, 
(DorisAdminCancelRebalanceDiskStatement) actual, 
(DorisAdminCancelRebalanceDiskStatementTestCase) expected);
         } else if (actual instanceof DorisAdminRepairStatement) {
             DorisAdminRepairStatementAssert.assertIs(assertContext, 
(DorisAdminRepairStatement) actual, (DorisAdminRepairStatementTestCase) 
expected);
         } else if (actual instanceof DorisAdminCancelRepairStatement) {
diff --git 
a/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/dialect/doris/type/DorisAdminCancelRebalanceDiskStatementAssert.java
 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/dialect/doris/type/DorisAdminCancelRebalanceDiskStatementAssert.java
new file mode 100644
index 00000000000..cf0aeb0ad44
--- /dev/null
+++ 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/dialect/doris/type/DorisAdminCancelRebalanceDiskStatementAssert.java
@@ -0,0 +1,52 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.dialect.doris.type;
+
+import lombok.AccessLevel;
+import lombok.NoArgsConstructor;
+import 
org.apache.shardingsphere.sql.parser.statement.doris.dal.DorisAdminCancelRebalanceDiskStatement;
+import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.SQLCaseAssertContext;
+import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris.DorisAdminCancelRebalanceDiskStatementTestCase;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import static org.hamcrest.MatcherAssert.assertThat;
+import static org.hamcrest.Matchers.is;
+
+/**
+ * Admin cancel rebalance disk statement assert for Doris.
+ */
+@NoArgsConstructor(access = AccessLevel.PRIVATE)
+public final class DorisAdminCancelRebalanceDiskStatementAssert {
+    
+    /**
+     * Assert admin cancel rebalance disk statement is correct with expected 
parser result.
+     *
+     * @param assertContext assert context
+     * @param actual actual admin cancel rebalance disk statement
+     * @param expected expected admin cancel rebalance disk statement test case
+     */
+    public static void assertIs(final SQLCaseAssertContext assertContext, 
final DorisAdminCancelRebalanceDiskStatement actual, final 
DorisAdminCancelRebalanceDiskStatementTestCase expected) {
+        List<String> actualBackends = new ArrayList<>(actual.getBackends());
+        assertThat(assertContext.getText("backends size does not match: "), 
actualBackends.size(), is(expected.getBackends().size()));
+        for (int i = 0; i < actualBackends.size(); i++) {
+            assertThat(assertContext.getText("backend does not match: "), 
actualBackends.get(i), is(expected.getBackends().get(i)));
+        }
+    }
+}
diff --git 
a/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/cases/parser/jaxb/RootSQLParserTestCases.java
 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/cases/parser/jaxb/RootSQLParserTestCases.java
index fcfbda04372..1df997fc240 100644
--- 
a/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/cases/parser/jaxb/RootSQLParserTestCases.java
+++ 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/cases/parser/jaxb/RootSQLParserTestCases.java
@@ -27,6 +27,7 @@ import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.s
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris.DorisAdminCleanTrashStatementTestCase;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris.DorisAdminRepairStatementTestCase;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris.DorisAdminCancelRepairStatementTestCase;
+import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris.DorisAdminCancelRebalanceDiskStatementTestCase;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris.DorisAdminRebalanceDiskStatementTestCase;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris.DorisAdminCopyTabletStatementTestCase;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris.DorisAdminCheckTabletStatementTestCase;
@@ -831,6 +832,9 @@ public final class RootSQLParserTestCases {
     @XmlElement(name = "admin-rebalance-disk")
     private final List<DorisAdminRebalanceDiskStatementTestCase> 
adminRebalanceDiskTestCases = new LinkedList<>();
     
+    @XmlElement(name = "admin-cancel-rebalance-disk")
+    private final List<DorisAdminCancelRebalanceDiskStatementTestCase> 
adminCancelRebalanceDiskTestCases = new LinkedList<>();
+    
     @XmlElement(name = "admin-repair")
     private final List<DorisAdminRepairStatementTestCase> adminRepairTestCases 
= new LinkedList<>();
     
diff --git 
a/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/cases/parser/jaxb/statement/dal/dialect/doris/DorisAdminCancelRebalanceDiskStatementTestCase.java
 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/cases/parser/jaxb/statement/dal/dialect/doris/DorisAdminCancelRebalanceDiskStatementTestCase.java
new file mode 100644
index 00000000000..91c3d93cc88
--- /dev/null
+++ 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/cases/parser/jaxb/statement/dal/dialect/doris/DorisAdminCancelRebalanceDiskStatementTestCase.java
@@ -0,0 +1,40 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.dialect.doris;
+
+import lombok.Getter;
+import lombok.Setter;
+import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.SQLParserTestCase;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import java.util.LinkedList;
+import java.util.List;
+
+/**
+ * Admin cancel rebalance disk statement test case for Doris.
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@Getter
+@Setter
+public final class DorisAdminCancelRebalanceDiskStatementTestCase extends 
SQLParserTestCase {
+    
+    @XmlElement(name = "backend")
+    private final List<String> backends = new LinkedList<>();
+}
diff --git 
a/test/it/parser/src/main/resources/case/dal/admin-cancel-rebalance-disk.xml 
b/test/it/parser/src/main/resources/case/dal/admin-cancel-rebalance-disk.xml
new file mode 100644
index 00000000000..d8828ca8c4d
--- /dev/null
+++ b/test/it/parser/src/main/resources/case/dal/admin-cancel-rebalance-disk.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
+  ~
+  ~     http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License.
+  -->
+
+<sql-parser-test-cases>
+    <admin-cancel-rebalance-disk sql-case-id="admin_cancel_rebalance_disk" />
+
+    <admin-cancel-rebalance-disk 
sql-case-id="admin_cancel_rebalance_disk_on_backends">
+        <backend>192.168.0.1:9050</backend>
+        <backend>192.168.0.2:9050</backend>
+    </admin-cancel-rebalance-disk>
+
+    <admin-cancel-rebalance-disk 
sql-case-id="admin_cancel_rebalance_disk_on_single_backend">
+        <backend>192.168.0.1:9050</backend>
+    </admin-cancel-rebalance-disk>
+</sql-parser-test-cases>
diff --git 
a/test/it/parser/src/main/resources/sql/supported/dal/admin-cancel-rebalance-disk.xml
 
b/test/it/parser/src/main/resources/sql/supported/dal/admin-cancel-rebalance-disk.xml
new file mode 100644
index 00000000000..d2e6fe0cb7b
--- /dev/null
+++ 
b/test/it/parser/src/main/resources/sql/supported/dal/admin-cancel-rebalance-disk.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
+  ~
+  ~     http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License.
+  -->
+
+<sql-cases>
+    <sql-case id="admin_cancel_rebalance_disk" value="ADMIN CANCEL REBALANCE 
DISK" db-types="Doris" />
+    <sql-case id="admin_cancel_rebalance_disk_on_backends" value="ADMIN CANCEL 
REBALANCE DISK ON (&quot;192.168.0.1:9050&quot;, &quot;192.168.0.2:9050&quot;)" 
db-types="Doris" />
+    <sql-case id="admin_cancel_rebalance_disk_on_single_backend" value="ADMIN 
CANCEL REBALANCE DISK ON (&quot;192.168.0.1:9050&quot;)" db-types="Doris" />
+</sql-cases>
diff --git 
a/test/it/parser/src/main/resources/sql/supported/dml/select-special-function.xml
 
b/test/it/parser/src/main/resources/sql/supported/dml/select-special-function.xml
index 7b13f24c923..3a310d34d01 100644
--- 
a/test/it/parser/src/main/resources/sql/supported/dml/select-special-function.xml
+++ 
b/test/it/parser/src/main/resources/sql/supported/dml/select-special-function.xml
@@ -108,11 +108,11 @@
     <sql-case id="select_with_weekofyear_function" value="SELECT 
WEEKOFYEAR('2019-02-20');" db-types="MySQL"/>
     <sql-case id="select_with_xor_function" value="SELECT 1 XOR NULL;" 
db-types="MySQL,Doris"/>
     <sql-case id="select_with_year_function" value="SELECT 
YEAR('1999-09-09');" db-types="MySQL"/>
-    <sql-case id="select_with_yearweek_function" value="SELECT 
YEARWEEK('1988-08-08');" db-types="MySQL"/>
+    <sql-case id="select_with_yearweek_function" value="SELECT 
YEARWEEK('1988-08-08');" db-types="MySQL,Doris"/>
     <sql-case id="select_with_weight_string_function" value="SELECT 
HEX(WEIGHT_STRING('MySQL'));" db-types="MySQL,Doris,Hive"/>
     <sql-case id="select_row_number" value="SELECT ROW_NUMBER() OVER w FROM 
t_order" db-types="MySQL" />
     <sql-case id="select_rpad" value="SELECT RPAD('Hello', 10, '*')" 
db-types="MySQL" />
-    <sql-case id="select_rtrim" value="SELECT RTRIM('  Hello  ')" 
db-types="MySQL" />
+    <sql-case id="select_rtrim" value="SELECT RTRIM('  Hello  ')" 
db-types="MySQL,Doris" />
     <sql-case id="select_schema" value="SELECT SCHEMA()" db-types="MySQL" />
     <sql-case id="select_sec_to_time" value="SELECT SEC_TO_TIME(3600)" 
db-types="MySQL" />
     <sql-case id="select_second" value="SELECT SECOND('2020-06-10 12:34:56')" 
db-types="MySQL" />

Reply via email to