You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by wu...@apache.org on 2021/07/06 10:58:41 UTC

[shardingsphere] branch opengauss_adapt updated (20d27b4 -> 8de86d7)

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

wuweijie pushed a change to branch opengauss_adapt
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git.


    from 20d27b4  Adapt #11028
     add bfb784c  extract SchemaAvailable interface & add validate for SelectStatement (#11091)
     add 7299303  Add shardingsphere-db-discovery-distsql-handler module (#11114)
     add cdab917  Revise #11083 (#11118)
     add 7167a10  Add shardingsphere-encrypt-distsql-handler module (#11119)
     add 7a7c3ea  Set MAVEN_OPTS and enable Windows CI (#11120)
     add 2f7f7f5  Add shardingsphere-readwrite-splitting-distsql-handler module (#11124)
     add 70149d3  Add shardingsphere-sharding-distsql-handler module (#11125)
     add 18ab59a  Refactor RuleDefinitionViolationException to extend SQLException (#11129)
     add 2ae025c  Add CurrentRuleNotExistedException to refine Exception of current rule validation  (#11131)
     add 3ddeaf7  Add CurrentRuleNotExistedException to refine Exception of current rule validation (#11133)
     add f470823  Use DuplicateResourceException to refine Exception of current rule validation (#11134)
     add 83216cb  Add ResourceDefinitionViolationException (#11136)
     add 0774281  Rename DefinitionViolationException to ShardingSphereSQLException (#11137)
     add f9f00bd  Remove ShardingTableRuleNotExistedException (#11138)
     add 7d416d5  Remove ShardingBroadcastTableRuleNotExistsException (#11141)
     add cd0324e  Remove ShardingBroadcastTableRuleNotExistsException (#11142)
     add c040ac0  Add RuleInUsedException (#11143)
     add 1364413  Remove ShardingBroadcastTableRuleExistedException (#11144)
     add 7ddef35  Adjust error code of DistSQL exception (#11145)
     add 73ab059  Remove RuleDefinitionViolationException declaration of RDLCreateUpdater.updateCurrentRuleConfiguration() (#11146)
     add 0642cae  Simplify signature of RDLUpdater.updateCurrentRuleConfiguration() (#11148)
     add 30e122c  Refactor RDLCreateUpdater.buildToBeCreatedRuleConfiguration() (#11149)
     add ea03871  Refactor RDLAlterUpdater.buildToBeAlteredRuleConfiguration() (#11151)
     add 35620a0  Rename RuleDefinitionUpdater & RuleDefinitionBackendHandler (#11153)
     add 56f0884  Add RuleDefinitionStatement and ResourceDefinitionStatement (#11154)
     add 4b46c1e  Remove useless shardingsphere-distsql-parser-test module (#11155)
     add 974a7a4  support ddl cases of encrypt scenario and bind some issue (#11113)
     add 542fbab  [ISSUE #10992] Add unit test for shardingsphere-sql-parser-engine  (#11107)
     add bd49806  support sql with schema for all features (#11150)
     add 1da93ae  Add DistSQLStatement class (#11159)
     add bb2dea1  Split DatabaseOperateBackendHandlerFactory from RDLBackendHandlerFactory (#11163)
     add 2ad1db3  Move package of DatabaseOperateBackendHandlerFactory (#11164)
     add 01bd119  Fix Oracle insert with colum name 'RANK'  (#11158)
     add f69001e  Add Oracle SQL - DISASSOCIATE STATISTICS (#11126)
     add b1ed8c9  modify the docment to create SQLVisitorEngine (#11170)
     add 7879404  Fix PostgreSQL write null in binary format cause NPE (#11173)
     add 9203642  Fix PostgreSQL Portal may not be closed expectedly (#11176)
     add 0a87730  Add test cases for DDL and standardize the format of the cases. (#11160)
     new 848fc02  Merge remote-tracking branch 'apache/master' into opengauss_adapt
     new 8de86d7  Adapt master

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .github/workflows/ci.yml                           |  45 +++---
 .github/workflows/it.yml                           |   3 +
 .../features/sharding/principle/parse.cn.md        |   4 +-
 .../features/sharding/principle/parse.en.md        |   4 +-
 .../query/text/PostgreSQLDataRowPacket.java        |   4 +
 .../query/text/PostgreSQLDataRowPacketTest.java    |  10 ++
 shardingsphere-distsql-parser/pom.xml              |   1 -
 .../RQLStatement.java => DistSQLStatement.java}    |   6 +-
 .../distsql/parser/statement/ral/RALStatement.java |   4 +-
 .../distsql/parser/statement/rdl/RDLStatement.java |   4 +-
 .../statement/rdl/ResourceDefinitionStatement.java |   8 +-
 ...Statement.java => RuleDefinitionStatement.java} |   6 +-
 .../statement/rdl/alter/AlterRuleStatement.java    |   4 +-
 .../statement/rdl/create/AddResourceStatement.java |   4 +-
 .../statement/rdl/create/CreateRuleStatement.java  |   4 +-
 .../statement/rdl/drop/DropResourceStatement.java  |   4 +-
 .../statement/rdl/drop/DropRuleStatement.java      |   4 +-
 .../distsql/parser/statement/rql/RQLStatement.java |   4 +-
 .../shardingsphere-db-discovery-core/pom.xml       |  13 +-
 .../DatabaseDiscoveryRuleNotExistedException.java  |  34 -----
 .../InvalidDatabaseDiscoveryTypesException.java    |  34 -----
 .../DatabaseDiscoveryRuleStatementConverter.java   |  70 ----------
 .../shardingsphere-db-discovery-distsql/pom.xml    |   1 +
 .../pom.xml                                        |  12 +-
 .../DatabaseDiscoveryRuleStatementConverter.java   |  58 ++++++++
 .../query/DatabaseDiscoveryRuleQueryResultSet.java |   2 +-
 ...AlterDatabaseDiscoveryRuleStatementUpdater.java |  69 +++++-----
 ...reateDatabaseDiscoveryRuleStatementUpdater.java |  46 +++----
 .../DropDatabaseDiscoveryRuleStatementUpdater.java |  24 ++--
 ...shardingsphere.infra.distsql.query.RQLResultSet |   2 +-
 ...ere.infra.distsql.update.RuleDefinitionUpdater} |   6 +-
 ...atabaseDiscoveryRuleStatementConverterTest.java |  15 +-
 .../DatabaseDiscoveryRuleQueryResultSetTest.java   |   6 +-
 ...rDatabaseDiscoveryRuleStatementUpdaterTest.java |  31 ++---
 ...eDatabaseDiscoveryRuleStatementUpdaterTest.java |  21 +--
 ...pDatabaseDiscoveryRuleStatementUpdaterTest.java |  15 +-
 .../pom.xml                                        |   2 +-
 .../shardingsphere-encrypt-core/pom.xml            |   7 +-
 .../converter/EncryptRuleStatementConverter.java   |  83 -----------
 .../shardingsphere-encrypt-distsql/pom.xml         |   1 +
 .../pom.xml                                        |  12 +-
 .../converter/EncryptRuleStatementConverter.java   |  79 +++++++++++
 .../handler}/query/EncryptRuleQueryResultSet.java  |   2 +-
 .../update/AlterEncryptRuleStatementUpdater.java   |  65 ++++-----
 .../update/CreateEncryptRuleStatementUpdater.java  |  39 +++---
 .../update/DropEncryptRuleStatementUpdater.java    |  25 ++--
 ...shardingsphere.infra.distsql.query.RQLResultSet |   2 +-
 ...ere.infra.distsql.update.RuleDefinitionUpdater} |   4 +-
 .../EncryptRuleStatementConverterTest.java         |  20 ++-
 .../query/EncryptRuleQueryResultSetTest.java       |   2 +-
 .../AlterEncryptRuleStatementUpdaterTest.java      |  25 ++--
 .../CreateEncryptRuleStatementUpdaterTest.java     |  15 +-
 .../DropEncryptRuleStatementUpdaterTest.java       |  15 +-
 .../parser/segment/EncryptColumnSegment.java       |   2 +
 .../pom.xml                                        |   7 +-
 .../exception/InvalidLoadBalancersException.java   |  34 -----
 .../ReadwriteSplittingRuleNotExistedException.java |  34 -----
 .../ReadwriteSplittingRuleStatementConverter.java  |  92 -------------
 ....shardingsphere.infra.distsql.update.RDLUpdater |  20 ---
 .../pom.xml                                        |   1 +
 .../pom.xml                                        |  12 +-
 .../ReadwriteSplittingRuleStatementConverter.java  |  70 ++++++++++
 .../ReadwriteSplittingRuleQueryResultSet.java      |   2 +-
 ...lterReadwriteSplittingRuleStatementUpdater.java |  71 +++++-----
 ...eateReadwriteSplittingRuleStatementUpdater.java |  46 +++----
 ...DropReadwriteSplittingRuleStatementUpdater.java |  24 ++--
 ...hardingsphere.infra.distsql.query.RQLResultSet} |   4 +-
 ...ere.infra.distsql.update.RuleDefinitionUpdater} |   6 +-
 .../ReadwriteSplittingRuleQueryResultSetTest.java  |   2 +-
 ...ReadwriteSplittingRuleStatementUpdaterTest.java |  31 ++---
 ...ReadwriteSplittingRuleStatementUpdaterTest.java |  21 +--
 ...ReadwriteSplittingRuleStatementUpdaterTest.java |  15 +-
 .../impl/PreparedShadowDataSourceRouterTest.java   |  28 +++-
 .../impl/SimpleShadowDataSourceRouterTest.java     |  37 +++--
 .../shardingsphere-sharding-core/pom.xml           |   2 +-
 .../converter/ShardingRuleStatementConverter.java  | 152 ---------------------
 .../exception/DuplicateBindingTablesException.java |  34 -----
 .../exception/DuplicateTablesException.java        |  34 -----
 .../exception/InvalidKeyGeneratorsException.java   |  34 -----
 .../InvalidShardingAlgorithmsException.java        |  34 -----
 ...ShardingBindingTableRuleNotExistsException.java |  32 -----
 ...ShardingBroadcastTableRuleExistedException.java |  32 -----
 ...ardingBroadcastTableRuleNotExistsException.java |  32 -----
 .../ShardingTableRuleNotExistedException.java      |  34 -----
 .../ShardingTableRulesInUsedException.java         |  34 -----
 .../token/generator/impl/TableTokenGenerator.java  |   4 +-
 ....shardingsphere.infra.distsql.update.RDLUpdater |  26 ----
 .../merge/ShardingResultMergerEngineTest.java      |  30 ++--
 .../merge/dql/ShardingDQLResultMergerTest.java     |   3 +-
 .../dql/groupby/GroupByStreamMergedResultTest.java |   3 +-
 .../dql/orderby/OrderByStreamMergedResultTest.java |   3 +-
 .../type/ShardingRouteEngineFactoryTest.java       |   5 +-
 .../engine/type/standard/AbstractSQLRouteTest.java |   7 +-
 .../ShardingAlterTableStatementValidatorTest.java  |  33 ++---
 .../ShardingAlterViewStatementValidatorTest.java   |   5 +-
 ...ardingCreateFunctionStatementValidatorTest.java |  11 +-
 .../ShardingCreateIndexStatementValidatorTest.java |  13 +-
 ...rdingCreateProcedureStatementValidatorTest.java |  11 +-
 .../ShardingCreateTableStatementValidatorTest.java |  27 ++--
 .../ShardingCreateViewStatementValidatorTest.java  |   5 +-
 .../ShardingDropTableStatementValidatorTest.java   |  15 +-
 .../ddl/ShardingPrepareStatementValidatorTest.java |   5 +-
 .../dml/ShardingDeleteStatementValidatorTest.java  |   7 +-
 .../dml/ShardingInsertStatementValidatorTest.java  |  42 +++---
 .../dml/ShardingUpdateStatementValidatorTest.java  |   9 +-
 .../yaml/distsql/sharding-rule-config.yaml         |  51 -------
 .../shardingsphere-sharding-distsql/pom.xml        |   1 +
 .../pom.xml                                        |  12 +-
 .../converter/ShardingRuleStatementConverter.java  |  91 ++++++++++++
 .../ShardingBindingTableRuleQueryResultSet.java    |   2 +-
 .../ShardingBroadcastTableRuleQueryResultSet.java  |   2 +-
 .../query/ShardingTableRuleQueryResultSet.java     |   2 +-
 ...erShardingBindingTableRuleStatementUpdater.java |  49 ++++---
 ...ShardingBroadcastTableRuleStatementUpdater.java |  30 ++--
 .../AlterShardingTableRuleStatementUpdater.java    |  80 +++++------
 ...teShardingBindingTableRuleStatementUpdater.java |  47 ++++---
 ...ShardingBroadcastTableRuleStatementUpdater.java |  36 ++---
 .../CreateShardingTableRuleStatementUpdater.java   |  45 +++---
 ...opShardingBindingTableRuleStatementUpdater.java |  17 +--
 ...ShardingBroadcastTableRuleStatementUpdater.java |  17 +--
 .../DropShardingTableRuleStatementUpdater.java     |  33 +++--
 ...shardingsphere.infra.distsql.query.RQLResultSet |   6 +-
 ...here.infra.distsql.update.RuleDefinitionUpdater |  26 ++++
 .../ShardingRuleStatementConverterTest.java        |  38 +++---
 .../fixture/StandardShardingAlgorithmFixture.java  |  31 +++--
 ...ShardingBindingTableRuleQueryResultSetTest.java |   1 +
 ...ardingBroadcastTableRuleQueryResultSetTest.java |   1 +
 .../query/ShardingTableRuleQueryResultSetTest.java |  52 +++++--
 ...ardingBindingTableRuleStatementUpdaterTest.java |  20 ++-
 ...dingBroadcastTableRuleStatementUpdaterTest.java |  27 ++--
 ...AlterShardingTableRuleStatementUpdaterTest.java |  38 +++---
 ...ardingBindingTableRuleStatementUpdaterTest.java |  13 +-
 ...reateShardingTableRuleStatementUpdaterTest.java |  14 +-
 ...ardingBindingTableRuleStatementUpdaterTest.java |  14 +-
 ...dingBroadcastTableRuleStatementUpdaterTest.java |  14 +-
 .../DropShardingTableRuleStatementUpdaterTest.java |  21 +--
 ....shardingsphere.sharding.spi.ShardingAlgorithm} |   2 +-
 .../infra/binder/SQLStatementContextFactory.java   |  28 +++-
 .../infra/binder/segment/table/TablesContext.java  |  14 ++
 .../statement/dal/ShowColumnsStatementContext.java |  14 +-
 .../dal/ShowCreateTableStatementContext.java       |   2 +-
 .../statement/dal/ShowIndexStatementContext.java   |   2 +-
 ...t.java => ShowTableStatusStatementContext.java} |  24 ++--
 ...ontext.java => ShowTablesStatementContext.java} |  24 ++--
 .../statement/ddl/DropIndexStatementContext.java   |   2 +-
 .../statement/ddl/DropTableStatementContext.java   |   2 +-
 .../statement/ddl/TruncateStatementContext.java    |   2 +-
 .../statement/dml/InsertStatementContext.java      |  30 ++--
 .../statement/dml/SelectStatementContext.java      |  16 ++-
 .../infra/binder/type}/RemoveAvailable.java        |  13 +-
 .../engine/GeneratedKeyContextEngineTest.java      |   9 +-
 .../orderby/engine/OrderByContextEngineTest.java   |   7 +-
 .../select/pagination/PaginationContextTest.java   |  13 +-
 .../projection/engine/ProjectionEngineTest.java    |   5 +-
 .../engine/ProjectionsContextEngineTest.java       |  41 ++++--
 .../binder/segment/table/TablesContextTest.java    |   5 +-
 .../statement/SQLStatementContextFactoryTest.java  |  22 ++-
 .../statement/dml/DeleteStatementContextTest.java  |   5 +-
 .../statement/dml/UpdateStatementContextTest.java  |   5 +-
 .../statement/impl/InsertStatementContextTest.java |  71 +++++-----
 .../statement/impl/SelectStatementContextTest.java |  15 +-
 .../infra/distsql/exception/DistSQLException.java  |  17 ++-
 .../resource}/DuplicateResourceException.java      |   6 +-
 .../resource}/InvalidResourceException.java        |   6 +-
 .../resource/RequiredResourceMissedException.java} |  10 +-
 .../ResourceDefinitionViolationException.java}     |  14 +-
 .../resource}/ResourceInUsedException.java         |   6 +-
 .../exception/rule/DuplicateRuleException.java}    |  10 +-
 .../InvalidAlgorithmConfigurationException.java}   |  12 +-
 .../rule/RequiredRuleMissedException.java          |  18 +--
 .../rule/RuleDefinitionViolationException.java     |  17 +--
 .../exception/rule/RuleInUsedException.java        |  18 +--
 ...pdater.java => RuleDefinitionAlterUpdater.java} |  19 ++-
 ...dater.java => RuleDefinitionCreateUpdater.java} |  11 +-
 ...Updater.java => RuleDefinitionDropUpdater.java} |   7 +-
 ...{RDLUpdater.java => RuleDefinitionUpdater.java} |   8 +-
 .../AlterTableStatementFederateRefresherTest.java  |   2 +-
 .../generator/generic/RemoveTokenGenerator.java    |  62 +++++----
 .../statement/ShardingSpherePreparedStatement.java |   4 +-
 .../core/statement/ShardingSphereStatement.java    |   4 +-
 .../DatabaseCommunicationEngineFactory.java        |  21 +--
 .../jdbc/connection/BackendConnection.java         |   9 ++
 .../backend/text/SchemaRequiredBackendHandler.java |   5 +-
 .../text/TextProtocolBackendHandlerFactory.java    |  29 ++--
 .../text/data/DatabaseBackendHandlerFactory.java   |  12 +-
 .../data/impl/BroadcastDatabaseBackendHandler.java |   8 +-
 .../impl/SchemaAssignedDatabaseBackendHandler.java |   6 +-
 .../data/impl/UnicastDatabaseBackendHandler.java   |   6 +-
 .../CreateDatabaseBackendHandler.java              |   2 +-
 .../DatabaseOperateBackendHandlerFactory.java}     |  33 ++---
 .../DropDatabaseBackendHandler.java                |   5 +-
 .../text/distsql/DistSQLBackendHandlerFactory.java |  22 +--
 .../text/distsql/ral/RALBackendHandlerFactory.java |  38 +++---
 .../text/distsql/rdl/RDLBackendHandlerFactory.java |  31 ++---
 .../text/distsql/rdl/impl/RDLBackendHandler.java   |  93 -------------
 .../AddResourceBackendHandler.java                 |  11 +-
 .../DropResourceBackendHandler.java                |  17 +--
 .../rdl/rule/RuleDefinitionBackendHandler.java     | 116 ++++++++++++++++
 .../text/distsql/rql/RQLBackendHandlerFactory.java |   2 +-
 .../explain/ShardingCTLExplainBackendHandler.java  |  26 ++--
 .../TransactionBackendHandlerFactory.java          |   8 +-
 .../TextProtocolBackendHandlerFactoryTest.java     |  10 +-
 .../DatabaseCommunicationEngineFactoryTest.java    |   6 +-
 .../DatabaseCommunicationEngineTest.java           |  11 +-
 .../DatabaseOperateBackendHandlerFactoryTest.java} | 128 ++---------------
 .../data/DatabaseBackendHandlerFactoryTest.java    |  18 ++-
 .../impl/BroadcastDatabaseBackendHandlerTest.java  |   3 +-
 .../SchemaAssignedDatabaseBackendHandlerTest.java  |   3 +-
 .../impl/UnicastDatabaseBackendHandlerTest.java    |   3 +-
 .../DropDatabaseBackendHandlerTest.java            |   2 +-
 .../distsql/DistSQLBackendHandlerFactoryTest.java  |  99 ++------------
 .../AddResourceBackendHandlerTest.java             |   9 +-
 .../ShardingCTLExplainBackendHandlerTest.java      |   1 +
 .../TransactionBackendHandlerFactoryTest.java      |  14 +-
 .../execute/MySQLComStmtExecuteExecutor.java       |  14 +-
 .../fieldlist/MySQLComFieldListPacketExecutor.java |  16 ++-
 .../frontend/mysql/err/MySQLErrPacketFactory.java  |  10 +-
 .../command/MySQLCommandExecutorFactoryTest.java   |   1 +
 .../execute/MySQLComStmtExecuteExecutorTest.java   |   2 +
 .../mysql/err/MySQLErrPacketFactoryTest.java       |  28 ++--
 .../command/PostgreSQLConnectionContext.java       |  17 +--
 .../command/query/binary/PostgreSQLPortal.java     |  10 +-
 .../binary/bind/OpenGaussComBatchBindExecutor.java |  17 +--
 .../execute/PostgreSQLComExecuteExecutor.java      |  15 +-
 .../binary/parse/PostgreSQLComParseExecutor.java   |   1 -
 .../execute/PostgreSQLComExecuteExecutorTest.java  |  60 +++++++-
 .../parser/mysql/visitor/MySQLSQLStatVisitor.java  |   3 +-
 .../statement/impl/MySQLStatementSQLVisitor.java   |   6 +-
 .../src/main/antlr4/imports/oracle/BaseRule.g4     |   2 +-
 .../src/main/antlr4/imports/oracle/DDLStatement.g4 |  10 ++
 .../main/antlr4/imports/oracle/OracleKeyword.g4    |   4 +
 .../sql/parser/autogen/OracleStatement.g4          |   1 +
 .../impl/OracleDDLStatementSQLVisitor.java         |  21 +++
 .../statement/impl/OracleStatementSQLVisitor.java  |   6 +-
 .../impl/PostgreSQLDALStatementSQLVisitor.java     |   4 +-
 .../impl/PostgreSQLDDLStatementSQLVisitor.java     |   4 +-
 .../impl/PostgreSQLStatementSQLVisitor.java        |  17 ++-
 .../statement/impl/SQL92StatementSQLVisitor.java   |   2 +-
 .../impl/SQLServerStatementSQLVisitor.java         |   2 +-
 .../core/database/visitor/SQLVisitorRule.java      |   2 +
 .../sql/parser/api/SQLParserEngineTest.java        |  74 ++++++++++
 .../sql/parser/core/SQLParserFactoryTest.java}     |  28 ++--
 .../sql/parser/fixture/LexerFixture.java           |  24 +++-
 .../sql/parser/fixture/ParserFixture.java          |  29 +++-
 .../sql/common/extractor/TableExtractor.java       |   9 +-
 .../sql/common/segment/dal/FromSchemaSegment.java  |   4 +-
 .../segment/generic/table/SimpleTableSegment.java  |   7 +-
 .../sql/common/statement/dml/SelectStatement.java  |  12 +-
 .../sql/parser/sql/common/util/SQLUtil.java        |  14 --
 .../mysql/dal/MySQLShowColumnsStatement.java       |   6 +-
 .../mysql/dal/MySQLShowTableStatusStatement.java   |   6 +-
 .../mysql/dal/MySQLShowTablesStatement.java        |   6 +-
 .../OracleDisassociateStatisticsStatement.java}    |  35 ++---
 .../sql/common/extractor/TableExtractorTest.java   |   6 +-
 .../generic/table/SimpleTableSegmentTest.java      |   4 +-
 .../handler/dal/ExplainStatementHandlerTest.java   |   3 +-
 .../ddl/AlterIndexStatementHandlerTest.java        |   3 +-
 .../handler/ddl/DropIndexStatementHandlerTest.java |   5 +-
 .../dataset/db/{alter_table.xml => alter_add.xml}  |   0
 ...ast_alter_table.xml => alter_broadcast_add.xml} |   0
 ...hanged_table.xml => alter_broadcast_change.xml} |   2 +-
 ...nchanged_table.xml => alter_broadcast_drop.xml} |   1 -
 .../db/{alter_table.xml => alter_change.xml}       |   3 +-
 .../dataset/db/{alter_table.xml => alter_drop.xml} |   2 -
 ...create_index.xml => create_broadcast_index.xml} |   0
 ...hanged_table.xml => create_broadcast_table.xml} |   0
 ...index.xml => create_broadcast_unique_index.xml} |   0
 ...ast_drop_table.xml => drop_broadcast_table.xml} |   0
 ...ate_table.xml => unchanged_broadcast_table.xml} |   0
 .../{alter_table.xml => alter_add.xml}             |   0
 ...ast_alter_table.xml => alter_broadcast_add.xml} |   0
 ...create_table.xml => alter_broadcast_change.xml} |   2 +-
 ...t_create_table.xml => alter_broadcast_drop.xml} |   1 -
 .../{alter_table.xml => alter_change.xml}          |   3 +-
 .../{alter_table.xml => alter_drop.xml}            |   2 -
 ...create_index.xml => create_broadcast_index.xml} |   0
 ...hanged_table.xml => create_broadcast_table.xml} |   0
 ...index.xml => create_broadcast_unique_index.xml} |   0
 ...ast_drop_table.xml => drop_broadcast_table.xml} |   0
 ...ate_table.xml => unchanged_broadcast_table.xml} |   0
 .../{create_user_table.xml => alter_add.xml}       |   4 +-
 ...ange_column_user_table.xml => alter_change.xml} |   5 +-
 .../{drop_column_user_table.xml => alter_drop.xml} |   3 +-
 .../{create_user_table.xml => create_index.xml}    |   4 +-
 .../{create_user_table.xml => create_table.xml}    |   5 +-
 ...eate_user_table.xml => create_unique_index.xml} |   4 +-
 .../{drop_user_table.xml => drop_table.xml}        |   0
 ...nchanged_user_table.xml => unchanged_table.xml} |   3 +-
 .../{unchanged_user_table.xml => alter_add.xml}    |   4 +-
 ...ange_column_user_table.xml => alter_change.xml} |   3 +-
 .../{drop_column_user_table.xml => alter_drop.xml} |   3 +-
 .../{unchanged_user_table.xml => create_index.xml} |   4 +-
 .../{unchanged_user_table.xml => create_table.xml} |   5 +-
 ...nged_user_table.xml => create_unique_index.xml} |   4 +-
 .../{drop_user_table.xml => drop_table.xml}        |   0
 .../{create_user_table.xml => unchanged_table.xml} |   3 +-
 .../{alter_table.xml => alter_add.xml}             |   0
 ...ast_alter_table.xml => alter_broadcast_add.xml} |   0
 ...create_table.xml => alter_broadcast_change.xml} |   2 +-
 ...t_create_table.xml => alter_broadcast_drop.xml} |   1 -
 .../{alter_table.xml => alter_change.xml}          |   3 +-
 .../{alter_table.xml => alter_drop.xml}            |   2 -
 ...create_index.xml => create_broadcast_index.xml} |   0
 ...hanged_table.xml => create_broadcast_table.xml} |   0
 ...index.xml => create_broadcast_unique_index.xml} |   0
 ...ast_drop_table.xml => drop_broadcast_table.xml} |   0
 ...ate_table.xml => unchanged_broadcast_table.xml} |   0
 .../dataset/tbl/{alter_table.xml => alter_add.xml} |   0
 ...ast_alter_table.xml => alter_broadcast_add.xml} |   0
 ...hanged_table.xml => alter_broadcast_change.xml} |   2 +-
 ...nchanged_table.xml => alter_broadcast_drop.xml} |   1 -
 .../tbl/{alter_table.xml => alter_change.xml}      |   3 +-
 .../tbl/{alter_table.xml => alter_drop.xml}        |   2 -
 ...create_index.xml => create_broadcast_index.xml} |   0
 ...hanged_table.xml => create_broadcast_table.xml} |   0
 ...index.xml => create_broadcast_unique_index.xml} |   0
 ...ast_drop_table.xml => drop_broadcast_table.xml} |   0
 ...ate_table.xml => unchanged_broadcast_table.xml} |   0
 .../cases/ddl/ddl-integration-test-cases.xml       | 133 +++++++++++-------
 .../asserts/statement/ddl/DDLStatementAssert.java  |   5 +
 .../DisassociateStatisticsStatementAssert.java     |  75 ++++++++++
 .../jaxb/cases/domain/SQLParserTestCases.java      |   5 +
 .../DisassociateStatisticsStatementTestCase.java   |  47 +++++++
 .../resources/case/ddl/disassociate-statistics.xml |  40 ++++++
 .../src/main/resources/case/dml/insert.xml         |  14 ++
 .../sql/supported/ddl/disassociate-statistics.xml  |  27 ++++
 .../main/resources/sql/supported/dml/insert.xml    |   1 +
 .../EncryptSQLRewriterParameterizedTest.java       |  17 ++-
 .../scenario/MixSQLRewriterParameterizedTest.java  |  15 +-
 .../ShardingSQLRewriterParameterizedTest.java      |  18 ++-
 330 files changed, 2769 insertions(+), 2783 deletions(-)
 copy shardingsphere-distsql-parser/shardingsphere-distsql-parser-statement/src/main/java/org/apache/shardingsphere/distsql/parser/statement/{rql/RQLStatement.java => DistSQLStatement.java} (85%)
 copy shardingsphere-sql-parser/shardingsphere-sql-parser-statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/segment/generic/RemoveAvailable.java => shardingsphere-distsql-parser/shardingsphere-distsql-parser-statement/src/main/java/org/apache/shardingsphere/distsql/parser/statement/rdl/ResourceDefinitionStatement.java (78%)
 copy shardingsphere-distsql-parser/shardingsphere-distsql-parser-statement/src/main/java/org/apache/shardingsphere/distsql/parser/statement/rdl/{RDLStatement.java => RuleDefinitionStatement.java} (83%)
 delete mode 100644 shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-core/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/exception/DatabaseDiscoveryRuleNotExistedException.java
 delete mode 100644 shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-core/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/exception/InvalidDatabaseDiscoveryTypesException.java
 delete mode 100644 shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-core/src/main/java/org/apache/shardingsphere/dbdiscovery/yaml/converter/DatabaseDiscoveryRuleStatementConverter.java
 copy {shardingsphere-distsql-parser/shardingsphere-distsql-parser-test => shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler}/pom.xml (77%)
 create mode 100644 shardingsphere-features/shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/converter/DatabaseDiscoveryRuleStatementConverter.java
 rename shardingsphere-features/shardingsphere-db-discovery/{shardingsphere-db-discovery-core/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql => shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler}/query/DatabaseDiscoveryRuleQueryResultSet.java (98%)
 rename shardingsphere-features/shardingsphere-db-discovery/{shardingsphere-db-discovery-core/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql => shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler}/update/AlterDatabaseDiscoveryRuleStatementUpdater.java (63%)
 rename shardingsphere-features/shardingsphere-db-discovery/{shardingsphere-db-discovery-core/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql => shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler}/update/CreateDatabaseDiscoveryRuleStatementUpdater.java (70%)
 rename shardingsphere-features/shardingsphere-db-discovery/{shardingsphere-db-discovery-core/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql => shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler}/update/DropDatabaseDiscoveryRuleStatementUpdater.java (74%)
 copy shardingsphere-features/{shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-core => shardingsphere-db-discovery/shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler}/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.distsql.query.RQLResultSet (89%)
 copy shardingsphere-features/shardingsphere-db-discovery/{shardingsphere-db-discovery-core/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.distsql.update.RDLUpdater => shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.distsql.update.RuleDefinitionUpdater} (71%)
 rename shardingsphere-features/shardingsphere-db-discovery/{shardingsphere-db-discovery-core/src/test/java/org/apache/shardingsphere/dbdiscovery/yaml => shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler}/converter/DatabaseDiscoveryRuleStatementConverterTest.java (74%)
 rename shardingsphere-features/shardingsphere-db-discovery/{shardingsphere-db-discovery-core/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql => shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler}/query/DatabaseDiscoveryRuleQueryResultSetTest.java (95%)
 rename shardingsphere-features/shardingsphere-db-discovery/{shardingsphere-db-discovery-core/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql => shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler}/update/AlterDatabaseDiscoveryRuleStatementUpdaterTest.java (79%)
 rename shardingsphere-features/shardingsphere-db-discovery/{shardingsphere-db-discovery-core/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql => shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler}/update/CreateDatabaseDiscoveryRuleStatementUpdaterTest.java (81%)
 rename shardingsphere-features/shardingsphere-db-discovery/{shardingsphere-db-discovery-core/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql => shardingsphere-db-discovery-distsql/shardingsphere-db-discovery-distsql-handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler}/update/DropDatabaseDiscoveryRuleStatementUpdaterTest.java (82%)
 delete mode 100644 shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/main/java/org/apache/shardingsphere/encrypt/yaml/converter/EncryptRuleStatementConverter.java
 copy {shardingsphere-distsql-parser/shardingsphere-distsql-parser-test => shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler}/pom.xml (78%)
 create mode 100644 shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler/converter/EncryptRuleStatementConverter.java
 rename shardingsphere-features/shardingsphere-encrypt/{shardingsphere-encrypt-core/src/main/java/org/apache/shardingsphere/encrypt/distsql => shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler}/query/EncryptRuleQueryResultSet.java (98%)
 rename shardingsphere-features/shardingsphere-encrypt/{shardingsphere-encrypt-core/src/main/java/org/apache/shardingsphere/encrypt/distsql => shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler}/update/AlterEncryptRuleStatementUpdater.java (58%)
 rename shardingsphere-features/shardingsphere-encrypt/{shardingsphere-encrypt-core/src/main/java/org/apache/shardingsphere/encrypt/distsql => shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler}/update/CreateEncryptRuleStatementUpdater.java (69%)
 rename shardingsphere-features/shardingsphere-encrypt/{shardingsphere-encrypt-core/src/main/java/org/apache/shardingsphere/encrypt/distsql => shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/main/java/org/apache/shardingsphere/encrypt/distsql/handler}/update/DropEncryptRuleStatementUpdater.java (69%)
 rename shardingsphere-features/shardingsphere-encrypt/{shardingsphere-encrypt-core => shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler}/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.distsql.query.RQLResultSet (90%)
 rename shardingsphere-features/{shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-core/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.distsql.query.RQLResultSet => shardingsphere-encrypt/shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.distsql.update.RuleDefinitionUpdater} (74%)
 rename shardingsphere-features/shardingsphere-encrypt/{shardingsphere-encrypt-core/src/test/java/org/apache/shardingsphere/encrypt/yaml => shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/test/java/org/apache/shardingsphere/encrypt/distsql/handler}/converter/EncryptRuleStatementConverterTest.java (59%)
 rename shardingsphere-features/shardingsphere-encrypt/{shardingsphere-encrypt-core/src/test/java/org/apache/shardingsphere/encrypt/distsql => shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/test/java/org/apache/shardingsphere/encrypt/distsql/handler}/query/EncryptRuleQueryResultSetTest.java (98%)
 rename shardingsphere-features/shardingsphere-encrypt/{shardingsphere-encrypt-core/src/test/java/org/apache/shardingsphere/encrypt/distsql => shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/test/java/org/apache/shardingsphere/encrypt/distsql/handler}/update/AlterEncryptRuleStatementUpdaterTest.java (81%)
 rename shardingsphere-features/shardingsphere-encrypt/{shardingsphere-encrypt-core/src/test/java/org/apache/shardingsphere/encrypt/distsql => shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/test/java/org/apache/shardingsphere/encrypt/distsql/handler}/update/CreateEncryptRuleStatementUpdaterTest.java (83%)
 rename shardingsphere-features/shardingsphere-encrypt/{shardingsphere-encrypt-core/src/test/java/org/apache/shardingsphere/encrypt/distsql => shardingsphere-encrypt-distsql/shardingsphere-encrypt-distsql-handler/src/test/java/org/apache/shardingsphere/encrypt/distsql/handler}/update/DropEncryptRuleStatementUpdaterTest.java (83%)
 delete mode 100644 shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-core/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/exception/InvalidLoadBalancersException.java
 delete mode 100644 shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-core/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/exception/ReadwriteSplittingRuleNotExistedException.java
 delete mode 100644 shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-core/src/main/java/org/apache/shardingsphere/readwritesplitting/yaml/converter/ReadwriteSplittingRuleStatementConverter.java
 delete mode 100644 shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-core/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.distsql.update.RDLUpdater
 copy {shardingsphere-distsql-parser/shardingsphere-distsql-parser-test => shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler}/pom.xml (75%)
 create mode 100644 shardingsphere-features/shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/converter/ReadwriteSplittingRuleStatementConverter.java
 rename shardingsphere-features/shardingsphere-readwrite-splitting/{shardingsphere-readwrite-splitting-core/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql => shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/handler}/query/ReadwriteSplittingRuleQueryResultSet.java (97%)
 rename shardingsphere-features/shardingsphere-readwrite-splitting/{shardingsphere-readwrite-splitting-core/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql => shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/handler}/update/AlterReadwriteSplittingRuleStatementUpdater.java (61%)
 rename shardingsphere-features/shardingsphere-readwrite-splitting/{shardingsphere-readwrite-splitting-core/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql => shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/handler}/update/CreateReadwriteSplittingRuleStatementUpdater.java (70%)
 rename shardingsphere-features/shardingsphere-readwrite-splitting/{shardingsphere-readwrite-splitting-core/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql => shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/handler}/update/DropReadwriteSplittingRuleStatementUpdater.java (73%)
 rename shardingsphere-features/{shardingsphere-encrypt/shardingsphere-encrypt-core/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.distsql.update.RDLUpdater => shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.distsql.query.RQLResultSet} (76%)
 rename shardingsphere-features/{shardingsphere-db-discovery/shardingsphere-db-discovery-core/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.distsql.update.RDLUpdater => shardingsphere-readwrite-splitting/shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.distsql.update.RuleDefinitionUpdater} (70%)
 rename shardingsphere-features/shardingsphere-readwrite-splitting/{shardingsphere-readwrite-splitting-core/src/test/java/org/apache/shardingsphere/readwritesplitting/distsql => shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/test/java/org/apache/shardingsphere/readwritesplitting/distsql/handler}/query/ReadwriteSplittingRuleQueryResultSetTest.java (97%)
 rename shardingsphere-features/shardingsphere-readwrite-splitting/{shardingsphere-readwrite-splitting-core/src/test/java/org/apache/shardingsphere/readwritesplitting/distsql => shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/test/java/org/apache/shardingsphere/readwritesplitting/distsql/handler}/update/AlterReadwriteSplittingRuleStatementUpdaterTest.java (79%)
 rename shardingsphere-features/shardingsphere-readwrite-splitting/{shardingsphere-readwrite-splitting-core/src/test/java/org/apache/shardingsphere/readwritesplitting/distsql => shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/test/java/org/apache/shardingsphere/readwritesplitting/distsql/handler}/update/CreateReadwriteSplittingRuleStatementUpdaterTest.java (82%)
 rename shardingsphere-features/shardingsphere-readwrite-splitting/{shardingsphere-readwrite-splitting-core/src/test/java/org/apache/shardingsphere/readwritesplitting/distsql => shardingsphere-readwrite-splitting-distsql/shardingsphere-readwrite-splitting-distsql-handler/src/test/java/org/apache/shardingsphere/readwritesplitting/distsql/handler}/update/DropReadwriteSplittingRuleStatementUpdaterTest.java (82%)
 delete mode 100644 shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/converter/ShardingRuleStatementConverter.java
 delete mode 100644 shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/distsql/exception/DuplicateBindingTablesException.java
 delete mode 100644 shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/distsql/exception/DuplicateTablesException.java
 delete mode 100644 shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/distsql/exception/InvalidKeyGeneratorsException.java
 delete mode 100644 shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/distsql/exception/InvalidShardingAlgorithmsException.java
 delete mode 100644 shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/distsql/exception/ShardingBindingTableRuleNotExistsException.java
 delete mode 100644 shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/distsql/exception/ShardingBroadcastTableRuleExistedException.java
 delete mode 100644 shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/distsql/exception/ShardingBroadcastTableRuleNotExistsException.java
 delete mode 100644 shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/distsql/exception/ShardingTableRuleNotExistedException.java
 delete mode 100644 shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/distsql/exception/ShardingTableRulesInUsedException.java
 delete mode 100644 shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.distsql.update.RDLUpdater
 delete mode 100644 shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-core/src/test/resources/yaml/distsql/sharding-rule-config.yaml
 rename {shardingsphere-distsql-parser/shardingsphere-distsql-parser-test => shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler}/pom.xml (77%)
 create mode 100644 shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/converter/ShardingRuleStatementConverter.java
 rename shardingsphere-features/shardingsphere-sharding/{shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/distsql => shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler}/query/ShardingBindingTableRuleQueryResultSet.java (97%)
 rename shardingsphere-features/shardingsphere-sharding/{shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/distsql => shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler}/query/ShardingBroadcastTableRuleQueryResultSet.java (97%)
 rename shardingsphere-features/shardingsphere-sharding/{shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/distsql => shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler}/query/ShardingTableRuleQueryResultSet.java (99%)
 rename shardingsphere-features/shardingsphere-sharding/{shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/distsql => shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler}/update/AlterShardingBindingTableRuleStatementUpdater.java (60%)
 rename shardingsphere-features/shardingsphere-sharding/{shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/distsql => shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler}/update/AlterShardingBroadcastTableRuleStatementUpdater.java (58%)
 rename shardingsphere-features/shardingsphere-sharding/{shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/distsql => shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler}/update/AlterShardingTableRuleStatementUpdater.java (68%)
 rename shardingsphere-features/shardingsphere-sharding/{shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/distsql => shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler}/update/CreateShardingBindingTableRuleStatementUpdater.java (68%)
 rename shardingsphere-features/shardingsphere-sharding/{shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/distsql => shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler}/update/CreateShardingBroadcastTableRuleStatementUpdater.java (58%)
 rename shardingsphere-features/shardingsphere-sharding/{shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/distsql => shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler}/update/CreateShardingTableRuleStatementUpdater.java (76%)
 rename shardingsphere-features/shardingsphere-sharding/{shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/distsql => shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler}/update/DropShardingBindingTableRuleStatementUpdater.java (70%)
 rename shardingsphere-features/shardingsphere-sharding/{shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/distsql => shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler}/update/DropShardingBroadcastTableRuleStatementUpdater.java (69%)
 rename shardingsphere-features/shardingsphere-sharding/{shardingsphere-sharding-core/src/main/java/org/apache/shardingsphere/sharding/distsql => shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler}/update/DropShardingTableRuleStatementUpdater.java (74%)
 rename shardingsphere-features/shardingsphere-sharding/{shardingsphere-sharding-core => shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler}/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.distsql.query.RQLResultSet (73%)
 create mode 100644 shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.distsql.update.RuleDefinitionUpdater
 rename shardingsphere-features/shardingsphere-sharding/{shardingsphere-sharding-core/src/test/java/org/apache/shardingsphere/sharding => shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql}/converter/ShardingRuleStatementConverterTest.java (62%)
 copy shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/exception/rule/InvalidResourceException.java => shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/java/org/apache/shardingsphere/sharding/distsql/fixture/StandardShardingAlgorithmFixture.java (50%)
 rename shardingsphere-features/shardingsphere-sharding/{shardingsphere-sharding-core => shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler}/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShardingBindingTableRuleQueryResultSetTest.java (96%)
 rename shardingsphere-features/shardingsphere-sharding/{shardingsphere-sharding-core => shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler}/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShardingBroadcastTableRuleQueryResultSetTest.java (95%)
 rename shardingsphere-features/shardingsphere-sharding/{shardingsphere-sharding-core => shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler}/src/test/java/org/apache/shardingsphere/sharding/distsql/query/ShardingTableRuleQueryResultSetTest.java (51%)
 rename shardingsphere-features/shardingsphere-sharding/{shardingsphere-sharding-core => shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler}/src/test/java/org/apache/shardingsphere/sharding/distsql/update/AlterShardingBindingTableRuleStatementUpdaterTest.java (81%)
 rename shardingsphere-features/shardingsphere-sharding/{shardingsphere-sharding-core => shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler}/src/test/java/org/apache/shardingsphere/sharding/distsql/update/AlterShardingBroadcastTableRuleStatementUpdaterTest.java (60%)
 rename shardingsphere-features/shardingsphere-sharding/{shardingsphere-sharding-core => shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler}/src/test/java/org/apache/shardingsphere/sharding/distsql/update/AlterShardingTableRuleStatementUpdaterTest.java (74%)
 rename shardingsphere-features/shardingsphere-sharding/{shardingsphere-sharding-core => shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler}/src/test/java/org/apache/shardingsphere/sharding/distsql/update/CreateShardingBindingTableRuleStatementUpdaterTest.java (84%)
 rename shardingsphere-features/shardingsphere-sharding/{shardingsphere-sharding-core => shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler}/src/test/java/org/apache/shardingsphere/sharding/distsql/update/CreateShardingTableRuleStatementUpdaterTest.java (79%)
 rename shardingsphere-features/shardingsphere-sharding/{shardingsphere-sharding-core => shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler}/src/test/java/org/apache/shardingsphere/sharding/distsql/update/DropShardingBindingTableRuleStatementUpdaterTest.java (80%)
 rename shardingsphere-features/shardingsphere-sharding/{shardingsphere-sharding-core => shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler}/src/test/java/org/apache/shardingsphere/sharding/distsql/update/DropShardingBroadcastTableRuleStatementUpdaterTest.java (80%)
 rename shardingsphere-features/shardingsphere-sharding/{shardingsphere-sharding-core => shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler}/src/test/java/org/apache/shardingsphere/sharding/distsql/update/DropShardingTableRuleStatementUpdaterTest.java (81%)
 rename shardingsphere-features/{shardingsphere-db-discovery/shardingsphere-db-discovery-core/src/test/resources/META-INF/services/org.apache.shardingsphere.infra.distsql.query.RQLResultSet => shardingsphere-sharding/shardingsphere-sharding-distsql/shardingsphere-sharding-distsql-handler/src/test/resources/META-INF/services/org.apache.shardingsphere.sharding.spi.ShardingAlgorithm} (89%)
 copy shardingsphere-infra/shardingsphere-infra-binder/src/main/java/org/apache/shardingsphere/infra/binder/statement/dal/{ShowIndexStatementContext.java => ShowTableStatusStatementContext.java} (56%)
 copy shardingsphere-infra/shardingsphere-infra-binder/src/main/java/org/apache/shardingsphere/infra/binder/statement/dal/{ShowIndexStatementContext.java => ShowTablesStatementContext.java} (56%)
 rename {shardingsphere-sql-parser/shardingsphere-sql-parser-statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/segment/generic => shardingsphere-infra/shardingsphere-infra-binder/src/main/java/org/apache/shardingsphere/infra/binder/type}/RemoveAvailable.java (78%)
 copy shardingsphere-sql-parser/shardingsphere-sql-parser-engine/src/test/java/org/apache/shardingsphere/sql/parser/fixture/ParserFixture.java => shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/distsql/exception/DistSQLException.java (68%)
 copy shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/{exception/rule => distsql/exception/resource}/DuplicateResourceException.java (81%)
 rename shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/{exception/rule => distsql/exception/resource}/InvalidResourceException.java (80%)
 rename shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/{exception/rule/ResourceNotExistedException.java => distsql/exception/resource/RequiredResourceMissedException.java} (68%)
 copy shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/{exception/rule/DuplicateResourceException.java => distsql/exception/resource/ResourceDefinitionViolationException.java} (63%)
 rename shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/{exception/rule => distsql/exception/resource}/ResourceInUsedException.java (80%)
 rename shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/{exception/rule/DuplicateRuleNamesException.java => distsql/exception/rule/DuplicateRuleException.java} (69%)
 rename shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/{exception/rule/DuplicateResourceException.java => distsql/exception/rule/InvalidAlgorithmConfigurationException.java} (63%)
 rename shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/main/java/org/apache/shardingsphere/encrypt/distsql/exception/InvalidEncryptorsException.java => shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/distsql/exception/rule/RequiredRuleMissedException.java (55%)
 rename shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/{ => distsql}/exception/rule/RuleDefinitionViolationException.java (72%)
 rename shardingsphere-features/shardingsphere-encrypt/shardingsphere-encrypt-core/src/main/java/org/apache/shardingsphere/encrypt/distsql/exception/EncryptRuleNotExistedException.java => shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/distsql/exception/rule/RuleInUsedException.java (56%)
 rename shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/distsql/update/{RDLAlterUpdater.java => RuleDefinitionAlterUpdater.java} (70%)
 rename shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/distsql/update/{RDLCreateUpdater.java => RuleDefinitionCreateUpdater.java} (75%)
 rename shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/distsql/update/{RDLDropUpdater.java => RuleDefinitionDropUpdater.java} (82%)
 rename shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/distsql/update/{RDLUpdater.java => RuleDefinitionUpdater.java} (82%)
 rename shardingsphere-proxy/shardingsphere-proxy-backend/src/main/java/org/apache/shardingsphere/proxy/backend/text/{distsql/rdl/impl => database}/CreateDatabaseBackendHandler.java (97%)
 copy shardingsphere-proxy/shardingsphere-proxy-backend/src/main/java/org/apache/shardingsphere/proxy/backend/text/{distsql/rdl/RDLBackendHandlerFactory.java => database/DatabaseOperateBackendHandlerFactory.java} (56%)
 rename shardingsphere-proxy/shardingsphere-proxy-backend/src/main/java/org/apache/shardingsphere/proxy/backend/text/{distsql/rdl/impl => database}/DropDatabaseBackendHandler.java (94%)
 delete mode 100644 shardingsphere-proxy/shardingsphere-proxy-backend/src/main/java/org/apache/shardingsphere/proxy/backend/text/distsql/rdl/impl/RDLBackendHandler.java
 rename shardingsphere-proxy/shardingsphere-proxy-backend/src/main/java/org/apache/shardingsphere/proxy/backend/text/distsql/rdl/{impl => resource}/AddResourceBackendHandler.java (92%)
 rename shardingsphere-proxy/shardingsphere-proxy-backend/src/main/java/org/apache/shardingsphere/proxy/backend/text/distsql/rdl/{impl => resource}/DropResourceBackendHandler.java (87%)
 create mode 100644 shardingsphere-proxy/shardingsphere-proxy-backend/src/main/java/org/apache/shardingsphere/proxy/backend/text/distsql/rdl/rule/RuleDefinitionBackendHandler.java
 copy shardingsphere-proxy/shardingsphere-proxy-backend/src/test/java/org/apache/shardingsphere/proxy/backend/text/{distsql/DistSQLBackendHandlerFactoryTest.java => admin/DatabaseOperateBackendHandlerFactoryTest.java} (51%)
 rename shardingsphere-proxy/shardingsphere-proxy-backend/src/test/java/org/apache/shardingsphere/proxy/backend/text/{distsql/rdl/impl => database}/DropDatabaseBackendHandlerTest.java (98%)
 rename shardingsphere-proxy/shardingsphere-proxy-backend/src/test/java/org/apache/shardingsphere/proxy/backend/text/distsql/rdl/{impl => resource}/AddResourceBackendHandlerTest.java (94%)
 create mode 100644 shardingsphere-sql-parser/shardingsphere-sql-parser-engine/src/test/java/org/apache/shardingsphere/sql/parser/api/SQLParserEngineTest.java
 copy shardingsphere-sql-parser/{shardingsphere-sql-parser-statement/src/test/java/org/apache/shardingsphere/sql/parser/sql/common/segment/generic/table/SimpleTableSegmentTest.java => shardingsphere-sql-parser-engine/src/test/java/org/apache/shardingsphere/sql/parser/core/SQLParserFactoryTest.java} (51%)
 copy shardingsphere-sql-parser/shardingsphere-sql-parser-statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/{mysql/dal/MySQLShowColumnsStatement.java => oracle/ddl/OracleDisassociateStatisticsStatement.java} (65%)
 copy shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/db/{alter_table.xml => alter_add.xml} (100%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/db/{broadcast_alter_table.xml => alter_broadcast_add.xml} (100%)
 copy shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/db/{broadcast_unchanged_table.xml => alter_broadcast_change.xml} (94%)
 copy shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/db/{broadcast_unchanged_table.xml => alter_broadcast_drop.xml} (94%)
 copy shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/db/{alter_table.xml => alter_change.xml} (90%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/db/{alter_table.xml => alter_drop.xml} (90%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/db/{broadcast_create_index.xml => create_broadcast_index.xml} (100%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/db/{broadcast_unchanged_table.xml => create_broadcast_table.xml} (100%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/db/{broadcast_create_unique_index.xml => create_broadcast_unique_index.xml} (100%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/db/{broadcast_drop_table.xml => drop_broadcast_table.xml} (100%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/db/{broadcast_create_table.xml => unchanged_broadcast_table.xml} (100%)
 copy shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/dbtbl_with_readwrite_splitting/{alter_table.xml => alter_add.xml} (100%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/dbtbl_with_readwrite_splitting/{broadcast_alter_table.xml => alter_broadcast_add.xml} (100%)
 copy shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/dbtbl_with_readwrite_splitting/{broadcast_create_table.xml => alter_broadcast_change.xml} (94%)
 copy shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/dbtbl_with_readwrite_splitting/{broadcast_create_table.xml => alter_broadcast_drop.xml} (95%)
 copy shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/dbtbl_with_readwrite_splitting/{alter_table.xml => alter_change.xml} (91%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/dbtbl_with_readwrite_splitting/{alter_table.xml => alter_drop.xml} (91%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/dbtbl_with_readwrite_splitting/{broadcast_create_index.xml => create_broadcast_index.xml} (100%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/dbtbl_with_readwrite_splitting/{broadcast_unchanged_table.xml => create_broadcast_table.xml} (100%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/dbtbl_with_readwrite_splitting/{broadcast_create_unique_index.xml => create_broadcast_unique_index.xml} (100%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/dbtbl_with_readwrite_splitting/{broadcast_drop_table.xml => drop_broadcast_table.xml} (100%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/dbtbl_with_readwrite_splitting/{broadcast_create_table.xml => unchanged_broadcast_table.xml} (100%)
 copy shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/dbtbl_with_readwrite_splitting_and_encrypt/{create_user_table.xml => alter_add.xml} (88%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/dbtbl_with_readwrite_splitting_and_encrypt/{change_column_user_table.xml => alter_change.xml} (91%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/dbtbl_with_readwrite_splitting_and_encrypt/{drop_column_user_table.xml => alter_drop.xml} (90%)
 copy shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/dbtbl_with_readwrite_splitting_and_encrypt/{create_user_table.xml => create_index.xml} (85%)
 copy shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/dbtbl_with_readwrite_splitting_and_encrypt/{create_user_table.xml => create_table.xml} (91%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/dbtbl_with_readwrite_splitting_and_encrypt/{create_user_table.xml => create_unique_index.xml} (85%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/dbtbl_with_readwrite_splitting_and_encrypt/{drop_user_table.xml => drop_table.xml} (100%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/dbtbl_with_readwrite_splitting_and_encrypt/{unchanged_user_table.xml => unchanged_table.xml} (91%)
 copy shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/encrypt/{unchanged_user_table.xml => alter_add.xml} (87%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/encrypt/{change_column_user_table.xml => alter_change.xml} (91%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/encrypt/{drop_column_user_table.xml => alter_drop.xml} (90%)
 copy shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/encrypt/{unchanged_user_table.xml => create_index.xml} (84%)
 copy shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/encrypt/{unchanged_user_table.xml => create_table.xml} (91%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/encrypt/{unchanged_user_table.xml => create_unique_index.xml} (84%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/encrypt/{drop_user_table.xml => drop_table.xml} (100%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/encrypt/{create_user_table.xml => unchanged_table.xml} (91%)
 copy shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/readwrite_splitting/{alter_table.xml => alter_add.xml} (100%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/readwrite_splitting/{broadcast_alter_table.xml => alter_broadcast_add.xml} (100%)
 copy shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/readwrite_splitting/{broadcast_create_table.xml => alter_broadcast_change.xml} (94%)
 copy shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/readwrite_splitting/{broadcast_create_table.xml => alter_broadcast_drop.xml} (95%)
 copy shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/readwrite_splitting/{alter_table.xml => alter_change.xml} (91%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/readwrite_splitting/{alter_table.xml => alter_drop.xml} (91%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/readwrite_splitting/{broadcast_create_index.xml => create_broadcast_index.xml} (100%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/readwrite_splitting/{broadcast_unchanged_table.xml => create_broadcast_table.xml} (100%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/readwrite_splitting/{broadcast_create_unique_index.xml => create_broadcast_unique_index.xml} (100%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/readwrite_splitting/{broadcast_drop_table.xml => drop_broadcast_table.xml} (100%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/readwrite_splitting/{broadcast_create_table.xml => unchanged_broadcast_table.xml} (100%)
 copy shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/tbl/{alter_table.xml => alter_add.xml} (100%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/tbl/{broadcast_alter_table.xml => alter_broadcast_add.xml} (100%)
 copy shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/tbl/{broadcast_unchanged_table.xml => alter_broadcast_change.xml} (94%)
 copy shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/tbl/{broadcast_unchanged_table.xml => alter_broadcast_drop.xml} (94%)
 copy shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/tbl/{alter_table.xml => alter_change.xml} (90%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/tbl/{alter_table.xml => alter_drop.xml} (90%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/tbl/{broadcast_create_index.xml => create_broadcast_index.xml} (100%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/tbl/{broadcast_unchanged_table.xml => create_broadcast_table.xml} (100%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/tbl/{broadcast_create_unique_index.xml => create_broadcast_unique_index.xml} (100%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/tbl/{broadcast_drop_table.xml => drop_broadcast_table.xml} (100%)
 rename shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-suite/src/test/resources/cases/ddl/dataset/tbl/{broadcast_create_table.xml => unchanged_broadcast_table.xml} (100%)
 create mode 100644 shardingsphere-test/shardingsphere-parser-test/src/main/java/org/apache/shardingsphere/test/sql/parser/parameterized/asserts/statement/ddl/impl/DisassociateStatisticsStatementAssert.java
 create mode 100644 shardingsphere-test/shardingsphere-parser-test/src/main/java/org/apache/shardingsphere/test/sql/parser/parameterized/jaxb/cases/domain/statement/ddl/DisassociateStatisticsStatementTestCase.java
 create mode 100644 shardingsphere-test/shardingsphere-parser-test/src/main/resources/case/ddl/disassociate-statistics.xml
 create mode 100644 shardingsphere-test/shardingsphere-parser-test/src/main/resources/sql/supported/ddl/disassociate-statistics.xml

[shardingsphere] 01/02: Merge remote-tracking branch 'apache/master' into opengauss_adapt

Posted by wu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 848fc02c18d6072ca8e10b764bf2d98634dbc763
Merge: 20d27b4 0a87730
Author: 吴伟杰 <wu...@apache.org>
AuthorDate: Tue Jul 6 18:46:25 2021 +0800

    Merge remote-tracking branch 'apache/master' into opengauss_adapt

 .github/workflows/ci.yml                           |  45 +++---
 .github/workflows/it.yml                           |   3 +
 .../features/sharding/principle/parse.cn.md        |   4 +-
 .../features/sharding/principle/parse.en.md        |   4 +-
 .../query/text/PostgreSQLDataRowPacket.java        |   4 +
 .../query/text/PostgreSQLDataRowPacketTest.java    |  10 ++
 shardingsphere-distsql-parser/pom.xml              |   1 -
 .../RQLStatement.java => DistSQLStatement.java}    |   6 +-
 .../distsql/parser/statement/ral/RALStatement.java |   4 +-
 .../distsql/parser/statement/rdl/RDLStatement.java |   4 +-
 .../statement/rdl/ResourceDefinitionStatement.java |   8 +-
 ...Statement.java => RuleDefinitionStatement.java} |   6 +-
 .../statement/rdl/alter/AlterRuleStatement.java    |   4 +-
 .../statement/rdl/create/AddResourceStatement.java |   4 +-
 .../statement/rdl/create/CreateRuleStatement.java  |   4 +-
 .../statement/rdl/drop/DropResourceStatement.java  |   4 +-
 .../statement/rdl/drop/DropRuleStatement.java      |   4 +-
 .../distsql/parser/statement/rql/RQLStatement.java |   4 +-
 .../shardingsphere-db-discovery-core/pom.xml       |  13 +-
 .../DatabaseDiscoveryRuleNotExistedException.java  |  34 -----
 .../InvalidDatabaseDiscoveryTypesException.java    |  34 -----
 .../DatabaseDiscoveryRuleStatementConverter.java   |  70 ----------
 .../shardingsphere-db-discovery-distsql/pom.xml    |   1 +
 .../pom.xml                                        |  12 +-
 .../DatabaseDiscoveryRuleStatementConverter.java   |  58 ++++++++
 .../query/DatabaseDiscoveryRuleQueryResultSet.java |   2 +-
 ...AlterDatabaseDiscoveryRuleStatementUpdater.java |  69 +++++-----
 ...reateDatabaseDiscoveryRuleStatementUpdater.java |  46 +++----
 .../DropDatabaseDiscoveryRuleStatementUpdater.java |  24 ++--
 ...shardingsphere.infra.distsql.query.RQLResultSet |   2 +-
 ...ere.infra.distsql.update.RuleDefinitionUpdater} |   6 +-
 ...atabaseDiscoveryRuleStatementConverterTest.java |  15 +-
 .../DatabaseDiscoveryRuleQueryResultSetTest.java   |   6 +-
 ...rDatabaseDiscoveryRuleStatementUpdaterTest.java |  31 ++---
 ...eDatabaseDiscoveryRuleStatementUpdaterTest.java |  21 +--
 ...pDatabaseDiscoveryRuleStatementUpdaterTest.java |  15 +-
 .../pom.xml                                        |   2 +-
 .../shardingsphere-encrypt-core/pom.xml            |   7 +-
 .../converter/EncryptRuleStatementConverter.java   |  83 -----------
 .../shardingsphere-encrypt-distsql/pom.xml         |   1 +
 .../pom.xml                                        |  12 +-
 .../converter/EncryptRuleStatementConverter.java   |  79 +++++++++++
 .../handler}/query/EncryptRuleQueryResultSet.java  |   2 +-
 .../update/AlterEncryptRuleStatementUpdater.java   |  65 ++++-----
 .../update/CreateEncryptRuleStatementUpdater.java  |  39 +++---
 .../update/DropEncryptRuleStatementUpdater.java    |  25 ++--
 ...shardingsphere.infra.distsql.query.RQLResultSet |   2 +-
 ...ere.infra.distsql.update.RuleDefinitionUpdater} |   4 +-
 .../EncryptRuleStatementConverterTest.java         |  20 ++-
 .../query/EncryptRuleQueryResultSetTest.java       |   2 +-
 .../AlterEncryptRuleStatementUpdaterTest.java      |  25 ++--
 .../CreateEncryptRuleStatementUpdaterTest.java     |  15 +-
 .../DropEncryptRuleStatementUpdaterTest.java       |  15 +-
 .../parser/segment/EncryptColumnSegment.java       |   2 +
 .../pom.xml                                        |   7 +-
 .../exception/InvalidLoadBalancersException.java   |  34 -----
 .../ReadwriteSplittingRuleNotExistedException.java |  34 -----
 .../ReadwriteSplittingRuleStatementConverter.java  |  92 -------------
 ....shardingsphere.infra.distsql.update.RDLUpdater |  20 ---
 .../pom.xml                                        |   1 +
 .../pom.xml                                        |  12 +-
 .../ReadwriteSplittingRuleStatementConverter.java  |  70 ++++++++++
 .../ReadwriteSplittingRuleQueryResultSet.java      |   2 +-
 ...lterReadwriteSplittingRuleStatementUpdater.java |  71 +++++-----
 ...eateReadwriteSplittingRuleStatementUpdater.java |  46 +++----
 ...DropReadwriteSplittingRuleStatementUpdater.java |  24 ++--
 ...hardingsphere.infra.distsql.query.RQLResultSet} |   4 +-
 ...ere.infra.distsql.update.RuleDefinitionUpdater} |   6 +-
 .../ReadwriteSplittingRuleQueryResultSetTest.java  |   2 +-
 ...ReadwriteSplittingRuleStatementUpdaterTest.java |  31 ++---
 ...ReadwriteSplittingRuleStatementUpdaterTest.java |  21 +--
 ...ReadwriteSplittingRuleStatementUpdaterTest.java |  15 +-
 .../impl/PreparedShadowDataSourceRouterTest.java   |  28 +++-
 .../impl/SimpleShadowDataSourceRouterTest.java     |  37 +++--
 .../shardingsphere-sharding-core/pom.xml           |   2 +-
 .../converter/ShardingRuleStatementConverter.java  | 152 ---------------------
 .../exception/DuplicateBindingTablesException.java |  34 -----
 .../exception/DuplicateTablesException.java        |  34 -----
 .../exception/InvalidKeyGeneratorsException.java   |  34 -----
 .../InvalidShardingAlgorithmsException.java        |  34 -----
 ...ShardingBindingTableRuleNotExistsException.java |  32 -----
 ...ShardingBroadcastTableRuleExistedException.java |  32 -----
 ...ardingBroadcastTableRuleNotExistsException.java |  32 -----
 .../ShardingTableRuleNotExistedException.java      |  34 -----
 .../ShardingTableRulesInUsedException.java         |  34 -----
 .../token/generator/impl/TableTokenGenerator.java  |   4 +-
 ....shardingsphere.infra.distsql.update.RDLUpdater |  26 ----
 .../merge/ShardingResultMergerEngineTest.java      |  30 ++--
 .../merge/dql/ShardingDQLResultMergerTest.java     |   3 +-
 .../dql/groupby/GroupByStreamMergedResultTest.java |   3 +-
 .../dql/orderby/OrderByStreamMergedResultTest.java |   3 +-
 .../type/ShardingRouteEngineFactoryTest.java       |   5 +-
 .../engine/type/standard/AbstractSQLRouteTest.java |   7 +-
 .../ShardingAlterTableStatementValidatorTest.java  |  33 ++---
 .../ShardingAlterViewStatementValidatorTest.java   |   5 +-
 ...ardingCreateFunctionStatementValidatorTest.java |  11 +-
 .../ShardingCreateIndexStatementValidatorTest.java |  13 +-
 ...rdingCreateProcedureStatementValidatorTest.java |  11 +-
 .../ShardingCreateTableStatementValidatorTest.java |  27 ++--
 .../ShardingCreateViewStatementValidatorTest.java  |   5 +-
 .../ShardingDropTableStatementValidatorTest.java   |  15 +-
 .../ddl/ShardingPrepareStatementValidatorTest.java |   5 +-
 .../dml/ShardingDeleteStatementValidatorTest.java  |   7 +-
 .../dml/ShardingInsertStatementValidatorTest.java  |  42 +++---
 .../dml/ShardingUpdateStatementValidatorTest.java  |   9 +-
 .../yaml/distsql/sharding-rule-config.yaml         |  51 -------
 .../shardingsphere-sharding-distsql/pom.xml        |   1 +
 .../pom.xml                                        |  12 +-
 .../converter/ShardingRuleStatementConverter.java  |  91 ++++++++++++
 .../ShardingBindingTableRuleQueryResultSet.java    |   2 +-
 .../ShardingBroadcastTableRuleQueryResultSet.java  |   2 +-
 .../query/ShardingTableRuleQueryResultSet.java     |   2 +-
 ...erShardingBindingTableRuleStatementUpdater.java |  49 ++++---
 ...ShardingBroadcastTableRuleStatementUpdater.java |  30 ++--
 .../AlterShardingTableRuleStatementUpdater.java    |  80 +++++------
 ...teShardingBindingTableRuleStatementUpdater.java |  47 ++++---
 ...ShardingBroadcastTableRuleStatementUpdater.java |  36 ++---
 .../CreateShardingTableRuleStatementUpdater.java   |  45 +++---
 ...opShardingBindingTableRuleStatementUpdater.java |  17 +--
 ...ShardingBroadcastTableRuleStatementUpdater.java |  17 +--
 .../DropShardingTableRuleStatementUpdater.java     |  33 +++--
 ...shardingsphere.infra.distsql.query.RQLResultSet |   6 +-
 ...here.infra.distsql.update.RuleDefinitionUpdater |  26 ++++
 .../ShardingRuleStatementConverterTest.java        |  38 +++---
 .../fixture/StandardShardingAlgorithmFixture.java  |  31 +++--
 ...ShardingBindingTableRuleQueryResultSetTest.java |   1 +
 ...ardingBroadcastTableRuleQueryResultSetTest.java |   1 +
 .../query/ShardingTableRuleQueryResultSetTest.java |  52 +++++--
 ...ardingBindingTableRuleStatementUpdaterTest.java |  20 ++-
 ...dingBroadcastTableRuleStatementUpdaterTest.java |  27 ++--
 ...AlterShardingTableRuleStatementUpdaterTest.java |  38 +++---
 ...ardingBindingTableRuleStatementUpdaterTest.java |  13 +-
 ...reateShardingTableRuleStatementUpdaterTest.java |  14 +-
 ...ardingBindingTableRuleStatementUpdaterTest.java |  14 +-
 ...dingBroadcastTableRuleStatementUpdaterTest.java |  14 +-
 .../DropShardingTableRuleStatementUpdaterTest.java |  21 +--
 ....shardingsphere.sharding.spi.ShardingAlgorithm} |   2 +-
 .../infra/binder/SQLStatementContextFactory.java   |  28 +++-
 .../infra/binder/segment/table/TablesContext.java  |  14 ++
 .../statement/dal/ShowColumnsStatementContext.java |  14 +-
 .../dal/ShowCreateTableStatementContext.java       |   2 +-
 .../statement/dal/ShowIndexStatementContext.java   |   2 +-
 ...t.java => ShowTableStatusStatementContext.java} |  24 ++--
 ...ontext.java => ShowTablesStatementContext.java} |  24 ++--
 .../statement/ddl/DropIndexStatementContext.java   |   2 +-
 .../statement/ddl/DropTableStatementContext.java   |   2 +-
 .../statement/ddl/TruncateStatementContext.java    |   2 +-
 .../statement/dml/InsertStatementContext.java      |  30 ++--
 .../statement/dml/SelectStatementContext.java      |  16 ++-
 .../infra/binder/type}/RemoveAvailable.java        |  13 +-
 .../engine/GeneratedKeyContextEngineTest.java      |   9 +-
 .../orderby/engine/OrderByContextEngineTest.java   |   7 +-
 .../select/pagination/PaginationContextTest.java   |  13 +-
 .../projection/engine/ProjectionEngineTest.java    |   5 +-
 .../engine/ProjectionsContextEngineTest.java       |  41 ++++--
 .../binder/segment/table/TablesContextTest.java    |   5 +-
 .../statement/SQLStatementContextFactoryTest.java  |  22 ++-
 .../statement/dml/DeleteStatementContextTest.java  |   5 +-
 .../statement/dml/UpdateStatementContextTest.java  |   5 +-
 .../statement/impl/InsertStatementContextTest.java |  71 +++++-----
 .../statement/impl/SelectStatementContextTest.java |  15 +-
 .../infra/distsql/exception/DistSQLException.java  |  17 ++-
 .../resource}/DuplicateResourceException.java      |   6 +-
 .../resource}/InvalidResourceException.java        |   6 +-
 .../resource/RequiredResourceMissedException.java} |  10 +-
 .../ResourceDefinitionViolationException.java}     |  14 +-
 .../resource}/ResourceInUsedException.java         |   6 +-
 .../exception/rule/DuplicateRuleException.java}    |  10 +-
 .../InvalidAlgorithmConfigurationException.java}   |  12 +-
 .../rule/RequiredRuleMissedException.java          |  18 +--
 .../rule/RuleDefinitionViolationException.java     |  17 +--
 .../exception/rule/RuleInUsedException.java        |  18 +--
 ...pdater.java => RuleDefinitionAlterUpdater.java} |  19 ++-
 ...dater.java => RuleDefinitionCreateUpdater.java} |  11 +-
 ...Updater.java => RuleDefinitionDropUpdater.java} |   7 +-
 ...{RDLUpdater.java => RuleDefinitionUpdater.java} |   8 +-
 .../AlterTableStatementFederateRefresherTest.java  |   2 +-
 .../generator/generic/RemoveTokenGenerator.java    |  62 +++++----
 .../statement/ShardingSpherePreparedStatement.java |   4 +-
 .../core/statement/ShardingSphereStatement.java    |   4 +-
 .../DatabaseCommunicationEngineFactory.java        |  21 +--
 .../jdbc/connection/BackendConnection.java         |   9 ++
 .../backend/text/SchemaRequiredBackendHandler.java |   5 +-
 .../text/TextProtocolBackendHandlerFactory.java    |  29 ++--
 .../text/data/DatabaseBackendHandlerFactory.java   |  12 +-
 .../data/impl/BroadcastDatabaseBackendHandler.java |   8 +-
 .../impl/SchemaAssignedDatabaseBackendHandler.java |   6 +-
 .../data/impl/UnicastDatabaseBackendHandler.java   |   6 +-
 .../CreateDatabaseBackendHandler.java              |   2 +-
 .../DatabaseOperateBackendHandlerFactory.java}     |  33 ++---
 .../DropDatabaseBackendHandler.java                |   5 +-
 .../text/distsql/DistSQLBackendHandlerFactory.java |  22 +--
 .../text/distsql/ral/RALBackendHandlerFactory.java |  38 +++---
 .../text/distsql/rdl/RDLBackendHandlerFactory.java |  31 ++---
 .../text/distsql/rdl/impl/RDLBackendHandler.java   |  93 -------------
 .../AddResourceBackendHandler.java                 |  11 +-
 .../DropResourceBackendHandler.java                |  17 +--
 .../rdl/rule/RuleDefinitionBackendHandler.java     | 116 ++++++++++++++++
 .../text/distsql/rql/RQLBackendHandlerFactory.java |   2 +-
 .../explain/ShardingCTLExplainBackendHandler.java  |  26 ++--
 .../TransactionBackendHandlerFactory.java          |   8 +-
 .../TextProtocolBackendHandlerFactoryTest.java     |  10 +-
 .../DatabaseCommunicationEngineFactoryTest.java    |   6 +-
 .../DatabaseCommunicationEngineTest.java           |  11 +-
 .../DatabaseOperateBackendHandlerFactoryTest.java} | 128 ++---------------
 .../data/DatabaseBackendHandlerFactoryTest.java    |  18 ++-
 .../impl/BroadcastDatabaseBackendHandlerTest.java  |   3 +-
 .../SchemaAssignedDatabaseBackendHandlerTest.java  |   3 +-
 .../impl/UnicastDatabaseBackendHandlerTest.java    |   3 +-
 .../DropDatabaseBackendHandlerTest.java            |   2 +-
 .../distsql/DistSQLBackendHandlerFactoryTest.java  |  99 ++------------
 .../AddResourceBackendHandlerTest.java             |   9 +-
 .../ShardingCTLExplainBackendHandlerTest.java      |   1 +
 .../TransactionBackendHandlerFactoryTest.java      |  14 +-
 .../execute/MySQLComStmtExecuteExecutor.java       |  14 +-
 .../fieldlist/MySQLComFieldListPacketExecutor.java |  16 ++-
 .../frontend/mysql/err/MySQLErrPacketFactory.java  |  10 +-
 .../command/MySQLCommandExecutorFactoryTest.java   |   1 +
 .../execute/MySQLComStmtExecuteExecutorTest.java   |   2 +
 .../mysql/err/MySQLErrPacketFactoryTest.java       |  28 ++--
 .../command/PostgreSQLConnectionContext.java       |  17 +--
 .../command/query/binary/PostgreSQLPortal.java     |  10 +-
 .../execute/PostgreSQLComExecuteExecutor.java      |  15 +-
 .../binary/parse/PostgreSQLComParseExecutor.java   |   1 -
 .../execute/PostgreSQLComExecuteExecutorTest.java  |  60 +++++++-
 .../parser/mysql/visitor/MySQLSQLStatVisitor.java  |   3 +-
 .../statement/impl/MySQLStatementSQLVisitor.java   |   6 +-
 .../src/main/antlr4/imports/oracle/BaseRule.g4     |   2 +-
 .../src/main/antlr4/imports/oracle/DDLStatement.g4 |  10 ++
 .../main/antlr4/imports/oracle/OracleKeyword.g4    |   4 +
 .../sql/parser/autogen/OracleStatement.g4          |   1 +
 .../impl/OracleDDLStatementSQLVisitor.java         |  21 +++
 .../statement/impl/OracleStatementSQLVisitor.java  |   6 +-
 .../impl/PostgreSQLDALStatementSQLVisitor.java     |   4 +-
 .../impl/PostgreSQLDDLStatementSQLVisitor.java     |   4 +-
 .../impl/PostgreSQLStatementSQLVisitor.java        |  17 ++-
 .../statement/impl/SQL92StatementSQLVisitor.java   |   2 +-
 .../impl/SQLServerStatementSQLVisitor.java         |   2 +-
 .../core/database/visitor/SQLVisitorRule.java      |   2 +
 .../sql/parser/api/SQLParserEngineTest.java        |  74 ++++++++++
 .../sql/parser/core/SQLParserFactoryTest.java}     |  28 ++--
 .../sql/parser/fixture/LexerFixture.java           |  24 +++-
 .../sql/parser/fixture/ParserFixture.java          |  29 +++-
 .../sql/common/extractor/TableExtractor.java       |   9 +-
 .../sql/common/segment/dal/FromSchemaSegment.java  |   4 +-
 .../segment/generic/table/SimpleTableSegment.java  |   7 +-
 .../sql/common/statement/dml/SelectStatement.java  |  12 +-
 .../sql/parser/sql/common/util/SQLUtil.java        |  14 --
 .../mysql/dal/MySQLShowColumnsStatement.java       |   6 +-
 .../mysql/dal/MySQLShowTableStatusStatement.java   |   6 +-
 .../mysql/dal/MySQLShowTablesStatement.java        |   6 +-
 .../OracleDisassociateStatisticsStatement.java}    |  35 ++---
 .../sql/common/extractor/TableExtractorTest.java   |   6 +-
 .../generic/table/SimpleTableSegmentTest.java      |   4 +-
 .../handler/dal/ExplainStatementHandlerTest.java   |   3 +-
 .../ddl/AlterIndexStatementHandlerTest.java        |   3 +-
 .../handler/ddl/DropIndexStatementHandlerTest.java |   5 +-
 .../dataset/db/{alter_table.xml => alter_add.xml}  |   0
 ...ast_alter_table.xml => alter_broadcast_add.xml} |   0
 ...hanged_table.xml => alter_broadcast_change.xml} |   2 +-
 ...nchanged_table.xml => alter_broadcast_drop.xml} |   1 -
 .../db/{alter_table.xml => alter_change.xml}       |   3 +-
 .../dataset/db/{alter_table.xml => alter_drop.xml} |   2 -
 ...create_index.xml => create_broadcast_index.xml} |   0
 ...hanged_table.xml => create_broadcast_table.xml} |   0
 ...index.xml => create_broadcast_unique_index.xml} |   0
 ...ast_drop_table.xml => drop_broadcast_table.xml} |   0
 ...ate_table.xml => unchanged_broadcast_table.xml} |   0
 .../{alter_table.xml => alter_add.xml}             |   0
 ...ast_alter_table.xml => alter_broadcast_add.xml} |   0
 ...create_table.xml => alter_broadcast_change.xml} |   2 +-
 ...t_create_table.xml => alter_broadcast_drop.xml} |   1 -
 .../{alter_table.xml => alter_change.xml}          |   3 +-
 .../{alter_table.xml => alter_drop.xml}            |   2 -
 ...create_index.xml => create_broadcast_index.xml} |   0
 ...hanged_table.xml => create_broadcast_table.xml} |   0
 ...index.xml => create_broadcast_unique_index.xml} |   0
 ...ast_drop_table.xml => drop_broadcast_table.xml} |   0
 ...ate_table.xml => unchanged_broadcast_table.xml} |   0
 .../{create_user_table.xml => alter_add.xml}       |   4 +-
 ...ange_column_user_table.xml => alter_change.xml} |   5 +-
 .../{drop_column_user_table.xml => alter_drop.xml} |   3 +-
 .../{create_user_table.xml => create_index.xml}    |   4 +-
 .../{create_user_table.xml => create_table.xml}    |   5 +-
 ...eate_user_table.xml => create_unique_index.xml} |   4 +-
 .../{drop_user_table.xml => drop_table.xml}        |   0
 ...nchanged_user_table.xml => unchanged_table.xml} |   3 +-
 .../{unchanged_user_table.xml => alter_add.xml}    |   4 +-
 ...ange_column_user_table.xml => alter_change.xml} |   3 +-
 .../{drop_column_user_table.xml => alter_drop.xml} |   3 +-
 .../{unchanged_user_table.xml => create_index.xml} |   4 +-
 .../{unchanged_user_table.xml => create_table.xml} |   5 +-
 ...nged_user_table.xml => create_unique_index.xml} |   4 +-
 .../{drop_user_table.xml => drop_table.xml}        |   0
 .../{create_user_table.xml => unchanged_table.xml} |   3 +-
 .../{alter_table.xml => alter_add.xml}             |   0
 ...ast_alter_table.xml => alter_broadcast_add.xml} |   0
 ...create_table.xml => alter_broadcast_change.xml} |   2 +-
 ...t_create_table.xml => alter_broadcast_drop.xml} |   1 -
 .../{alter_table.xml => alter_change.xml}          |   3 +-
 .../{alter_table.xml => alter_drop.xml}            |   2 -
 ...create_index.xml => create_broadcast_index.xml} |   0
 ...hanged_table.xml => create_broadcast_table.xml} |   0
 ...index.xml => create_broadcast_unique_index.xml} |   0
 ...ast_drop_table.xml => drop_broadcast_table.xml} |   0
 ...ate_table.xml => unchanged_broadcast_table.xml} |   0
 .../dataset/tbl/{alter_table.xml => alter_add.xml} |   0
 ...ast_alter_table.xml => alter_broadcast_add.xml} |   0
 ...hanged_table.xml => alter_broadcast_change.xml} |   2 +-
 ...nchanged_table.xml => alter_broadcast_drop.xml} |   1 -
 .../tbl/{alter_table.xml => alter_change.xml}      |   3 +-
 .../tbl/{alter_table.xml => alter_drop.xml}        |   2 -
 ...create_index.xml => create_broadcast_index.xml} |   0
 ...hanged_table.xml => create_broadcast_table.xml} |   0
 ...index.xml => create_broadcast_unique_index.xml} |   0
 ...ast_drop_table.xml => drop_broadcast_table.xml} |   0
 ...ate_table.xml => unchanged_broadcast_table.xml} |   0
 .../cases/ddl/ddl-integration-test-cases.xml       | 133 +++++++++++-------
 .../asserts/statement/ddl/DDLStatementAssert.java  |   5 +
 .../DisassociateStatisticsStatementAssert.java     |  75 ++++++++++
 .../jaxb/cases/domain/SQLParserTestCases.java      |   5 +
 .../DisassociateStatisticsStatementTestCase.java   |  47 +++++++
 .../resources/case/ddl/disassociate-statistics.xml |  40 ++++++
 .../src/main/resources/case/dml/insert.xml         |  14 ++
 .../sql/supported/ddl/disassociate-statistics.xml  |  27 ++++
 .../main/resources/sql/supported/dml/insert.xml    |   1 +
 .../EncryptSQLRewriterParameterizedTest.java       |  17 ++-
 .../scenario/MixSQLRewriterParameterizedTest.java  |  15 +-
 .../ShardingSQLRewriterParameterizedTest.java      |  18 ++-
 329 files changed, 2760 insertions(+), 2775 deletions(-)

[shardingsphere] 02/02: Adapt master

Posted by wu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 8de86d7449438a82b60684cd742578bfa0d21959
Author: 吴伟杰 <wu...@apache.org>
AuthorDate: Tue Jul 6 18:57:22 2021 +0800

    Adapt master
---
 .../binary/bind/OpenGaussComBatchBindExecutor.java      | 17 +++++++++--------
 1 file changed, 9 insertions(+), 8 deletions(-)

diff --git a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/binary/bind/OpenGaussComBatchBindExecutor.java b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/binary/bind/OpenGaussComBatchBindExecutor.java
index ee879bd..4d3ae04 100644
--- a/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/binary/bind/OpenGaussComBatchBindExecutor.java
+++ b/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/binary/bind/OpenGaussComBatchBindExecutor.java
@@ -30,6 +30,8 @@ import org.apache.shardingsphere.db.protocol.postgresql.packet.command.query.bin
 import org.apache.shardingsphere.db.protocol.postgresql.packet.command.query.binary.bind.PostgreSQLBindCompletePacket;
 import org.apache.shardingsphere.db.protocol.postgresql.packet.command.query.text.PostgreSQLDataRowPacket;
 import org.apache.shardingsphere.db.protocol.postgresql.packet.generic.PostgreSQLCommandCompletePacket;
+import org.apache.shardingsphere.infra.binder.SQLStatementContextFactory;
+import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
 import org.apache.shardingsphere.infra.database.type.DatabaseTypeRegistry;
 import org.apache.shardingsphere.infra.parser.ShardingSphereSQLParserEngine;
 import org.apache.shardingsphere.proxy.backend.communication.DatabaseCommunicationEngine;
@@ -75,11 +77,14 @@ public final class OpenGaussComBatchBindExecutor implements QueryCommandExecutor
     @Getter
     private volatile ResponseType responseType;
     
+    private SQLStatement sqlStatement;
+    
     private boolean batchBindComplete;
     
     @Override
     public Collection<DatabasePacket<?>> execute() throws SQLException {
         List<List<Object>> parameters = packet.getParameters();
+        sqlStatement = parseSql(packet.getSql(), backendConnection.getSchemaName());
         for (int i = 0; i < parameters.size(); i++) {
             List<Object> parameter = parameters.get(i);
             init(parameter);
@@ -96,15 +101,11 @@ public final class OpenGaussComBatchBindExecutor implements QueryCommandExecutor
     }
     
     private void init(final List<Object> parameter) {
-        databaseCommunicationEngines.add(DatabaseCommunicationEngineFactory.getInstance().newBinaryProtocolInstance(getSqlStatement(), packet.getSql(), parameter, backendConnection));
+        databaseCommunicationEngines.add(DatabaseCommunicationEngineFactory.getInstance().newBinaryProtocolInstance(getSqlStatementContext(parameter), packet.getSql(), parameter, backendConnection));
     }
     
-    private SQLStatement getSqlStatement() {
-        return connectionContext.getSqlStatement().orElseGet(() -> {
-            SQLStatement result = parseSql(packet.getSql(), backendConnection.getSchemaName());
-            connectionContext.setSqlStatement(result);
-            return result;
-        });
+    private SQLStatementContext<?> getSqlStatementContext(final List<Object> parameters) {
+        return SQLStatementContextFactory.newInstance(ProxyContext.getInstance().getMetaDataContexts().getMetaDataMap(), parameters, sqlStatement, backendConnection.getDefaultSchemaName());
     }
     
     private SQLStatement parseSql(final String sql, final String schemaName) {
@@ -147,7 +148,7 @@ public final class OpenGaussComBatchBindExecutor implements QueryCommandExecutor
     @Override
     public PostgreSQLPacket getQueryRowPacket() throws SQLException {
         if (batchBindComplete) {
-            String sqlCommand = connectionContext.getSqlStatement().map(SQLStatement::getClass).map(PostgreSQLCommand::valueOf).map(command -> command.map(Enum::name).orElse("")).orElse("");
+            String sqlCommand = PostgreSQLCommand.valueOf(sqlStatement.getClass()).map(Enum::name).orElse("");
             return new PostgreSQLCommandCompletePacket(sqlCommand, connectionContext.getUpdateCount());
         }
         QueryResponseRow queryResponseRow = databaseCommunicationEngines.get(0).getQueryResponseRow();