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

wuweijie 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 f2e12f148ef Fix sonar issue on MySQLDDLStatementVisitor (#26020)
f2e12f148ef is described below

commit f2e12f148ef3007e1a9ecf76156995a0256c5d76
Author: Liang Zhang <[email protected]>
AuthorDate: Sat Jun 3 00:09:14 2023 +0800

    Fix sonar issue on MySQLDDLStatementVisitor (#26020)
    
    * Fix sonar issue on MySQLDDLStatementVisitor
    
    * Fix sonar issue on OpenGaussDDLStatementVisitor
    
    * Fix sonar issue on PostgreSQLDDLStatementVisitor
    
    * Fix sonar issue on MilitaryIdentityNumberRandomReplaceAlgorithmTest
    
    * Fix sonar issue on JDBCContextTest
    
    * Fix sonar issue on JDBCContextTest
    
    * Fix sonar issue on JDBCContextTest
    
    * Fix sonar issue on JDBCContextTest
    
    * Fix sonar issue on CDCSchemaTableUtils
    
    * Fix sonar issue on CDCImporterManager
    
    * Fix sonar issue on PipelineDataSourceSink
    
    * Fix sonar issue on CDCImporter
    
    * Fix sonar issue on SingleTableInventoryDataConsistencyChecker
    
    * Fix sonar issue on OwnerAvailable
    
    * Fix sonar issue on OracleAlterSynonymStatement
    
    * Fix sonar issue on OracleDropDirectoryStatement
    
    * Fix sonar issue on SQLServerAlterTriggerStatement
    
    * Fix sonar issue on SQLServerCreateTriggerStatement
    
    * Fix sonar issue on SQLServerDropTriggerStatement
    
    * Fix sonar issue on PostgreSQLBinaryTimestampUtils
---
 .../PostgreSQLTimeBinaryProtocolValue.java         |   2 +-
 .../util/PostgreSQLBinaryTimestampUtils.java       |   5 +-
 .../PostgreSQLTimeBinaryProtocolValueTest.java     |   2 +-
 .../util/PostgreSQLBinaryTimestampUtilsTest.java   |   8 +-
 ...ryIdentityNumberRandomReplaceAlgorithmTest.java |   5 +-
 .../driver/jdbc/context/JDBCContextTest.java       |  29 ++----
 .../pipeline/cdc/core/importer/CDCImporter.java    |   2 +-
 .../cdc/core/importer/CDCImporterManager.java      |   4 +
 .../pipeline/cdc/core/prepare/CDCJobPreparer.java  |  12 +--
 .../pipeline/cdc/util/CDCSchemaTableUtils.java     |   2 +-
 ...SingleTableInventoryDataConsistencyChecker.java |  15 +---
 .../core/importer/sink/PipelineDataSourceSink.java |  30 ++++---
 .../statement/type/MySQLDDLStatementVisitor.java   | 100 +++++++++++----------
 .../type/OpenGaussDDLStatementVisitor.java         |  47 +++++-----
 .../type/PostgreSQLDDLStatementVisitor.java        |  47 +++++-----
 .../sql/common/segment/generic/OwnerAvailable.java |   4 +-
 .../oracle/ddl/OracleAlterSynonymStatement.java    |   3 +-
 .../oracle/ddl/OracleDropDirectoryStatement.java   |   3 +-
 .../ddl/SQLServerAlterTriggerStatement.java        |   3 +-
 .../ddl/SQLServerCreateTriggerStatement.java       |   3 +-
 .../ddl/SQLServerDropTriggerStatement.java         |   3 +-
 21 files changed, 155 insertions(+), 174 deletions(-)

diff --git 
a/db-protocol/postgresql/src/main/java/org/apache/shardingsphere/db/protocol/postgresql/packet/command/query/extended/bind/protocol/PostgreSQLTimeBinaryProtocolValue.java
 
b/db-protocol/postgresql/src/main/java/org/apache/shardingsphere/db/protocol/postgresql/packet/command/query/extended/bind/protocol/PostgreSQLTimeBinaryProtocolValue.java
index dd0c67ced21..e26b4eb0697 100644
--- 
a/db-protocol/postgresql/src/main/java/org/apache/shardingsphere/db/protocol/postgresql/packet/command/query/extended/bind/protocol/PostgreSQLTimeBinaryProtocolValue.java
+++ 
b/db-protocol/postgresql/src/main/java/org/apache/shardingsphere/db/protocol/postgresql/packet/command/query/extended/bind/protocol/PostgreSQLTimeBinaryProtocolValue.java
@@ -39,6 +39,6 @@ public final class PostgreSQLTimeBinaryProtocolValue 
implements PostgreSQLBinary
     
     @Override
     public void write(final PostgreSQLPacketPayload payload, final Object 
value) {
-        
payload.writeInt8(PostgreSQLBinaryTimestampUtils.toPostgreSQLTime((Timestamp) 
value, false));
+        
payload.writeInt8(PostgreSQLBinaryTimestampUtils.toPostgreSQLTime((Timestamp) 
value));
     }
 }
diff --git 
a/db-protocol/postgresql/src/main/java/org/apache/shardingsphere/db/protocol/postgresql/packet/command/query/extended/bind/protocol/util/PostgreSQLBinaryTimestampUtils.java
 
b/db-protocol/postgresql/src/main/java/org/apache/shardingsphere/db/protocol/postgresql/packet/command/query/extended/bind/protocol/util/PostgreSQLBinaryTimestampUtils.java
index 86f42e82837..6293e26e063 100644
--- 
a/db-protocol/postgresql/src/main/java/org/apache/shardingsphere/db/protocol/postgresql/packet/command/query/extended/bind/protocol/util/PostgreSQLBinaryTimestampUtils.java
+++ 
b/db-protocol/postgresql/src/main/java/org/apache/shardingsphere/db/protocol/postgresql/packet/command/query/extended/bind/protocol/util/PostgreSQLBinaryTimestampUtils.java
@@ -38,11 +38,10 @@ public final class PostgreSQLBinaryTimestampUtils {
      * Convert Timestamp to PostgreSQL time.
      *
      * @param timestamp timestamp
-     * @param withTimeZone with time zone
      * @return PostgreSQL time
      */
-    public static long toPostgreSQLTime(final Timestamp timestamp, final 
boolean withTimeZone) {
-        long millis = timestamp.getTime() - (timestamp.getNanos() / 1000000L) 
+ (withTimeZone ? 0L : TimeZone.getDefault().getRawOffset());
+    public static long toPostgreSQLTime(final Timestamp timestamp) {
+        long millis = timestamp.getTime() - (timestamp.getNanos() / 1000000L) 
+ (TimeZone.getDefault().getRawOffset());
         long nanos = timestamp.getNanos() / 1000L;
         long pgSeconds = convertJavaEpochToPgEpoch(millis / 1000L);
         if (nanos >= 1000000L) {
diff --git 
a/db-protocol/postgresql/src/test/java/org/apache/shardingsphere/db/protocol/postgresql/packet/command/query/extended/bind/protocol/PostgreSQLTimeBinaryProtocolValueTest.java
 
b/db-protocol/postgresql/src/test/java/org/apache/shardingsphere/db/protocol/postgresql/packet/command/query/extended/bind/protocol/PostgreSQLTimeBinaryProtocolValueTest.java
index b8fa434d5f6..26b58b94f10 100644
--- 
a/db-protocol/postgresql/src/test/java/org/apache/shardingsphere/db/protocol/postgresql/packet/command/query/extended/bind/protocol/PostgreSQLTimeBinaryProtocolValueTest.java
+++ 
b/db-protocol/postgresql/src/test/java/org/apache/shardingsphere/db/protocol/postgresql/packet/command/query/extended/bind/protocol/PostgreSQLTimeBinaryProtocolValueTest.java
@@ -45,6 +45,6 @@ class PostgreSQLTimeBinaryProtocolValueTest {
         assertThat(actual.read(payload, 8), is(1L));
         Timestamp timestamp = new Timestamp(System.currentTimeMillis());
         actual.write(payload, timestamp);
-        
verify(payload).writeInt8(PostgreSQLBinaryTimestampUtils.toPostgreSQLTime(timestamp,
 false));
+        
verify(payload).writeInt8(PostgreSQLBinaryTimestampUtils.toPostgreSQLTime(timestamp));
     }
 }
diff --git 
a/db-protocol/postgresql/src/test/java/org/apache/shardingsphere/db/protocol/postgresql/packet/command/query/extended/bind/protocol/util/PostgreSQLBinaryTimestampUtilsTest.java
 
b/db-protocol/postgresql/src/test/java/org/apache/shardingsphere/db/protocol/postgresql/packet/command/query/extended/bind/protocol/util/PostgreSQLBinaryTimestampUtilsTest.java
index c58f8ddc7bc..72d5cd630bd 100644
--- 
a/db-protocol/postgresql/src/test/java/org/apache/shardingsphere/db/protocol/postgresql/packet/command/query/extended/bind/protocol/util/PostgreSQLBinaryTimestampUtilsTest.java
+++ 
b/db-protocol/postgresql/src/test/java/org/apache/shardingsphere/db/protocol/postgresql/packet/command/query/extended/bind/protocol/util/PostgreSQLBinaryTimestampUtilsTest.java
@@ -30,12 +30,6 @@ class PostgreSQLBinaryTimestampUtilsTest {
     @Test
     void assertToPostgreSQLTimeWithoutTimeZone() {
         long expected = 688123357272000L + 
TimeZone.getDefault().getRawOffset() * 1000L;
-        assertThat(PostgreSQLBinaryTimestampUtils.toPostgreSQLTime(new 
Timestamp(1634808157272L), false), is(expected));
-    }
-    
-    @Test
-    void assertToPostgreSQLTimeWithTimeZone() {
-        assertThat(PostgreSQLBinaryTimestampUtils.toPostgreSQLTime(new 
Timestamp(1634808157272L), true), is(688123357272000L));
-        assertThat(PostgreSQLBinaryTimestampUtils.toPostgreSQLTime(new 
Timestamp(-15165977600000L), true), is(-16113440000000000L));
+        assertThat(PostgreSQLBinaryTimestampUtils.toPostgreSQLTime(new 
Timestamp(1634808157272L)), is(expected));
     }
 }
diff --git 
a/features/mask/core/src/test/java/org/apache/shardingsphere/mask/algorithm/replace/MilitaryIdentityNumberRandomReplaceAlgorithmTest.java
 
b/features/mask/core/src/test/java/org/apache/shardingsphere/mask/algorithm/replace/MilitaryIdentityNumberRandomReplaceAlgorithmTest.java
index 7139e9f57c3..0b42067a4ec 100644
--- 
a/features/mask/core/src/test/java/org/apache/shardingsphere/mask/algorithm/replace/MilitaryIdentityNumberRandomReplaceAlgorithmTest.java
+++ 
b/features/mask/core/src/test/java/org/apache/shardingsphere/mask/algorithm/replace/MilitaryIdentityNumberRandomReplaceAlgorithmTest.java
@@ -18,7 +18,6 @@
 package org.apache.shardingsphere.mask.algorithm.replace;
 
 import 
org.apache.shardingsphere.mask.exception.algorithm.MaskAlgorithmInitializationException;
-import org.apache.shardingsphere.mask.spi.MaskAlgorithm;
 import org.apache.shardingsphere.test.util.PropertiesBuilder;
 import org.apache.shardingsphere.test.util.PropertiesBuilder.Property;
 import org.junit.jupiter.api.BeforeEach;
@@ -50,8 +49,8 @@ class MilitaryIdentityNumberRandomReplaceAlgorithmTest {
     }
     
     @Test
-    void testMaskWithInvalidProps() {
-        MaskAlgorithm algorithm = new 
MilitaryIdentityNumberRandomReplaceAlgorithm();
+    void assertMaskWithInvalidProps() {
+        MilitaryIdentityNumberRandomReplaceAlgorithm algorithm = new 
MilitaryIdentityNumberRandomReplaceAlgorithm();
         assertThrows(MaskAlgorithmInitializationException.class, () -> 
algorithm.init(new Properties()));
     }
 }
diff --git 
a/jdbc/core/src/test/java/org/apache/shardingsphere/driver/jdbc/context/JDBCContextTest.java
 
b/jdbc/core/src/test/java/org/apache/shardingsphere/driver/jdbc/context/JDBCContextTest.java
index 7f76de99535..fef2f2240ae 100644
--- 
a/jdbc/core/src/test/java/org/apache/shardingsphere/driver/jdbc/context/JDBCContextTest.java
+++ 
b/jdbc/core/src/test/java/org/apache/shardingsphere/driver/jdbc/context/JDBCContextTest.java
@@ -23,10 +23,8 @@ import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.extension.ExtendWith;
 import org.mockito.junit.jupiter.MockitoExtension;
 
-import javax.sql.DataSource;
 import java.sql.SQLException;
-import java.util.HashMap;
-import java.util.Map;
+import java.util.Collections;
 
 import static org.junit.jupiter.api.Assertions.assertNotNull;
 import static org.junit.jupiter.api.Assertions.assertNull;
@@ -36,30 +34,19 @@ import static org.mockito.Mockito.mock;
 class JDBCContextTest {
     
     @Test
-    void assertNullCachedDbMetadataWithEmptyDatasource() throws Exception {
-        JDBCContext actual = new JDBCContext(new HashMap<>());
-        assertNull(actual.getCachedDatabaseMetaData());
+    void assertGetCachedDatabaseMetaDataForNullValue() throws Exception {
+        assertNull(new 
JDBCContext(Collections.emptyMap()).getCachedDatabaseMetaData());
     }
     
     @Test
-    void assertNotNullCashedDbMetadataWith() throws SQLException {
-        Map<String, DataSource> dataSourceMap = getStringDataSourceMap();
-        JDBCContext jdbcContext = new JDBCContext(dataSourceMap);
-        assertNotNull(jdbcContext.getCachedDatabaseMetaData());
+    void assertGetCachedDatabaseMetaDataForSingleValue() throws SQLException {
+        assertNotNull(new JDBCContext(Collections.singletonMap("foo_db", new 
CircuitBreakerDataSource())).getCachedDatabaseMetaData());
     }
     
     @Test
-    void assetNullMetadataAfterRefreshingExisting() throws SQLException {
-        Map<String, DataSource> stringDataSourceMap = getStringDataSourceMap();
-        JDBCContext jdbcContext = new JDBCContext(stringDataSourceMap);
-        DataSourceChangedEvent event = mock();
-        jdbcContext.refreshCachedDatabaseMetaData(event);
+    void assertGetCachedDatabaseMetaDataAfterRefreshingExisting() throws 
SQLException {
+        JDBCContext jdbcContext = new 
JDBCContext(Collections.singletonMap("foo_db", new CircuitBreakerDataSource()));
+        
jdbcContext.refreshCachedDatabaseMetaData(mock(DataSourceChangedEvent.class));
         assertNull(jdbcContext.getCachedDatabaseMetaData());
     }
-    
-    private static Map<String, DataSource> getStringDataSourceMap() {
-        Map<String, DataSource> result = new HashMap<>();
-        result.put("test_db", new CircuitBreakerDataSource());
-        return result;
-    }
 }
diff --git 
a/kernel/data-pipeline/cdc/core/src/main/java/org/apache/shardingsphere/data/pipeline/cdc/core/importer/CDCImporter.java
 
b/kernel/data-pipeline/cdc/core/src/main/java/org/apache/shardingsphere/data/pipeline/cdc/core/importer/CDCImporter.java
index f5124b3bfbd..909b678994f 100644
--- 
a/kernel/data-pipeline/cdc/core/src/main/java/org/apache/shardingsphere/data/pipeline/cdc/core/importer/CDCImporter.java
+++ 
b/kernel/data-pipeline/cdc/core/src/main/java/org/apache/shardingsphere/data/pipeline/cdc/core/importer/CDCImporter.java
@@ -140,7 +140,7 @@ public final class CDCImporter extends 
AbstractLifecycleExecutor implements Impo
     }
     
     private List<Record> filterDataRecords(final List<Record> records) {
-        return records.stream().filter(DataRecord.class::isInstance).map(each 
-> (DataRecord) each).collect(Collectors.toList());
+        return 
records.stream().filter(DataRecord.class::isInstance).map(DataRecord.class::cast).collect(Collectors.toList());
     }
     
     // TODO openGauss CSN should be incremented for every transaction. 
Currently, CSN might be duplicated in transactions.
diff --git 
a/kernel/data-pipeline/cdc/core/src/main/java/org/apache/shardingsphere/data/pipeline/cdc/core/importer/CDCImporterManager.java
 
b/kernel/data-pipeline/cdc/core/src/main/java/org/apache/shardingsphere/data/pipeline/cdc/core/importer/CDCImporterManager.java
index 62f684da2a1..4e3a4b9bd2e 100644
--- 
a/kernel/data-pipeline/cdc/core/src/main/java/org/apache/shardingsphere/data/pipeline/cdc/core/importer/CDCImporterManager.java
+++ 
b/kernel/data-pipeline/cdc/core/src/main/java/org/apache/shardingsphere/data/pipeline/cdc/core/importer/CDCImporterManager.java
@@ -17,12 +17,16 @@
 
 package org.apache.shardingsphere.data.pipeline.cdc.core.importer;
 
+import lombok.AccessLevel;
+import lombok.NoArgsConstructor;
+
 import java.util.Map;
 import java.util.concurrent.ConcurrentHashMap;
 
 /**
  * CDC importer manager.
  */
+@NoArgsConstructor(access = AccessLevel.PRIVATE)
 public final class CDCImporterManager {
     
     private static final Map<String, CDCImporter> IMPORTER_MAP = new 
ConcurrentHashMap<>();
diff --git 
a/kernel/data-pipeline/cdc/core/src/main/java/org/apache/shardingsphere/data/pipeline/cdc/core/prepare/CDCJobPreparer.java
 
b/kernel/data-pipeline/cdc/core/src/main/java/org/apache/shardingsphere/data/pipeline/cdc/core/prepare/CDCJobPreparer.java
index 5fb6519ca36..df128b65300 100644
--- 
a/kernel/data-pipeline/cdc/core/src/main/java/org/apache/shardingsphere/data/pipeline/cdc/core/prepare/CDCJobPreparer.java
+++ 
b/kernel/data-pipeline/cdc/core/src/main/java/org/apache/shardingsphere/data/pipeline/cdc/core/prepare/CDCJobPreparer.java
@@ -120,9 +120,10 @@ public final class CDCJobPreparer {
             PipelineChannel channel = 
PipelineTaskUtils.createInventoryChannel(processContext.getPipelineChannelCreator(),
 importerConfig.getBatchSize(), position);
             channelProgressPairs.add(new CDCChannelProgressPair(channel, 
jobItemContext));
             Dumper dumper = new InventoryDumper(each, channel, 
jobItemContext.getSourceDataSource(), jobItemContext.getSourceMetaDataLoader());
-            Importer importer = importerUsed.get() ? null : new 
CDCImporter(channelProgressPairs, importerConfig.getBatchSize(), 3, 
TimeUnit.SECONDS, jobItemContext.getSink(),
-                    needSorting(ImporterType.INVENTORY, 
hasGlobalCSN(taskConfig.getDumperConfig().getDataSourceConfig().getDatabaseType())),
-                    importerConfig.getRateLimitAlgorithm());
+            Importer importer = importerUsed.get() ? null
+                    : new CDCImporter(channelProgressPairs, 
importerConfig.getBatchSize(), 3, TimeUnit.SECONDS, jobItemContext.getSink(),
+                            needSorting(ImporterType.INVENTORY, 
hasGlobalCSN(taskConfig.getDumperConfig().getDataSourceConfig().getDatabaseType())),
+                            importerConfig.getRateLimitAlgorithm());
             jobItemContext.getInventoryTasks().add(new 
CDCInventoryTask(PipelineTaskUtils.generateInventoryTaskId(each), 
processContext.getInventoryDumperExecuteEngine(),
                     processContext.getInventoryImporterExecuteEngine(), 
dumper, importer, position));
             importerUsed.set(true);
@@ -148,8 +149,9 @@ public final class CDCJobPreparer {
         Dumper dumper = 
PipelineTypedSPILoader.getDatabaseTypedService(IncrementalDumperCreator.class, 
dumperConfig.getDataSourceConfig().getDatabaseType().getType())
                 .createIncrementalDumper(dumperConfig, 
dumperConfig.getPosition(), channel, jobItemContext.getSourceMetaDataLoader());
         boolean needSorting = needSorting(ImporterType.INCREMENTAL, 
hasGlobalCSN(importerConfig.getDataSourceConfig().getDatabaseType()));
-        Importer importer = importerUsed.get() ? null : new 
CDCImporter(channelProgressPairs, importerConfig.getBatchSize(), 300, 
TimeUnit.MILLISECONDS,
-                jobItemContext.getSink(), needSorting, 
importerConfig.getRateLimitAlgorithm());
+        Importer importer = importerUsed.get() ? null
+                : new CDCImporter(channelProgressPairs, 
importerConfig.getBatchSize(), 300, TimeUnit.MILLISECONDS,
+                        jobItemContext.getSink(), needSorting, 
importerConfig.getRateLimitAlgorithm());
         PipelineTask incrementalTask = new 
CDCIncrementalTask(dumperConfig.getDataSourceName(), 
jobItemContext.getJobProcessContext().getIncrementalExecuteEngine(), dumper, 
importer, taskProgress);
         jobItemContext.getIncrementalTasks().add(incrementalTask);
         importerUsed.set(true);
diff --git 
a/kernel/data-pipeline/cdc/core/src/main/java/org/apache/shardingsphere/data/pipeline/cdc/util/CDCSchemaTableUtils.java
 
b/kernel/data-pipeline/cdc/core/src/main/java/org/apache/shardingsphere/data/pipeline/cdc/util/CDCSchemaTableUtils.java
index a6db39787e1..ad3f1b24177 100644
--- 
a/kernel/data-pipeline/cdc/core/src/main/java/org/apache/shardingsphere/data/pipeline/cdc/util/CDCSchemaTableUtils.java
+++ 
b/kernel/data-pipeline/cdc/core/src/main/java/org/apache/shardingsphere/data/pipeline/cdc/util/CDCSchemaTableUtils.java
@@ -50,11 +50,11 @@ public final class CDCSchemaTableUtils {
      * @return map key is schema, value is table names
      */
     public static Map<String, Set<String>> 
parseTableExpressionWithSchema(final ShardingSphereDatabase database, final 
Collection<SchemaTable> schemaTables) {
-        Map<String, Set<String>> result = new HashMap<>();
         Collection<String> systemSchemas = 
database.getProtocolType().getSystemSchemas();
         if (schemaTables.stream().anyMatch(each -> "*".equals(each.getTable()) 
&& ("*".equals(each.getSchema()) || each.getSchema().isEmpty()))) {
             return parseTableExpressionWithAllTables(database, systemSchemas);
         }
+        Map<String, Set<String>> result = new HashMap<>();
         for (SchemaTable each : schemaTables) {
             if ("*".equals(each.getSchema())) {
                 result.putAll(parseTableExpressionWithAllSchema(database, 
systemSchemas, each));
diff --git 
a/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/core/check/consistency/SingleTableInventoryDataConsistencyChecker.java
 
b/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/core/check/consistency/SingleTableInventoryDataConsistencyChecker.java
index c87ce527f6d..a126d1d942d 100644
--- 
a/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/core/check/consistency/SingleTableInventoryDataConsistencyChecker.java
+++ 
b/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/core/check/consistency/SingleTableInventoryDataConsistencyChecker.java
@@ -96,11 +96,11 @@ public final class 
SingleTableInventoryDataConsistencyChecker {
         String schemaName = sourceTable.getSchemaName().getOriginal();
         String sourceTableName = sourceTable.getTableName().getOriginal();
         Map<String, Object> tableCheckPositions = 
progressContext.getTableCheckPositions();
-        DataConsistencyCalculateParameter sourceParam = buildParameter(
-                sourceDataSource, schemaName, sourceTableName, columnNames, 
sourceDatabaseType, targetDatabaseType, uniqueKey, 
tableCheckPositions.get(sourceTableName));
+        DataConsistencyCalculateParameter sourceParam = new 
DataConsistencyCalculateParameter(sourceDataSource,
+                schemaName, sourceTableName, columnNames, sourceDatabaseType, 
targetDatabaseType, uniqueKey, tableCheckPositions.get(sourceTableName));
         String targetTableName = targetTable.getTableName().getOriginal();
-        DataConsistencyCalculateParameter targetParam = 
buildParameter(targetDataSource, targetTable.getSchemaName().getOriginal(), 
targetTableName,
-                columnNames, targetDatabaseType, sourceDatabaseType, 
uniqueKey, tableCheckPositions.get(targetTableName));
+        DataConsistencyCalculateParameter targetParam = new 
DataConsistencyCalculateParameter(targetDataSource,
+                targetTable.getSchemaName().getOriginal(), targetTableName, 
columnNames, targetDatabaseType, sourceDatabaseType, uniqueKey, 
tableCheckPositions.get(targetTableName));
         Iterator<DataConsistencyCalculatedResult> sourceCalculatedResults = 
waitFuture(executor.submit(() -> 
calculateAlgorithm.calculate(sourceParam))).iterator();
         Iterator<DataConsistencyCalculatedResult> targetCalculatedResults = 
waitFuture(executor.submit(() -> 
calculateAlgorithm.calculate(targetParam))).iterator();
         try {
@@ -145,13 +145,6 @@ public final class 
SingleTableInventoryDataConsistencyChecker {
         return jobId.length() <= 6 ? jobId : jobId.substring(0, 6);
     }
     
-    private DataConsistencyCalculateParameter buildParameter(final 
PipelineDataSourceWrapper sourceDataSource,
-                                                             final String 
schemaName, final String tableName, final List<String> columnNames,
-                                                             final String 
sourceDatabaseType, final String targetDatabaseType, final 
PipelineColumnMetaData uniqueKey,
-                                                             final Object 
tableCheckPosition) {
-        return new DataConsistencyCalculateParameter(sourceDataSource, 
schemaName, tableName, columnNames, sourceDatabaseType, targetDatabaseType, 
uniqueKey, tableCheckPosition);
-    }
-    
     private <T> T waitFuture(final Future<T> future) {
         try {
             return future.get();
diff --git 
a/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/core/importer/sink/PipelineDataSourceSink.java
 
b/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/core/importer/sink/PipelineDataSourceSink.java
index 13720675810..c75c6fc2498 100644
--- 
a/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/core/importer/sink/PipelineDataSourceSink.java
+++ 
b/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/core/importer/sink/PipelineDataSourceSink.java
@@ -166,25 +166,36 @@ public final class PipelineDataSourceSink implements 
PipelineSink {
         }
     }
     
-    private void doFlush(final Connection connection, final DataRecord each) 
throws SQLException {
-        switch (each.getType()) {
+    private void doFlush(final Connection connection, final List<DataRecord> 
buffer) {
+        // TODO it's better use transaction, but execute delete maybe not 
effect when open transaction of PostgreSQL sometimes
+        for (DataRecord each : buffer) {
+            try {
+                doFlush(connection, each);
+            } catch (final SQLException ex) {
+                throw new 
PipelineImporterJobWriteException(String.format("Write failed, record=%s", 
each), ex);
+            }
+        }
+    }
+    
+    private void doFlush(final Connection connection, final DataRecord 
dataRecord) throws SQLException {
+        switch (dataRecord.getType()) {
             case IngestDataChangeType.INSERT:
                 if (null != rateLimitAlgorithm) {
                     rateLimitAlgorithm.intercept(JobOperationType.INSERT, 1);
                 }
-                executeBatchInsert(connection, 
Collections.singletonList(each));
+                executeBatchInsert(connection, 
Collections.singletonList(dataRecord));
                 break;
             case IngestDataChangeType.UPDATE:
                 if (null != rateLimitAlgorithm) {
                     rateLimitAlgorithm.intercept(JobOperationType.UPDATE, 1);
                 }
-                executeUpdate(connection, each);
+                executeUpdate(connection, dataRecord);
                 break;
             case IngestDataChangeType.DELETE:
                 if (null != rateLimitAlgorithm) {
                     rateLimitAlgorithm.intercept(JobOperationType.DELETE, 1);
                 }
-                executeBatchDelete(connection, 
Collections.singletonList(each));
+                executeBatchDelete(connection, 
Collections.singletonList(dataRecord));
                 break;
             default:
         }
@@ -279,14 +290,7 @@ public final class PipelineDataSourceSink implements 
PipelineSink {
             return;
         }
         try (Connection connection = dataSource.getConnection()) {
-            // TODO it's better use transaction, but execute delete maybe not 
effect when open transaction of PostgreSQL sometimes
-            for (DataRecord each : buffer) {
-                try {
-                    doFlush(connection, each);
-                } catch (final SQLException ex) {
-                    throw new 
PipelineImporterJobWriteException(String.format("Write failed, record=%s", 
each), ex);
-                }
-            }
+            doFlush(connection, buffer);
         } catch (final SQLException ex) {
             throw new PipelineImporterJobWriteException(ex);
         }
diff --git 
a/parser/sql/dialect/mysql/src/main/java/org/apache/shardingsphere/sql/parser/mysql/visitor/statement/type/MySQLDDLStatementVisitor.java
 
b/parser/sql/dialect/mysql/src/main/java/org/apache/shardingsphere/sql/parser/mysql/visitor/statement/type/MySQLDDLStatementVisitor.java
index 8715e02b99f..388490e2f0e 100644
--- 
a/parser/sql/dialect/mysql/src/main/java/org/apache/shardingsphere/sql/parser/mysql/visitor/statement/type/MySQLDDLStatementVisitor.java
+++ 
b/parser/sql/dialect/mysql/src/main/java/org/apache/shardingsphere/sql/parser/mysql/visitor/statement/type/MySQLDDLStatementVisitor.java
@@ -184,6 +184,7 @@ import java.util.Collection;
 import java.util.Collections;
 import java.util.LinkedList;
 import java.util.List;
+import java.util.Optional;
 
 /**
  * DDL statement visitor for MySQL.
@@ -349,50 +350,63 @@ public final class MySQLDDLStatementVisitor extends 
MySQLStatementVisitor implem
     private Collection<AlterDefinitionSegment> 
getAlterDefinitionSegments(final AlterListContext ctx) {
         Collection<AlterDefinitionSegment> result = new LinkedList<>();
         for (AlterListItemContext each : ctx.alterListItem()) {
-            if (each instanceof AddColumnContext) {
-                result.add((AddColumnDefinitionSegment) visit(each));
-            }
-            if (each instanceof AlterConstraintContext || each instanceof 
AlterCheckContext) {
-                result.add((AlterDefinitionSegment) visit(each));
-            }
-            if (each instanceof ChangeColumnContext) {
-                
result.add(generateModifyColumnDefinitionSegment((ChangeColumnContext) each));
-            }
-            if (each instanceof ModifyColumnContext) {
-                
result.add(generateModifyColumnDefinitionSegment((ModifyColumnContext) each));
-            }
-            if (each instanceof AlterTableDropContext) {
-                AlterTableDropContext alterTableDrop = (AlterTableDropContext) 
each;
-                if (null != alterTableDrop.CHECK() || null != 
alterTableDrop.CONSTRAINT()) {
-                    ConstraintSegment constraintSegment = new 
ConstraintSegment(alterTableDrop.identifier().getStart().getStartIndex(), 
alterTableDrop.identifier().getStop().getStopIndex(),
-                            (IdentifierValue) 
visit(alterTableDrop.identifier()));
-                    result.add(new 
DropConstraintDefinitionSegment(ctx.getStart().getStartIndex(), 
ctx.getStop().getStopIndex(), constraintSegment));
-                } else if (null == alterTableDrop.KEY() && null == 
alterTableDrop.keyOrIndex()) {
-                    
result.add(generateDropColumnDefinitionSegment(alterTableDrop));
-                } else if (null != alterTableDrop.keyOrIndex()) {
-                    IndexSegment indexSegment = (IndexSegment) 
visit(alterTableDrop.indexName());
-                    result.add(new 
DropIndexDefinitionSegment(ctx.getStart().getStartIndex(), 
ctx.getStop().getStopIndex(), indexSegment));
-                }
-            }
-            if (each instanceof AddTableConstraintContext) {
-                result.add((AddConstraintDefinitionSegment) visit(each));
-            }
-            if (each instanceof AlterRenameTableContext) {
-                result.add((RenameTableDefinitionSegment) visit(each));
-            }
-            if (each instanceof AlterConvertContext) {
-                result.add((ConvertTableDefinitionSegment) visit(each));
-            }
-            if (each instanceof RenameColumnContext) {
-                result.add((RenameColumnSegment) visit(each));
-            }
-            if (each instanceof RenameIndexContext) {
-                result.add((RenameIndexDefinitionSegment) visit(each));
-            }
+            getAlterDefinitionSegment(ctx, each).ifPresent(result::add);
         }
         return result;
     }
     
+    private Optional<AlterDefinitionSegment> getAlterDefinitionSegment(final 
AlterListContext alterListContext, final AlterListItemContext 
alterListItemContext) {
+        if (alterListItemContext instanceof AddColumnContext) {
+            return Optional.of((AddColumnDefinitionSegment) 
visit(alterListItemContext));
+        }
+        if (alterListItemContext instanceof AlterConstraintContext || 
alterListItemContext instanceof AlterCheckContext) {
+            return Optional.of((AlterDefinitionSegment) 
visit(alterListItemContext));
+        }
+        if (alterListItemContext instanceof ChangeColumnContext) {
+            return 
Optional.of(generateModifyColumnDefinitionSegment((ChangeColumnContext) 
alterListItemContext));
+        }
+        if (alterListItemContext instanceof ModifyColumnContext) {
+            return 
Optional.of(generateModifyColumnDefinitionSegment((ModifyColumnContext) 
alterListItemContext));
+        }
+        if (alterListItemContext instanceof AlterTableDropContext) {
+            return getDropItemDefinitionSegment(alterListContext, 
(AlterTableDropContext) alterListItemContext);
+        }
+        if (alterListItemContext instanceof AddTableConstraintContext) {
+            return Optional.of((AddConstraintDefinitionSegment) 
visit(alterListItemContext));
+        }
+        if (alterListItemContext instanceof AlterRenameTableContext) {
+            return Optional.of((RenameTableDefinitionSegment) 
visit(alterListItemContext));
+        }
+        if (alterListItemContext instanceof AlterConvertContext) {
+            return Optional.of((ConvertTableDefinitionSegment) 
visit(alterListItemContext));
+        }
+        if (alterListItemContext instanceof RenameColumnContext) {
+            return Optional.of((RenameColumnSegment) 
visit(alterListItemContext));
+        }
+        if (alterListItemContext instanceof RenameIndexContext) {
+            return Optional.of((RenameIndexDefinitionSegment) 
visit(alterListItemContext));
+        }
+        return Optional.empty();
+    }
+    
+    private Optional<AlterDefinitionSegment> 
getDropItemDefinitionSegment(final AlterListContext alterListContext, final 
AlterTableDropContext alterTableDrop) {
+        if (null != alterTableDrop.CHECK() || null != 
alterTableDrop.CONSTRAINT()) {
+            ConstraintSegment constraint = new 
ConstraintSegment(alterTableDrop.identifier().getStart().getStartIndex(), 
alterTableDrop.identifier().getStop().getStopIndex(),
+                    (IdentifierValue) visit(alterTableDrop.identifier()));
+            return Optional.of(new 
DropConstraintDefinitionSegment(alterListContext.getStart().getStartIndex(), 
alterListContext.getStop().getStopIndex(), constraint));
+        }
+        if (null == alterTableDrop.KEY() && null == 
alterTableDrop.keyOrIndex()) {
+            ColumnSegment column = new 
ColumnSegment(alterTableDrop.columnInternalRef.start.getStartIndex(), 
alterTableDrop.columnInternalRef.stop.getStopIndex(),
+                    (IdentifierValue) visit(alterTableDrop.columnInternalRef));
+            return Optional.of(new 
DropColumnDefinitionSegment(alterTableDrop.getStart().getStartIndex(), 
alterTableDrop.getStop().getStopIndex(), Collections.singleton(column)));
+        }
+        if (null != alterTableDrop.keyOrIndex()) {
+            return Optional.of(
+                    new 
DropIndexDefinitionSegment(alterListContext.getStart().getStartIndex(), 
alterListContext.getStop().getStopIndex(), (IndexSegment) 
visit(alterTableDrop.indexName())));
+        }
+        return Optional.empty();
+    }
+    
     @Override
     public ASTNode visitAlterAlgorithmOption(final AlterAlgorithmOptionContext 
ctx) {
         AlgorithmOption algorithmOption = null;
@@ -472,12 +486,6 @@ public final class MySQLDDLStatementVisitor extends 
MySQLStatementVisitor implem
         return result;
     }
     
-    private DropColumnDefinitionSegment 
generateDropColumnDefinitionSegment(final AlterTableDropContext ctx) {
-        ColumnSegment column = new 
ColumnSegment(ctx.columnInternalRef.start.getStartIndex(), 
ctx.columnInternalRef.stop.getStopIndex(),
-                (IdentifierValue) visit(ctx.columnInternalRef));
-        return new DropColumnDefinitionSegment(ctx.getStart().getStartIndex(), 
ctx.getStop().getStopIndex(), Collections.singletonList(column));
-    }
-    
     private ModifyColumnDefinitionSegment 
generateModifyColumnDefinitionSegment(final ModifyColumnContext ctx) {
         ColumnSegment column = new 
ColumnSegment(ctx.columnInternalRef.start.getStartIndex(), 
ctx.columnInternalRef.stop.getStopIndex(), (IdentifierValue) 
visit(ctx.columnInternalRef));
         ModifyColumnDefinitionSegment result = new 
ModifyColumnDefinitionSegment(
diff --git 
a/parser/sql/dialect/opengauss/src/main/java/org/apache/shardingsphere/sql/parser/opengauss/visitor/statement/type/OpenGaussDDLStatementVisitor.java
 
b/parser/sql/dialect/opengauss/src/main/java/org/apache/shardingsphere/sql/parser/opengauss/visitor/statement/type/OpenGaussDDLStatementVisitor.java
index 41e550f64e6..5586241bc55 100644
--- 
a/parser/sql/dialect/opengauss/src/main/java/org/apache/shardingsphere/sql/parser/opengauss/visitor/statement/type/OpenGaussDDLStatementVisitor.java
+++ 
b/parser/sql/dialect/opengauss/src/main/java/org/apache/shardingsphere/sql/parser/opengauss/visitor/statement/type/OpenGaussDDLStatementVisitor.java
@@ -247,6 +247,7 @@ import java.util.Collections;
 import java.util.Iterator;
 import java.util.LinkedList;
 import java.util.Optional;
+import java.util.stream.Collectors;
 
 /**
  * DDL statement visitor for openGauss.
@@ -328,7 +329,7 @@ public final class OpenGaussDDLStatementVisitor extends 
OpenGaussStatementVisito
     public ASTNode visitAlterDefinitionClause(final 
AlterDefinitionClauseContext ctx) {
         CollectionValue<AlterDefinitionSegment> result = new 
CollectionValue<>();
         if (null != ctx.alterTableActions()) {
-            result.getValue().addAll(getAlterDefinitionSegments(ctx));
+            
result.getValue().addAll(ctx.alterTableActions().alterTableAction().stream().flatMap(each
 -> getAlterDefinitionSegments(each).stream()).collect(Collectors.toList()));
         }
         if (null != ctx.renameTableSpecification()) {
             result.getValue().add((RenameTableDefinitionSegment) 
visit(ctx.renameTableSpecification()));
@@ -337,30 +338,28 @@ public final class OpenGaussDDLStatementVisitor extends 
OpenGaussStatementVisito
     }
     
     @SuppressWarnings("unchecked")
-    private Collection<AlterDefinitionSegment> 
getAlterDefinitionSegments(final AlterDefinitionClauseContext ctx) {
+    private Collection<AlterDefinitionSegment> 
getAlterDefinitionSegments(final AlterTableActionContext ctx) {
         Collection<AlterDefinitionSegment> result = new LinkedList<>();
-        for (AlterTableActionContext each : 
ctx.alterTableActions().alterTableAction()) {
-            if (null != each.addColumnSpecification()) {
-                result.addAll(((CollectionValue<AddColumnDefinitionSegment>) 
visit(each.addColumnSpecification())).getValue());
-            }
-            if (null != each.addConstraintSpecification() && null != 
each.addConstraintSpecification().tableConstraint()) {
-                result.add((AddConstraintDefinitionSegment) 
visit(each.addConstraintSpecification()));
-            }
-            if (null != each.validateConstraintSpecification()) {
-                result.add((ValidateConstraintDefinitionSegment) 
visit(each.validateConstraintSpecification()));
-            }
-            if (null != each.modifyColumnSpecification()) {
-                result.add((ModifyColumnDefinitionSegment) 
visit(each.modifyColumnSpecification()));
-            }
-            if (null != each.modifyConstraintSpecification()) {
-                result.add((ModifyConstraintDefinitionSegment) 
visit(each.modifyConstraintSpecification()));
-            }
-            if (null != each.dropColumnSpecification()) {
-                result.add((DropColumnDefinitionSegment) 
visit(each.dropColumnSpecification()));
-            }
-            if (null != each.dropConstraintSpecification()) {
-                result.add((DropConstraintDefinitionSegment) 
visit(each.dropConstraintSpecification()));
-            }
+        if (null != ctx.addColumnSpecification()) {
+            result.addAll(((CollectionValue<AddColumnDefinitionSegment>) 
visit(ctx.addColumnSpecification())).getValue());
+        }
+        if (null != ctx.addConstraintSpecification() && null != 
ctx.addConstraintSpecification().tableConstraint()) {
+            result.add((AddConstraintDefinitionSegment) 
visit(ctx.addConstraintSpecification()));
+        }
+        if (null != ctx.validateConstraintSpecification()) {
+            result.add((ValidateConstraintDefinitionSegment) 
visit(ctx.validateConstraintSpecification()));
+        }
+        if (null != ctx.modifyColumnSpecification()) {
+            result.add((ModifyColumnDefinitionSegment) 
visit(ctx.modifyColumnSpecification()));
+        }
+        if (null != ctx.modifyConstraintSpecification()) {
+            result.add((ModifyConstraintDefinitionSegment) 
visit(ctx.modifyConstraintSpecification()));
+        }
+        if (null != ctx.dropColumnSpecification()) {
+            result.add((DropColumnDefinitionSegment) 
visit(ctx.dropColumnSpecification()));
+        }
+        if (null != ctx.dropConstraintSpecification()) {
+            result.add((DropConstraintDefinitionSegment) 
visit(ctx.dropConstraintSpecification()));
         }
         return result;
     }
diff --git 
a/parser/sql/dialect/postgresql/src/main/java/org/apache/shardingsphere/sql/parser/postgresql/visitor/statement/type/PostgreSQLDDLStatementVisitor.java
 
b/parser/sql/dialect/postgresql/src/main/java/org/apache/shardingsphere/sql/parser/postgresql/visitor/statement/type/PostgreSQLDDLStatementVisitor.java
index 541fa851f86..5a2ba04d303 100644
--- 
a/parser/sql/dialect/postgresql/src/main/java/org/apache/shardingsphere/sql/parser/postgresql/visitor/statement/type/PostgreSQLDDLStatementVisitor.java
+++ 
b/parser/sql/dialect/postgresql/src/main/java/org/apache/shardingsphere/sql/parser/postgresql/visitor/statement/type/PostgreSQLDDLStatementVisitor.java
@@ -320,6 +320,7 @@ import java.util.Collections;
 import java.util.Iterator;
 import java.util.LinkedList;
 import java.util.Optional;
+import java.util.stream.Collectors;
 
 /**
  * DDL statement visitor for PostgreSQL.
@@ -411,7 +412,7 @@ public final class PostgreSQLDDLStatementVisitor extends 
PostgreSQLStatementVisi
     public ASTNode visitAlterDefinitionClause(final 
AlterDefinitionClauseContext ctx) {
         CollectionValue<AlterDefinitionSegment> result = new 
CollectionValue<>();
         if (null != ctx.alterTableActions()) {
-            result.getValue().addAll(getAlterDefinitionSegments(ctx));
+            
result.getValue().addAll(ctx.alterTableActions().alterTableAction().stream().flatMap(each
 -> getAlterDefinitionSegments(each).stream()).collect(Collectors.toList()));
         }
         if (null != ctx.renameTableSpecification()) {
             result.getValue().add((RenameTableDefinitionSegment) 
visit(ctx.renameTableSpecification()));
@@ -420,30 +421,28 @@ public final class PostgreSQLDDLStatementVisitor extends 
PostgreSQLStatementVisi
     }
     
     @SuppressWarnings("unchecked")
-    private Collection<AlterDefinitionSegment> 
getAlterDefinitionSegments(final AlterDefinitionClauseContext ctx) {
+    private Collection<AlterDefinitionSegment> 
getAlterDefinitionSegments(final AlterTableActionContext ctx) {
         Collection<AlterDefinitionSegment> result = new LinkedList<>();
-        for (AlterTableActionContext each : 
ctx.alterTableActions().alterTableAction()) {
-            if (null != each.addColumnSpecification()) {
-                result.addAll(((CollectionValue<AddColumnDefinitionSegment>) 
visit(each.addColumnSpecification())).getValue());
-            }
-            if (null != each.addConstraintSpecification() && null != 
each.addConstraintSpecification().tableConstraint()) {
-                result.add((AddConstraintDefinitionSegment) 
visit(each.addConstraintSpecification()));
-            }
-            if (null != each.validateConstraintSpecification()) {
-                result.add((ValidateConstraintDefinitionSegment) 
visit(each.validateConstraintSpecification()));
-            }
-            if (null != each.modifyColumnSpecification()) {
-                result.add((ModifyColumnDefinitionSegment) 
visit(each.modifyColumnSpecification()));
-            }
-            if (null != each.modifyConstraintSpecification()) {
-                result.add((ModifyConstraintDefinitionSegment) 
visit(each.modifyConstraintSpecification()));
-            }
-            if (null != each.dropColumnSpecification()) {
-                result.add((DropColumnDefinitionSegment) 
visit(each.dropColumnSpecification()));
-            }
-            if (null != each.dropConstraintSpecification()) {
-                result.add((DropConstraintDefinitionSegment) 
visit(each.dropConstraintSpecification()));
-            }
+        if (null != ctx.addColumnSpecification()) {
+            result.addAll(((CollectionValue<AddColumnDefinitionSegment>) 
visit(ctx.addColumnSpecification())).getValue());
+        }
+        if (null != ctx.addConstraintSpecification() && null != 
ctx.addConstraintSpecification().tableConstraint()) {
+            result.add((AddConstraintDefinitionSegment) 
visit(ctx.addConstraintSpecification()));
+        }
+        if (null != ctx.validateConstraintSpecification()) {
+            result.add((ValidateConstraintDefinitionSegment) 
visit(ctx.validateConstraintSpecification()));
+        }
+        if (null != ctx.modifyColumnSpecification()) {
+            result.add((ModifyColumnDefinitionSegment) 
visit(ctx.modifyColumnSpecification()));
+        }
+        if (null != ctx.modifyConstraintSpecification()) {
+            result.add((ModifyConstraintDefinitionSegment) 
visit(ctx.modifyConstraintSpecification()));
+        }
+        if (null != ctx.dropColumnSpecification()) {
+            result.add((DropColumnDefinitionSegment) 
visit(ctx.dropColumnSpecification()));
+        }
+        if (null != ctx.dropConstraintSpecification()) {
+            result.add((DropConstraintDefinitionSegment) 
visit(ctx.dropConstraintSpecification()));
         }
         return result;
     }
diff --git 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/segment/generic/OwnerAvailable.java
 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/segment/generic/OwnerAvailable.java
index 63630f95081..5ebc507c7e1 100644
--- 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/segment/generic/OwnerAvailable.java
+++ 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/segment/generic/OwnerAvailable.java
@@ -17,15 +17,13 @@
 
 package org.apache.shardingsphere.sql.parser.sql.common.segment.generic;
 
-import org.apache.shardingsphere.sql.parser.sql.common.segment.SQLSegment;
-
 import java.util.Optional;
 
 /**
  * Owner available.
  *
  */
-public interface OwnerAvailable extends SQLSegment {
+public interface OwnerAvailable {
     
     /**
      * Get owner.
diff --git 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/oracle/ddl/OracleAlterSynonymStatement.java
 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/oracle/ddl/OracleAlterSynonymStatement.java
index d316fb382b5..82f9231dd4b 100644
--- 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/oracle/ddl/OracleAlterSynonymStatement.java
+++ 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/oracle/ddl/OracleAlterSynonymStatement.java
@@ -18,11 +18,10 @@
 package org.apache.shardingsphere.sql.parser.sql.dialect.statement.oracle.ddl;
 
 import 
org.apache.shardingsphere.sql.parser.sql.common.statement.ddl.AlterSynonymStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.ddl.DDLStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.oracle.OracleStatement;
 
 /**
  * Oracle alter synonym statement.
  */
-public final class OracleAlterSynonymStatement extends AlterSynonymStatement 
implements DDLStatement, OracleStatement {
+public final class OracleAlterSynonymStatement extends AlterSynonymStatement 
implements OracleStatement {
 }
diff --git 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/oracle/ddl/OracleDropDirectoryStatement.java
 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/oracle/ddl/OracleDropDirectoryStatement.java
index 623b667d0f4..f3cc4eff26d 100644
--- 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/oracle/ddl/OracleDropDirectoryStatement.java
+++ 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/oracle/ddl/OracleDropDirectoryStatement.java
@@ -17,12 +17,11 @@
 
 package org.apache.shardingsphere.sql.parser.sql.dialect.statement.oracle.ddl;
 
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.ddl.DDLStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.common.statement.ddl.DropDirectoryStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.oracle.OracleStatement;
 
 /**
  * Oracle drop directory statement.
  */
-public final class OracleDropDirectoryStatement extends DropDirectoryStatement 
implements DDLStatement, OracleStatement {
+public final class OracleDropDirectoryStatement extends DropDirectoryStatement 
implements OracleStatement {
 }
diff --git 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/sqlserver/ddl/SQLServerAlterTriggerStatement.java
 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/sqlserver/ddl/SQLServerAlterTriggerStatement.java
index 96cf7319cf6..61f62f22812 100644
--- 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/sqlserver/ddl/SQLServerAlterTriggerStatement.java
+++ 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/sqlserver/ddl/SQLServerAlterTriggerStatement.java
@@ -18,11 +18,10 @@
 package 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.sqlserver.ddl;
 
 import 
org.apache.shardingsphere.sql.parser.sql.common.statement.ddl.AlterTriggerStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.ddl.DDLStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.sqlserver.SQLServerStatement;
 
 /**
  * SQLServer alter trigger statement.
  */
-public final class SQLServerAlterTriggerStatement extends 
AlterTriggerStatement implements DDLStatement, SQLServerStatement {
+public final class SQLServerAlterTriggerStatement extends 
AlterTriggerStatement implements SQLServerStatement {
 }
diff --git 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/sqlserver/ddl/SQLServerCreateTriggerStatement.java
 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/sqlserver/ddl/SQLServerCreateTriggerStatement.java
index 5b1d77e6409..fd459744c29 100644
--- 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/sqlserver/ddl/SQLServerCreateTriggerStatement.java
+++ 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/sqlserver/ddl/SQLServerCreateTriggerStatement.java
@@ -18,11 +18,10 @@
 package 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.sqlserver.ddl;
 
 import 
org.apache.shardingsphere.sql.parser.sql.common.statement.ddl.CreateTriggerStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.ddl.DDLStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.sqlserver.SQLServerStatement;
 
 /**
  * SQLServer create trigger statement.
  */
-public final class SQLServerCreateTriggerStatement extends 
CreateTriggerStatement implements DDLStatement, SQLServerStatement {
+public final class SQLServerCreateTriggerStatement extends 
CreateTriggerStatement implements SQLServerStatement {
 }
diff --git 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/sqlserver/ddl/SQLServerDropTriggerStatement.java
 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/sqlserver/ddl/SQLServerDropTriggerStatement.java
index 2409b7e5a07..c000e57256a 100644
--- 
a/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/sqlserver/ddl/SQLServerDropTriggerStatement.java
+++ 
b/parser/sql/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/sqlserver/ddl/SQLServerDropTriggerStatement.java
@@ -17,12 +17,11 @@
 
 package 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.sqlserver.ddl;
 
-import 
org.apache.shardingsphere.sql.parser.sql.common.statement.ddl.DDLStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.common.statement.ddl.DropTriggerStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.sqlserver.SQLServerStatement;
 
 /**
  * SQLServer drop trigger statement.
  */
-public final class SQLServerDropTriggerStatement extends DropTriggerStatement 
implements DDLStatement, SQLServerStatement {
+public final class SQLServerDropTriggerStatement extends DropTriggerStatement 
implements SQLServerStatement {
 }

Reply via email to