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

chengzhang 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 9701c6fa865 Extract DropResourceGroupStatement ... 
LoadIndexInfoStatement to reduce duplicate logic for MySQL and Doris (#31763)
9701c6fa865 is described below

commit 9701c6fa86534802504ac8c844a8ea1bd0bd0634
Author: Zhengqiang Duan <[email protected]>
AuthorDate: Wed Jun 19 18:18:21 2024 +0800

    Extract DropResourceGroupStatement ... LoadIndexInfoStatement to reduce 
duplicate logic for MySQL and Doris (#31763)
    
    * Extract AlterResourceGroupStatement to reduce duplicate logic for MySQL 
and doris
    
    * Extract BinlogStatement to reduce duplicate logic for MySQL and doris
    
    * Extract CacheIndexStatement to reduce duplicate logic for MySQL and doris
    
    * Extract ChecksumTableStatement to reduce duplicate logic for MySQL and 
doris
    
    * Extract CheckTableStatement to reduce duplicate logic for MySQL and doris
    
    * Extract CloneActionSegment to reduce duplicate logic for MySQL and doris
    
    * Extract CreateLoadableFunctionStatement to reduce duplicate logic for 
MySQL and doris
    
    * Extract CreateResourceGroupStatement to reduce duplicate logic for MySQL 
and doris
    
    * Extract DelimiterStatement to reduce duplicate logic for MySQL and doris
    
    * Extract DropResourceGroupStatement to reduce duplicate logic for MySQL 
and doris
    
    * Extract HelpStatement to reduce duplicate logic for MySQL and doris
    
    * Extract InstallComponentStatement to reduce duplicate logic for MySQL and 
doris
    
    * Extract InstallPluginStatement to reduce duplicate logic for MySQL and 
doris
    
    * Extract KillStatement to reduce duplicate logic for MySQL and doris
    
    * Extract LoadIndexInfoStatement to reduce duplicate logic for MySQL and 
doris
---
 .../statement/dal/KillStatementContext.java        |  8 ++---
 .../statement/type/DorisDALStatementVisitor.java   | 12 +++----
 .../statement/type/MySQLDALStatementVisitor.java   |  2 +-
 .../segment/dal}/LoadTableIndexSegment.java        |  4 +--
 .../statement/dal/DropResourceGroupStatement.java} |  8 ++---
 .../statement/dal/HelpStatement.java}              |  8 ++---
 .../statement/dal/InstallComponentStatement.java}  |  8 ++---
 .../statement/dal/InstallPluginStatement.java}     |  8 ++---
 .../statement/dal/KillStatement.java}              |  8 ++---
 .../statement/dal/LoadIndexInfoStatement.java}     | 10 +++---
 .../doris/dal/DorisDropResourceGroupStatement.java | 11 ++----
 .../statement/doris/dal/DorisHelpStatement.java    | 11 ++----
 .../doris/dal/DorisInstallComponentStatement.java  | 12 ++-----
 .../doris/dal/DorisInstallPluginStatement.java     | 11 ++----
 .../statement/doris/dal/DorisKillStatement.java    | 11 ++----
 .../doris/dal/DorisLoadIndexInfoStatement.java     | 13 ++-----
 .../mysql/dal/MySQLDropResourceGroupStatement.java | 11 ++----
 .../statement/mysql/dal/MySQLHelpStatement.java    | 11 ++----
 .../mysql/dal/MySQLInstallComponentStatement.java  | 12 ++-----
 .../mysql/dal/MySQLInstallPluginStatement.java     | 11 ++----
 .../statement/mysql/dal/MySQLKillStatement.java    | 11 ++----
 .../mysql/dal/MySQLLoadIndexInfoStatement.java     | 13 ++-----
 .../mysql/segment/LoadTableIndexSegment.java       | 41 ----------------------
 .../asserts/statement/dal/DALStatementAssert.java  | 32 ++++++++---------
 ....java => DropResourceGroupStatementAssert.java} | 16 ++++-----
 .../dal/impl/InstallComponentStatementAssert.java  |  4 +--
 .../dal/impl/InstallPluginStatementAssert.java     |  4 +--
 .../statement/dal/impl/KillStatementAssert.java    |  4 +--
 .../dal/impl/LoadIndexInfoStatementAssert.java     |  6 ++--
 29 files changed, 89 insertions(+), 232 deletions(-)

diff --git 
a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/KillStatementContext.java
 
b/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/KillStatementContext.java
index 6462de00efd..5296acc8f71 100644
--- 
a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/KillStatementContext.java
+++ 
b/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/KillStatementContext.java
@@ -18,19 +18,19 @@
 package org.apache.shardingsphere.infra.binder.context.statement.dal;
 
 import 
org.apache.shardingsphere.infra.binder.context.statement.CommonSQLStatementContext;
-import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal.MySQLKillStatement;
+import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.KillStatement;
 
 /**
  * Kill process statement.
  */
 public final class KillStatementContext extends CommonSQLStatementContext {
     
-    public KillStatementContext(final MySQLKillStatement sqlStatement) {
+    public KillStatementContext(final KillStatement sqlStatement) {
         super(sqlStatement);
     }
     
     @Override
-    public MySQLKillStatement getSqlStatement() {
-        return (MySQLKillStatement) super.getSqlStatement();
+    public KillStatement getSqlStatement() {
+        return (KillStatement) super.getSqlStatement();
     }
 }
diff --git 
a/parser/sql/dialect/doris/src/main/java/org/apache/shardingsphere/sql/parser/doris/visitor/statement/type/DorisDALStatementVisitor.java
 
b/parser/sql/dialect/doris/src/main/java/org/apache/shardingsphere/sql/parser/doris/visitor/statement/type/DorisDALStatementVisitor.java
index 2e9a7317acc..6731e52eb93 100644
--- 
a/parser/sql/dialect/doris/src/main/java/org/apache/shardingsphere/sql/parser/doris/visitor/statement/type/DorisDALStatementVisitor.java
+++ 
b/parser/sql/dialect/doris/src/main/java/org/apache/shardingsphere/sql/parser/doris/visitor/statement/type/DorisDALStatementVisitor.java
@@ -116,8 +116,14 @@ import 
org.apache.shardingsphere.sql.parser.autogen.DorisStatementParser.Uninsta
 import 
org.apache.shardingsphere.sql.parser.autogen.DorisStatementParser.UninstallPluginContext;
 import 
org.apache.shardingsphere.sql.parser.autogen.DorisStatementParser.UseContext;
 import 
org.apache.shardingsphere.sql.parser.doris.visitor.statement.DorisStatementVisitor;
+import 
org.apache.shardingsphere.sql.parser.sql.common.segment.dal.CacheTableIndexSegment;
+import 
org.apache.shardingsphere.sql.parser.sql.common.segment.dal.CloneActionSegment;
+import 
org.apache.shardingsphere.sql.parser.sql.common.segment.dal.CloneInstanceSegment;
 import 
org.apache.shardingsphere.sql.parser.sql.common.segment.dal.FromSchemaSegment;
 import 
org.apache.shardingsphere.sql.parser.sql.common.segment.dal.FromTableSegment;
+import 
org.apache.shardingsphere.sql.parser.sql.common.segment.dal.LoadTableIndexSegment;
+import 
org.apache.shardingsphere.sql.parser.sql.common.segment.dal.PartitionDefinitionSegment;
+import 
org.apache.shardingsphere.sql.parser.sql.common.segment.dal.PartitionSegment;
 import 
org.apache.shardingsphere.sql.parser.sql.common.segment.dal.ShowFilterSegment;
 import 
org.apache.shardingsphere.sql.parser.sql.common.segment.dal.ShowLikeSegment;
 import 
org.apache.shardingsphere.sql.parser.sql.common.segment.dal.VariableAssignSegment;
@@ -206,12 +212,6 @@ import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.doris.dal.Dori
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.doris.dal.DorisUninstallComponentStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.doris.dal.DorisUninstallPluginStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.doris.dal.DorisUseStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.common.segment.dal.CacheTableIndexSegment;
-import 
org.apache.shardingsphere.sql.parser.sql.common.segment.dal.CloneActionSegment;
-import 
org.apache.shardingsphere.sql.parser.sql.common.segment.dal.CloneInstanceSegment;
-import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.doris.segment.LoadTableIndexSegment;
-import 
org.apache.shardingsphere.sql.parser.sql.common.segment.dal.PartitionDefinitionSegment;
-import 
org.apache.shardingsphere.sql.parser.sql.common.segment.dal.PartitionSegment;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.doris.segment.ResetMasterOptionSegment;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.doris.segment.ResetOptionSegment;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.doris.segment.ResetSlaveOptionSegment;
diff --git 
a/parser/sql/dialect/mysql/src/main/java/org/apache/shardingsphere/sql/parser/mysql/visitor/statement/type/MySQLDALStatementVisitor.java
 
b/parser/sql/dialect/mysql/src/main/java/org/apache/shardingsphere/sql/parser/mysql/visitor/statement/type/MySQLDALStatementVisitor.java
index adf76aad838..3a8cacc9524 100644
--- 
a/parser/sql/dialect/mysql/src/main/java/org/apache/shardingsphere/sql/parser/mysql/visitor/statement/type/MySQLDALStatementVisitor.java
+++ 
b/parser/sql/dialect/mysql/src/main/java/org/apache/shardingsphere/sql/parser/mysql/visitor/statement/type/MySQLDALStatementVisitor.java
@@ -121,6 +121,7 @@ import 
org.apache.shardingsphere.sql.parser.sql.common.segment.dal.CloneActionSe
 import 
org.apache.shardingsphere.sql.parser.sql.common.segment.dal.CloneInstanceSegment;
 import 
org.apache.shardingsphere.sql.parser.sql.common.segment.dal.FromSchemaSegment;
 import 
org.apache.shardingsphere.sql.parser.sql.common.segment.dal.FromTableSegment;
+import 
org.apache.shardingsphere.sql.parser.sql.common.segment.dal.LoadTableIndexSegment;
 import 
org.apache.shardingsphere.sql.parser.sql.common.segment.dal.PartitionDefinitionSegment;
 import 
org.apache.shardingsphere.sql.parser.sql.common.segment.dal.PartitionSegment;
 import 
org.apache.shardingsphere.sql.parser.sql.common.segment.dal.ShowFilterSegment;
@@ -211,7 +212,6 @@ import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal.MySQ
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal.MySQLUninstallComponentStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal.MySQLUninstallPluginStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal.MySQLUseStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.segment.LoadTableIndexSegment;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.segment.ResetMasterOptionSegment;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.segment.ResetOptionSegment;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.segment.ResetSlaveOptionSegment;
diff --git 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/segment/LoadTableIndexSegment.java
 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/segment/dal/LoadTableIndexSegment.java
similarity index 90%
rename from 
parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/segment/LoadTableIndexSegment.java
rename to 
parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/segment/dal/LoadTableIndexSegment.java
index 677a0d6fbe0..0b8cf646425 100644
--- 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/segment/LoadTableIndexSegment.java
+++ 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/segment/dal/LoadTableIndexSegment.java
@@ -15,12 +15,12 @@
  * limitations under the License.
  */
 
-package 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.doris.segment;
+package org.apache.shardingsphere.sql.parser.sql.common.segment.dal;
 
 import lombok.Getter;
 import 
org.apache.shardingsphere.sql.parser.sql.common.segment.ddl.index.IndexSegment;
 import 
org.apache.shardingsphere.sql.parser.sql.common.segment.generic.table.SimpleTableSegment;
-import 
org.apache.shardingsphere.sql.parser.sql.common.segment.dal.PartitionSegment;
+import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.doris.segment.TableIndexSegment;
 
 import java.util.Collection;
 import java.util.LinkedList;
diff --git 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLDropResourceGroupStatement.java
 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/statement/dal/DropResourceGroupStatement.java
similarity index 70%
copy from 
parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLDropResourceGroupStatement.java
copy to 
parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/statement/dal/DropResourceGroupStatement.java
index 65f7be88fd2..f262aaf260c 100644
--- 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLDropResourceGroupStatement.java
+++ 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/statement/dal/DropResourceGroupStatement.java
@@ -15,20 +15,18 @@
  * limitations under the License.
  */
 
-package org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal;
+package org.apache.shardingsphere.sql.parser.sql.common.statement.dal;
 
 import lombok.Getter;
 import lombok.Setter;
 import 
org.apache.shardingsphere.sql.parser.sql.common.statement.AbstractSQLStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.DALStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.MySQLStatement;
 
 /**
- * MySQL drop resource group statement.
+ * Drop resource group statement.
  */
 @Getter
 @Setter
-public final class MySQLDropResourceGroupStatement extends 
AbstractSQLStatement implements DALStatement, MySQLStatement {
+public abstract class DropResourceGroupStatement extends AbstractSQLStatement 
implements DALStatement {
     
     private String groupName;
 }
diff --git 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/dal/DorisHelpStatement.java
 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/statement/dal/HelpStatement.java
similarity index 72%
copy from 
parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/dal/DorisHelpStatement.java
copy to 
parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/statement/dal/HelpStatement.java
index c1acdd739f0..6e3eefdebdf 100644
--- 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/dal/DorisHelpStatement.java
+++ 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/statement/dal/HelpStatement.java
@@ -15,20 +15,18 @@
  * limitations under the License.
  */
 
-package org.apache.shardingsphere.sql.parser.sql.dialect.statement.doris.dal;
+package org.apache.shardingsphere.sql.parser.sql.common.statement.dal;
 
 import lombok.Getter;
 import lombok.Setter;
 import 
org.apache.shardingsphere.sql.parser.sql.common.statement.AbstractSQLStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.DALStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.doris.DorisStatement;
 
 /**
- * Doris help statement.
+ * Help statement.
  */
 @Getter
 @Setter
-public final class DorisHelpStatement extends AbstractSQLStatement implements 
DALStatement, DorisStatement {
+public abstract class HelpStatement extends AbstractSQLStatement implements 
DALStatement {
     
     private String searchString;
 }
diff --git 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLInstallComponentStatement.java
 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/statement/dal/InstallComponentStatement.java
similarity index 72%
copy from 
parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLInstallComponentStatement.java
copy to 
parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/statement/dal/InstallComponentStatement.java
index b4ffb129a65..f3a06b325a9 100644
--- 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLInstallComponentStatement.java
+++ 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/statement/dal/InstallComponentStatement.java
@@ -15,21 +15,19 @@
  * limitations under the License.
  */
 
-package org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal;
+package org.apache.shardingsphere.sql.parser.sql.common.statement.dal;
 
 import lombok.Getter;
 import 
org.apache.shardingsphere.sql.parser.sql.common.statement.AbstractSQLStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.DALStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.MySQLStatement;
 
 import java.util.LinkedList;
 import java.util.List;
 
 /**
- * MySQL install component statement.
+ * Install component statement.
  */
 @Getter
-public final class MySQLInstallComponentStatement extends AbstractSQLStatement 
implements DALStatement, MySQLStatement {
+public abstract class InstallComponentStatement extends AbstractSQLStatement 
implements DALStatement {
     
     private final List<String> components = new LinkedList<>();
 }
diff --git 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/dal/DorisInstallPluginStatement.java
 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/statement/dal/InstallPluginStatement.java
similarity index 71%
copy from 
parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/dal/DorisInstallPluginStatement.java
copy to 
parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/statement/dal/InstallPluginStatement.java
index d7c480afbb4..071204d32b8 100644
--- 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/dal/DorisInstallPluginStatement.java
+++ 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/statement/dal/InstallPluginStatement.java
@@ -15,20 +15,18 @@
  * limitations under the License.
  */
 
-package org.apache.shardingsphere.sql.parser.sql.dialect.statement.doris.dal;
+package org.apache.shardingsphere.sql.parser.sql.common.statement.dal;
 
 import lombok.Getter;
 import lombok.Setter;
 import 
org.apache.shardingsphere.sql.parser.sql.common.statement.AbstractSQLStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.DALStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.doris.DorisStatement;
 
 /**
- * Doris install plugin statement.
+ * Install plugin statement.
  */
 @Getter
 @Setter
-public final class DorisInstallPluginStatement extends AbstractSQLStatement 
implements DALStatement, DorisStatement {
+public abstract class InstallPluginStatement extends AbstractSQLStatement 
implements DALStatement {
     
     private String pluginName;
 }
diff --git 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLKillStatement.java
 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/statement/dal/KillStatement.java
similarity index 72%
copy from 
parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLKillStatement.java
copy to 
parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/statement/dal/KillStatement.java
index 404087b1acf..e9bf1127b0f 100644
--- 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLKillStatement.java
+++ 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/statement/dal/KillStatement.java
@@ -15,20 +15,18 @@
  * limitations under the License.
  */
 
-package org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal;
+package org.apache.shardingsphere.sql.parser.sql.common.statement.dal;
 
 import lombok.Getter;
 import lombok.Setter;
 import 
org.apache.shardingsphere.sql.parser.sql.common.statement.AbstractSQLStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.DALStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.MySQLStatement;
 
 /**
- * MySQL kill statement.
+ * Kill statement.
  */
 @Getter
 @Setter
-public final class MySQLKillStatement extends AbstractSQLStatement implements 
DALStatement, MySQLStatement {
+public abstract class KillStatement extends AbstractSQLStatement implements 
DALStatement {
     
     private String processId;
 }
diff --git 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLLoadIndexInfoStatement.java
 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/statement/dal/LoadIndexInfoStatement.java
similarity index 68%
copy from 
parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLLoadIndexInfoStatement.java
copy to 
parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/statement/dal/LoadIndexInfoStatement.java
index e1b48a3b9ad..3818c6acfec 100644
--- 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLLoadIndexInfoStatement.java
+++ 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/statement/dal/LoadIndexInfoStatement.java
@@ -15,22 +15,20 @@
  * limitations under the License.
  */
 
-package org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal;
+package org.apache.shardingsphere.sql.parser.sql.common.statement.dal;
 
 import lombok.Getter;
 import 
org.apache.shardingsphere.sql.parser.sql.common.statement.AbstractSQLStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.DALStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.MySQLStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.segment.LoadTableIndexSegment;
+import 
org.apache.shardingsphere.sql.parser.sql.common.segment.dal.LoadTableIndexSegment;
 
 import java.util.Collection;
 import java.util.LinkedList;
 
 /**
- * MySQL load index info statement.
+ * Load index info statement.
  */
 @Getter
-public final class MySQLLoadIndexInfoStatement extends AbstractSQLStatement 
implements DALStatement, MySQLStatement {
+public abstract class LoadIndexInfoStatement extends AbstractSQLStatement 
implements DALStatement {
     
     private final Collection<LoadTableIndexSegment> tableIndexes = new 
LinkedList<>();
 }
diff --git 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/dal/DorisDropResourceGroupStatement.java
 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/dal/DorisDropResourceGroupStatement.java
index 679d2fcc591..07c03c5eca4 100644
--- 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/dal/DorisDropResourceGroupStatement.java
+++ 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/dal/DorisDropResourceGroupStatement.java
@@ -17,18 +17,11 @@
 
 package org.apache.shardingsphere.sql.parser.sql.dialect.statement.doris.dal;
 
-import lombok.Getter;
-import lombok.Setter;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.AbstractSQLStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.DALStatement;
+import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.DropResourceGroupStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.doris.DorisStatement;
 
 /**
  * Doris drop resource group statement.
  */
-@Getter
-@Setter
-public final class DorisDropResourceGroupStatement extends 
AbstractSQLStatement implements DALStatement, DorisStatement {
-    
-    private String groupName;
+public final class DorisDropResourceGroupStatement extends 
DropResourceGroupStatement implements DorisStatement {
 }
diff --git 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/dal/DorisHelpStatement.java
 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/dal/DorisHelpStatement.java
index c1acdd739f0..de7550da3d1 100644
--- 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/dal/DorisHelpStatement.java
+++ 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/dal/DorisHelpStatement.java
@@ -17,18 +17,11 @@
 
 package org.apache.shardingsphere.sql.parser.sql.dialect.statement.doris.dal;
 
-import lombok.Getter;
-import lombok.Setter;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.AbstractSQLStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.DALStatement;
+import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.HelpStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.doris.DorisStatement;
 
 /**
  * Doris help statement.
  */
-@Getter
-@Setter
-public final class DorisHelpStatement extends AbstractSQLStatement implements 
DALStatement, DorisStatement {
-    
-    private String searchString;
+public final class DorisHelpStatement extends HelpStatement implements 
DorisStatement {
 }
diff --git 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/dal/DorisInstallComponentStatement.java
 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/dal/DorisInstallComponentStatement.java
index 795a2b17763..cc21cf40d85 100644
--- 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/dal/DorisInstallComponentStatement.java
+++ 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/dal/DorisInstallComponentStatement.java
@@ -17,19 +17,11 @@
 
 package org.apache.shardingsphere.sql.parser.sql.dialect.statement.doris.dal;
 
-import lombok.Getter;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.AbstractSQLStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.DALStatement;
+import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.InstallComponentStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.doris.DorisStatement;
 
-import java.util.LinkedList;
-import java.util.List;
-
 /**
  * Doris install component statement.
  */
-@Getter
-public final class DorisInstallComponentStatement extends AbstractSQLStatement 
implements DALStatement, DorisStatement {
-    
-    private final List<String> components = new LinkedList<>();
+public final class DorisInstallComponentStatement extends 
InstallComponentStatement implements DorisStatement {
 }
diff --git 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/dal/DorisInstallPluginStatement.java
 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/dal/DorisInstallPluginStatement.java
index d7c480afbb4..5010e6d7f27 100644
--- 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/dal/DorisInstallPluginStatement.java
+++ 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/dal/DorisInstallPluginStatement.java
@@ -17,18 +17,11 @@
 
 package org.apache.shardingsphere.sql.parser.sql.dialect.statement.doris.dal;
 
-import lombok.Getter;
-import lombok.Setter;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.AbstractSQLStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.DALStatement;
+import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.InstallPluginStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.doris.DorisStatement;
 
 /**
  * Doris install plugin statement.
  */
-@Getter
-@Setter
-public final class DorisInstallPluginStatement extends AbstractSQLStatement 
implements DALStatement, DorisStatement {
-    
-    private String pluginName;
+public final class DorisInstallPluginStatement extends InstallPluginStatement 
implements DorisStatement {
 }
diff --git 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/dal/DorisKillStatement.java
 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/dal/DorisKillStatement.java
index 57cab5dc377..e32f22bf8f7 100644
--- 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/dal/DorisKillStatement.java
+++ 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/dal/DorisKillStatement.java
@@ -17,18 +17,11 @@
 
 package org.apache.shardingsphere.sql.parser.sql.dialect.statement.doris.dal;
 
-import lombok.Getter;
-import lombok.Setter;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.AbstractSQLStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.DALStatement;
+import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.KillStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.doris.DorisStatement;
 
 /**
  * Doris kill statement.
  */
-@Getter
-@Setter
-public final class DorisKillStatement extends AbstractSQLStatement implements 
DALStatement, DorisStatement {
-    
-    private String processId;
+public final class DorisKillStatement extends KillStatement implements 
DorisStatement {
 }
diff --git 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/dal/DorisLoadIndexInfoStatement.java
 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/dal/DorisLoadIndexInfoStatement.java
index ab6271423ba..7e952ff54c6 100644
--- 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/dal/DorisLoadIndexInfoStatement.java
+++ 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/doris/dal/DorisLoadIndexInfoStatement.java
@@ -17,20 +17,11 @@
 
 package org.apache.shardingsphere.sql.parser.sql.dialect.statement.doris.dal;
 
-import lombok.Getter;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.AbstractSQLStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.DALStatement;
+import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.LoadIndexInfoStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.doris.DorisStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.doris.segment.LoadTableIndexSegment;
-
-import java.util.Collection;
-import java.util.LinkedList;
 
 /**
  * Doris load index info statement.
  */
-@Getter
-public final class DorisLoadIndexInfoStatement extends AbstractSQLStatement 
implements DALStatement, DorisStatement {
-    
-    private final Collection<LoadTableIndexSegment> tableIndexes = new 
LinkedList<>();
+public final class DorisLoadIndexInfoStatement extends LoadIndexInfoStatement 
implements DorisStatement {
 }
diff --git 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLDropResourceGroupStatement.java
 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLDropResourceGroupStatement.java
index 65f7be88fd2..a9433a385d0 100644
--- 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLDropResourceGroupStatement.java
+++ 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLDropResourceGroupStatement.java
@@ -17,18 +17,11 @@
 
 package org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal;
 
-import lombok.Getter;
-import lombok.Setter;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.AbstractSQLStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.DALStatement;
+import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.DropResourceGroupStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.MySQLStatement;
 
 /**
  * MySQL drop resource group statement.
  */
-@Getter
-@Setter
-public final class MySQLDropResourceGroupStatement extends 
AbstractSQLStatement implements DALStatement, MySQLStatement {
-    
-    private String groupName;
+public final class MySQLDropResourceGroupStatement extends 
DropResourceGroupStatement implements MySQLStatement {
 }
diff --git 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLHelpStatement.java
 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLHelpStatement.java
index 805ae81311c..3b14d5c7d57 100644
--- 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLHelpStatement.java
+++ 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLHelpStatement.java
@@ -17,18 +17,11 @@
 
 package org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal;
 
-import lombok.Getter;
-import lombok.Setter;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.AbstractSQLStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.DALStatement;
+import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.HelpStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.MySQLStatement;
 
 /**
  * MySQL help statement.
  */
-@Getter
-@Setter
-public final class MySQLHelpStatement extends AbstractSQLStatement implements 
DALStatement, MySQLStatement {
-    
-    private String searchString;
+public final class MySQLHelpStatement extends HelpStatement implements 
MySQLStatement {
 }
diff --git 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLInstallComponentStatement.java
 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLInstallComponentStatement.java
index b4ffb129a65..f5021699bd4 100644
--- 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLInstallComponentStatement.java
+++ 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLInstallComponentStatement.java
@@ -17,19 +17,11 @@
 
 package org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal;
 
-import lombok.Getter;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.AbstractSQLStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.DALStatement;
+import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.InstallComponentStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.MySQLStatement;
 
-import java.util.LinkedList;
-import java.util.List;
-
 /**
  * MySQL install component statement.
  */
-@Getter
-public final class MySQLInstallComponentStatement extends AbstractSQLStatement 
implements DALStatement, MySQLStatement {
-    
-    private final List<String> components = new LinkedList<>();
+public final class MySQLInstallComponentStatement extends 
InstallComponentStatement implements MySQLStatement {
 }
diff --git 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLInstallPluginStatement.java
 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLInstallPluginStatement.java
index 9451da695ac..47c9a822547 100644
--- 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLInstallPluginStatement.java
+++ 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLInstallPluginStatement.java
@@ -17,18 +17,11 @@
 
 package org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal;
 
-import lombok.Getter;
-import lombok.Setter;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.AbstractSQLStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.DALStatement;
+import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.InstallPluginStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.MySQLStatement;
 
 /**
  * MySQL install plugin statement.
  */
-@Getter
-@Setter
-public final class MySQLInstallPluginStatement extends AbstractSQLStatement 
implements DALStatement, MySQLStatement {
-    
-    private String pluginName;
+public final class MySQLInstallPluginStatement extends InstallPluginStatement 
implements MySQLStatement {
 }
diff --git 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLKillStatement.java
 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLKillStatement.java
index 404087b1acf..22f2121897d 100644
--- 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLKillStatement.java
+++ 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLKillStatement.java
@@ -17,18 +17,11 @@
 
 package org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal;
 
-import lombok.Getter;
-import lombok.Setter;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.AbstractSQLStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.DALStatement;
+import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.KillStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.MySQLStatement;
 
 /**
  * MySQL kill statement.
  */
-@Getter
-@Setter
-public final class MySQLKillStatement extends AbstractSQLStatement implements 
DALStatement, MySQLStatement {
-    
-    private String processId;
+public final class MySQLKillStatement extends KillStatement implements 
MySQLStatement {
 }
diff --git 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLLoadIndexInfoStatement.java
 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLLoadIndexInfoStatement.java
index e1b48a3b9ad..55bf91f35c6 100644
--- 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLLoadIndexInfoStatement.java
+++ 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/dal/MySQLLoadIndexInfoStatement.java
@@ -17,20 +17,11 @@
 
 package org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal;
 
-import lombok.Getter;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.AbstractSQLStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.DALStatement;
+import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.LoadIndexInfoStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.MySQLStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.segment.LoadTableIndexSegment;
-
-import java.util.Collection;
-import java.util.LinkedList;
 
 /**
  * MySQL load index info statement.
  */
-@Getter
-public final class MySQLLoadIndexInfoStatement extends AbstractSQLStatement 
implements DALStatement, MySQLStatement {
-    
-    private final Collection<LoadTableIndexSegment> tableIndexes = new 
LinkedList<>();
+public final class MySQLLoadIndexInfoStatement extends LoadIndexInfoStatement 
implements MySQLStatement {
 }
diff --git 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/segment/LoadTableIndexSegment.java
 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/segment/LoadTableIndexSegment.java
deleted file mode 100644
index 3295afda0d5..00000000000
--- 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/mysql/segment/LoadTableIndexSegment.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * 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.sql.dialect.statement.mysql.segment;
-
-import lombok.Getter;
-import 
org.apache.shardingsphere.sql.parser.sql.common.segment.dal.PartitionSegment;
-import 
org.apache.shardingsphere.sql.parser.sql.common.segment.ddl.index.IndexSegment;
-import 
org.apache.shardingsphere.sql.parser.sql.common.segment.generic.table.SimpleTableSegment;
-
-import java.util.Collection;
-import java.util.LinkedList;
-
-/**
- * Load table index segment.
- */
-@Getter
-public final class LoadTableIndexSegment extends TableIndexSegment {
-    
-    private final Collection<IndexSegment> indexes = new LinkedList<>();
-    
-    private final Collection<PartitionSegment> partitions = new LinkedList<>();
-    
-    public LoadTableIndexSegment(final int startIndex, final int stopIndex, 
final SimpleTableSegment table) {
-        super(startIndex, stopIndex, table);
-    }
-}
diff --git 
a/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/DALStatementAssert.java
 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/DALStatementAssert.java
index fa748f67c63..8c9be5c16a6 100644
--- 
a/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/DALStatementAssert.java
+++ 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/DALStatementAssert.java
@@ -28,17 +28,17 @@ import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.CloneStatem
 import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.CreateResourceGroupStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.DALStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.DelimiterStatement;
+import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.DropResourceGroupStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.EmptyStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.ExplainStatement;
+import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.InstallComponentStatement;
+import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.InstallPluginStatement;
+import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.KillStatement;
+import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.LoadIndexInfoStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.ResetParameterStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.SetStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.ShowStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal.MySQLDropResourceGroupStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal.MySQLFlushStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal.MySQLInstallComponentStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal.MySQLInstallPluginStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal.MySQLKillStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal.MySQLLoadIndexInfoStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal.MySQLOptimizeTableStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal.MySQLRepairTableStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal.MySQLResetPersistStatement;
@@ -82,6 +82,7 @@ import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.d
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.impl.CloneStatementAssert;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.impl.CreateResourceGroupStatementAssert;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.impl.DelimiterStatementAssert;
+import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.impl.DropResourceGroupStatementAssert;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.impl.EmptyStatementAssert;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.impl.ExplainStatementAssert;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.impl.FlushStatementAssert;
@@ -120,7 +121,6 @@ import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.d
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.impl.SpoolStatementAssert;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.impl.UninstallComponentStatementAssert;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.impl.UninstallPluginStatementAssert;
-import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.impl.mysql.MySQLDropResourceGroupStatementAssert;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.impl.mysql.MySQLOptimizeTableStatementAssert;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.impl.mysql.MySQLRepairTableStatementAssert;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.impl.mysql.MySQLResetPersistStatementAssert;
@@ -226,12 +226,12 @@ public final class DALStatementAssert {
             SetParameterStatementAssert.assertIs(assertContext, (SetStatement) 
actual, (SetParameterStatementTestCase) expected);
         } else if (actual instanceof ResetParameterStatement) {
             ResetParameterStatementAssert.assertIs(assertContext, 
(ResetParameterStatement) actual, (ResetParameterStatementTestCase) expected);
-        } else if (actual instanceof MySQLInstallComponentStatement) {
-            InstallComponentStatementAssert.assertIs(assertContext, 
(MySQLInstallComponentStatement) actual, (InstallComponentStatementTestCase) 
expected);
+        } else if (actual instanceof InstallComponentStatement) {
+            InstallComponentStatementAssert.assertIs(assertContext, 
(InstallComponentStatement) actual, (InstallComponentStatementTestCase) 
expected);
         } else if (actual instanceof MySQLFlushStatement) {
             FlushStatementAssert.assertIs(assertContext, (MySQLFlushStatement) 
actual, (FlushStatementTestCase) expected);
-        } else if (actual instanceof MySQLInstallPluginStatement) {
-            InstallPluginStatementAssert.assertIs(assertContext, 
(MySQLInstallPluginStatement) actual, (InstallPluginStatementTestCase) 
expected);
+        } else if (actual instanceof InstallPluginStatement) {
+            InstallPluginStatementAssert.assertIs(assertContext, 
(InstallPluginStatement) actual, (InstallPluginStatementTestCase) expected);
         } else if (actual instanceof CloneStatement) {
             CloneStatementAssert.assertIs(assertContext, (CloneStatement) 
actual, (CloneStatementTestCase) expected);
         } else if (actual instanceof MySQLUninstallComponentStatement) {
@@ -268,12 +268,12 @@ public final class DALStatementAssert {
             MySQLResetPersistStatementAssert.assertIs(assertContext, 
(MySQLResetPersistStatement) actual, (ResetPersistStatementTestCase) expected);
         } else if (actual instanceof MySQLShowProcedureCodeStatement) {
             ShowProcedureCodeStatementAssert.assertIs(assertContext, 
(MySQLShowProcedureCodeStatement) actual, (ShowProcedureCodeStatementTestCase) 
expected);
-        } else if (actual instanceof MySQLKillStatement) {
-            KillStatementAssert.assertIs(assertContext, (MySQLKillStatement) 
actual, (KillStatementTestCase) expected);
+        } else if (actual instanceof KillStatement) {
+            KillStatementAssert.assertIs(assertContext, (KillStatement) 
actual, (KillStatementTestCase) expected);
         } else if (actual instanceof CacheIndexStatement) {
             CacheIndexStatementAssert.assertIs(assertContext, 
(CacheIndexStatement) actual, (CacheIndexStatementTestCase) expected);
-        } else if (actual instanceof MySQLLoadIndexInfoStatement) {
-            LoadIndexInfoStatementAssert.assertIs(assertContext, 
(MySQLLoadIndexInfoStatement) actual, (LoadIndexInfoStatementTestCase) 
expected);
+        } else if (actual instanceof LoadIndexInfoStatement) {
+            LoadIndexInfoStatementAssert.assertIs(assertContext, 
(LoadIndexInfoStatement) actual, (LoadIndexInfoStatementTestCase) expected);
         } else if (actual instanceof MySQLShutdownStatement) {
             ShutdownStatementAssert.assertIs(assertContext, 
(MySQLShutdownStatement) actual, (ShutdownStatementTestCase) expected);
         } else if (actual instanceof MySQLShowOpenTablesStatement) {
@@ -286,8 +286,8 @@ public final class DALStatementAssert {
             CheckTableStatementAssert.assertIs(assertContext, 
(CheckTableStatement) actual, (CheckTableStatementTestCase) expected);
         } else if (actual instanceof MySQLShowEventsStatement) {
             ShowEventsStatementAssert.assertIs(assertContext, 
(MySQLShowEventsStatement) actual, (ShowEventsStatementTestCase) expected);
-        } else if (actual instanceof MySQLDropResourceGroupStatement) {
-            MySQLDropResourceGroupStatementAssert.assertIs(assertContext, 
(MySQLDropResourceGroupStatement) actual, (DropResourceGroupStatementTestCase) 
expected);
+        } else if (actual instanceof DropResourceGroupStatement) {
+            DropResourceGroupStatementAssert.assertIs(assertContext, 
(DropResourceGroupStatement) actual, (DropResourceGroupStatementTestCase) 
expected);
         } else if (actual instanceof AlterResourceGroupStatement) {
             AlterResourceGroupStatementAssert.assertIs(assertContext, 
(AlterResourceGroupStatement) actual, (AlterResourceGroupStatementTestCase) 
expected);
         } else if (actual instanceof ChecksumTableStatement) {
diff --git 
a/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/impl/mysql/MySQLDropResourceGroupStatementAssert.java
 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/impl/DropResourceGroupStatementAssert.java
similarity index 75%
rename from 
test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/impl/mysql/MySQLDropResourceGroupStatementAssert.java
rename to 
test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/impl/DropResourceGroupStatementAssert.java
index d6002426354..58de80424bc 100644
--- 
a/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/impl/mysql/MySQLDropResourceGroupStatementAssert.java
+++ 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/impl/DropResourceGroupStatementAssert.java
@@ -15,23 +15,23 @@
  * limitations under the License.
  */
 
-package 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.impl.mysql;
+package 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.dal.impl;
 
 import lombok.AccessLevel;
 import lombok.NoArgsConstructor;
-import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal.MySQLDropResourceGroupStatement;
+import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.DropResourceGroupStatement;
 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.DropResourceGroupStatementTestCase;
 
 import static org.hamcrest.CoreMatchers.is;
-import static org.junit.jupiter.api.Assertions.assertNotNull;
 import static org.hamcrest.MatcherAssert.assertThat;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
 
 /**
- * MySQL drop resource group statement assert.
+ * Drop resource group statement assert.
  */
 @NoArgsConstructor(access = AccessLevel.PRIVATE)
-public final class MySQLDropResourceGroupStatementAssert {
+public final class DropResourceGroupStatementAssert {
     
     /**
      * Assert create resource group statement is correct with expected parser 
result.
@@ -40,8 +40,8 @@ public final class MySQLDropResourceGroupStatementAssert {
      * @param actual actual create resource group statement
      * @param expected expected create resource group statement test case
      */
-    public static void assertIs(final SQLCaseAssertContext assertContext, 
final MySQLDropResourceGroupStatement actual, final 
DropResourceGroupStatementTestCase expected) {
-        assertNotNull(expected.getGroup(), "expected drop resource group 
should be not null");
-        assertThat(actual.getGroupName(), is(expected.getGroup().getName()));
+    public static void assertIs(final SQLCaseAssertContext assertContext, 
final DropResourceGroupStatement actual, final 
DropResourceGroupStatementTestCase expected) {
+        assertNotNull(expected.getGroup(), assertContext.getText("expected 
drop resource group should be not null"));
+        assertThat(assertContext.getText("group name does not match: "), 
actual.getGroupName(), is(expected.getGroup().getName()));
     }
 }
diff --git 
a/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/impl/InstallComponentStatementAssert.java
 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/impl/InstallComponentStatementAssert.java
index 290b8207230..a8c5fe5fb2a 100644
--- 
a/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/impl/InstallComponentStatementAssert.java
+++ 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/impl/InstallComponentStatementAssert.java
@@ -19,7 +19,7 @@ package 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.
 
 import lombok.AccessLevel;
 import lombok.NoArgsConstructor;
-import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal.MySQLInstallComponentStatement;
+import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.InstallComponentStatement;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.SQLCaseAssertContext;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.segment.impl.component.ExpectedComponent;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.cases.parser.jaxb.statement.dal.InstallComponentStatementTestCase;
@@ -42,7 +42,7 @@ public final class InstallComponentStatementAssert {
      * @param actual actual install component statement
      * @param expected expected install component statement test case
      */
-    public static void assertIs(final SQLCaseAssertContext assertContext, 
final MySQLInstallComponentStatement actual, final 
InstallComponentStatementTestCase expected) {
+    public static void assertIs(final SQLCaseAssertContext assertContext, 
final InstallComponentStatement actual, final InstallComponentStatementTestCase 
expected) {
         assertThat(assertContext.getText("Actual components size assertion 
error: "), actual.getComponents().size(), is(expected.getComponents().size()));
         assertComponents(assertContext, actual.getComponents(), 
expected.getComponents());
     }
diff --git 
a/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/impl/InstallPluginStatementAssert.java
 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/impl/InstallPluginStatementAssert.java
index 20ba76140ad..44720ff8bba 100644
--- 
a/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/impl/InstallPluginStatementAssert.java
+++ 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/impl/InstallPluginStatementAssert.java
@@ -19,7 +19,7 @@ package 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.
 
 import lombok.AccessLevel;
 import lombok.NoArgsConstructor;
-import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal.MySQLInstallPluginStatement;
+import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.InstallPluginStatement;
 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.InstallPluginStatementTestCase;
 
@@ -39,7 +39,7 @@ public final class InstallPluginStatementAssert {
      * @param actual actual install plugin statement
      * @param expected expected install plugin statement test case
      */
-    public static void assertIs(final SQLCaseAssertContext assertContext, 
final MySQLInstallPluginStatement actual, final InstallPluginStatementTestCase 
expected) {
+    public static void assertIs(final SQLCaseAssertContext assertContext, 
final InstallPluginStatement actual, final InstallPluginStatementTestCase 
expected) {
         assertThat(assertContext.getText("Actual plugin name does not match: 
"), actual.getPluginName(), is(expected.getPlugin().getName()));
     }
 }
diff --git 
a/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/impl/KillStatementAssert.java
 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/impl/KillStatementAssert.java
index f4b8effa814..b9a7428af6d 100644
--- 
a/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/impl/KillStatementAssert.java
+++ 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/impl/KillStatementAssert.java
@@ -19,7 +19,7 @@ package 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.
 
 import lombok.AccessLevel;
 import lombok.NoArgsConstructor;
-import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal.MySQLKillStatement;
+import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.KillStatement;
 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.KillStatementTestCase;
 
@@ -39,7 +39,7 @@ public final class KillStatementAssert {
      * @param actual actual kill statement
      * @param expected expected kill statement test case
      */
-    public static void assertIs(final SQLCaseAssertContext assertContext, 
final MySQLKillStatement actual, final KillStatementTestCase expected) {
+    public static void assertIs(final SQLCaseAssertContext assertContext, 
final KillStatement actual, final KillStatementTestCase expected) {
         assertThat(assertContext.getText("Kill statement context does not 
match: "), actual.getProcessId(), is(expected.getProcessId()));
     }
 }
diff --git 
a/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/impl/LoadIndexInfoStatementAssert.java
 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/impl/LoadIndexInfoStatementAssert.java
index 276bdd87639..8b1e34adbec 100644
--- 
a/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/impl/LoadIndexInfoStatementAssert.java
+++ 
b/test/it/parser/src/main/java/org/apache/shardingsphere/test/it/sql/parser/internal/asserts/statement/dal/impl/LoadIndexInfoStatementAssert.java
@@ -19,10 +19,10 @@ package 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.statement.
 
 import lombok.AccessLevel;
 import lombok.NoArgsConstructor;
+import 
org.apache.shardingsphere.sql.parser.sql.common.segment.dal.LoadTableIndexSegment;
 import 
org.apache.shardingsphere.sql.parser.sql.common.segment.dal.PartitionSegment;
 import 
org.apache.shardingsphere.sql.parser.sql.common.segment.ddl.index.IndexSegment;
-import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal.MySQLLoadIndexInfoStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.segment.LoadTableIndexSegment;
+import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dal.LoadIndexInfoStatement;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.SQLCaseAssertContext;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.segment.SQLSegmentAssert;
 import 
org.apache.shardingsphere.test.it.sql.parser.internal.asserts.segment.identifier.IdentifierValueAssert;
@@ -47,7 +47,7 @@ public final class LoadIndexInfoStatementAssert {
      * @param actual actual load index info statement
      * @param expected expected load index info statement test case
      */
-    public static void assertIs(final SQLCaseAssertContext assertContext, 
final MySQLLoadIndexInfoStatement actual, final LoadIndexInfoStatementTestCase 
expected) {
+    public static void assertIs(final SQLCaseAssertContext assertContext, 
final LoadIndexInfoStatement actual, final LoadIndexInfoStatementTestCase 
expected) {
         assertThat("Load index info statement table index size assertion 
error: ", actual.getTableIndexes().size(), 
is(expected.getTableIndexes().size()));
         int count = 0;
         for (LoadTableIndexSegment each : actual.getTableIndexes()) {

Reply via email to