This is an automated email from the ASF dual-hosted git repository. menghaoran pushed a commit to branch opengauss_adapt in repository https://gitbox.apache.org/repos/asf/shardingsphere.git
commit cc158d508f17885bc57e3987df6ba39bb1869456 Merge: 06fe196 8c9cd45 Author: Haoran Meng <[email protected]> AuthorDate: Fri May 28 15:58:35 2021 +0800 Merge pull request #10523 from apache/master Merge master branch docs/community/content/powered-by/_index.cn.md | 3 +- docs/community/content/powered-by/_index.en.md | 3 +- .../test-engine/performance-test-sysbench.cn.md | 6 +- .../test-engine/performance-test-sysbench.en.md | 6 +- .../db/protocol/error/CommonErrorCode.java | 28 +- .../db/protocol/error/CommonErrorCodeTest.java | 8 +- .../integer/MySQLShortBinlogProtocolValue.java | 2 +- .../integer/MySQLTinyBinlogProtocolValue.java | 2 +- .../integer/MySQLShortBinlogProtocolValueTest.java | 9 +- .../integer/MySQLTinyBinlogProtocolValueTest.java | 9 +- .../src/main/antlr4/imports/RQLStatement.g4 | 32 +- .../distsql/parser/autogen/DistSQLStatement.g4 | 7 +- .../distsql/parser/core/DistSQLVisitor.java | 59 ++- .../api/DistSQLStatementParserEngineTest.java | 91 +++++ .../show/ShowDatabaseDiscoveryRulesStatement.java | 17 +- .../rql/show/ShowEncryptRulesStatement.java | 16 +- .../show/ShowReadwriteSplittingRulesStatement.java | 17 +- ...wRuleStatement.java => ShowRulesStatement.java} | 10 +- .../ShowShardingBindingTableRulesStatement.java | 17 +- .../ShowShardingBroadcastTableRulesStatement.java | 17 +- .../rql/show/ShowShardingTableRulesStatement.java | 18 +- ...ter.java => EncryptRuleStatementConverter.java} | 20 +- ...java => EncryptRuleStatementConverterTest.java} | 6 +- .../shardingsphere/sharding/rule/ShardingRule.java | 10 + .../sharding/rule/ShardingRuleTest.java | 10 + .../src/test/resources/sharding/alter.xml | 136 +++---- .../src/test/resources/sharding/create.xml | 140 +++++++ .../src/test/resources/sharding/drop.xml | 140 +++++++ .../sharding/route/engine/ShardingSQLRouter.java | 2 +- .../ShardingTableBroadcastRoutingEngine.java | 8 +- .../type/single/SingleTablesRoutingEngine.java | 21 +- .../validator/ShardingStatementValidator.java | 3 +- .../ddl/ShardingDDLStatementValidator.java | 16 + .../impl/ShardingAlterTableStatementValidator.java | 34 +- .../impl/ShardingAlterViewStatementValidator.java | 2 +- .../ShardingCreateFunctionStatementValidator.java | 2 +- .../ShardingCreateProcedureStatementValidator.java | 2 +- .../ShardingCreateTableStatementValidator.java | 7 +- .../impl/ShardingCreateViewStatementValidator.java | 2 +- .../impl/ShardingDropTableStatementValidator.java | 13 +- .../impl/ShardingPrepareStatementValidator.java | 2 +- .../dml/impl/ShardingDeleteStatementValidator.java | 2 +- .../dml/impl/ShardingInsertStatementValidator.java | 2 +- .../dml/impl/ShardingSelectStatementValidator.java | 2 +- .../dml/impl/ShardingUpdateStatementValidator.java | 2 +- .../ShardingTableBroadcastRoutingEngineTest.java | 7 +- .../ShardingAlterTableStatementValidatorTest.java | 108 ++++-- .../ShardingCreateTableStatementValidatorTest.java | 86 ++++- .../ShardingDropTableStatementValidatorTest.java | 84 ++++- .../ddl/ShardingPrepareStatementValidatorTest.java | 6 +- .../listener/PrivilegeNodeChangedListener.java | 4 +- .../authority/listener/UserChangedListener.java | 4 +- .../metadata/GovernanceMetaDataContexts.java | 18 +- .../metadata/GovernanceMetaDataContextsTest.java | 2 +- .../governance/core/facade/GovernanceFacade.java | 6 +- .../governance/core/registry/RegistryCenter.java | 419 ++------------------- .../core/registry/RegistryCenterNode.java | 389 ------------------- .../governance/core/registry/UserNode.java | 27 +- .../governance/core/registry/cache/CacheNode.java} | 32 +- .../registry/{ => cache}/RegistryCacheManager.java | 6 +- .../registry/cache/ScalingRegistrySubscriber.java | 83 ++++ .../listener/impl/DataSourceChangedListener.java | 11 +- .../impl/DataSourceStateChangedListener.java | 15 +- .../listener/impl/GlobalRuleChangedListener.java | 4 +- .../listener/impl/MetaDataChangedListener.java | 14 +- .../listener/impl/PropertiesChangedListener.java | 6 +- .../listener/impl/RuleChangedListener.java | 20 +- .../listener/impl/SchemaChangedListener.java | 8 +- .../impl/TerminalStateChangedListener.java | 6 +- .../config/impl/DataSourceRegistryService.java | 45 ++- .../config/impl/GlobalRuleRegistryService.java | 71 +++- .../config/impl/PropertiesRegistryService.java | 10 +- .../config/impl/SchemaRuleRegistryService.java | 29 +- .../registry/service/config/node/GlobalNode.java | 36 +- .../service/config/node/SchemaMetadataNode.java | 155 ++++++++ .../core/registry/service/process/ProcessNode.java | 33 +- .../service/process/ProcessRegistrySubscriber.java | 109 ++++++ .../service/schema/SchemaRegistryService.java | 132 +++++++ .../state/DataSourceStatusRegistryService.java | 82 ++++ .../service/state/LockRegistryService.java | 6 +- .../core/registry/service/state/StatesNode.java | 185 +++++++++ .../core/registry/util/SchemaNameUtil.java | 28 +- .../core/facade/GovernanceFacadeTest.java | 4 +- .../core/registry/RegistryCenterNodeTest.java | 134 ------- .../core/registry/RegistryCenterTest.java | 176 +-------- .../governance/core/registry/UserNodeTest.java | 17 +- .../ScalingRegistrySubscriberTest.java} | 50 +-- .../config/impl/DataSourceRegistryServiceTest.java | 77 ++-- .../config/impl/SchemaRuleRegistryServiceTest.java | 10 + .../service/config/node/GlobalNodeTest.java | 25 +- .../config/node/SchemaMetadataNodeTest.java | 61 +++ .../service/schema/SchemaRegistryServiceTest.java | 152 ++++++++ .../state/DataSourceStatusRegistryServiceTest.java | 90 +++++ .../registry/service/state/StatesNodeTest.java | 84 +++++ .../test/resources/yaml/regcenter/data-source.yaml | 6 + .../governance/repository/etcd/EtcdRepository.java | 34 +- .../repository/etcd/props/EtcdPropertyKey.java | 7 +- .../repository/etcd/EtcdRepositoryTest.java | 28 ++ ...vilegesPermittedAuthorityProviderAlgorithm.java | 78 ++++ ...gsphere.authority.spi.AuthorityProvideAlgorithm | 1 + .../statement/ddl/AlterIndexStatementContext.java | 10 +- .../statement/ddl/AlterTableStatementContext.java | 3 + .../metadata/engine/MetadataRefresherFactory.java | 3 + .../metadata/schema/builder/SchemaBuilder.java | 21 +- .../builder/loader/ColumnMetaDataLoader.java | 3 +- .../schema/builder/loader/IndexMetaDataLoader.java | 6 + .../loader/dialect/H2TableMetaDataLoader.java | 3 +- .../loader/dialect/MySQLTableMetaDataLoader.java | 3 +- .../loader/dialect/OracleTableMetaDataLoader.java | 41 +- .../dialect/PostgreSQLTableMetaDataLoader.java | 3 +- .../dialect/SQLServerTableMetaDataLoader.java | 3 +- .../loader/util/TableMetaDataLoaderUtil.java | 33 +- .../type/AlterIndexStatementSchemaRefresher.java | 58 +++ .../type/AlterTableStatementSchemaRefresher.java | 27 +- .../dialect/OracleTableMetaDataLoaderTest.java | 61 ++- .../loader/util/TableMetaDataLoaderUtilTest.java | 37 +- .../refresher/MetadataRefresherFactoryTest.java | 5 +- .../AlterIndexStatementSchemaRefresherTest.java | 49 +++ .../AlterTableStatementSchemaRefresherTest.java | 72 +++- .../infra/context/metadata/MetaDataContexts.java | 6 +- .../metadata/impl/StandardMetaDataContexts.java | 6 +- .../optimize/context/CalciteContextFactory.java | 50 --- .../statement/ShardingSpherePreparedStatement.java | 4 +- .../core/statement/ShardingSphereStatement.java | 4 +- .../backend/communication/ProxySQLExecutor.java | 4 +- .../jdbc/connection/BackendConnection.java | 10 +- .../jdbc/connection/ConnectionPostProcessor.java} | 19 +- .../transaction/BackendTransactionManager.java | 35 +- .../transaction/ConnectionSavepointManager.java | 102 +++++ .../jdbc/transaction/LocalTransactionManager.java | 82 +++- .../jdbc/transaction/TransactionManager.java | 24 ++ ...DatabaseDiscoveryRulesNotExistedException.java} | 8 +- ...ption.java => DuplicateRuleNamesException.java} | 8 +- .../exception/DuplicateTablesException.java | 3 + .../exception/EncryptRulesNotExistedException.java | 2 + ...eadwriteSplittingRuleCreateExistsException.java | 33 -- ...eadwriteSplittingRulesNotExistedException.java} | 10 +- .../ShardingTableRuleNotExistedException.java | 4 +- ...java => ShardingTableRulesInUsedException.java} | 4 +- .../AlterDatabaseDiscoveryRuleBackendHandler.java | 47 ++- .../rdl/impl/AlterEncryptRuleBackendHandler.java | 22 +- .../AlterReadwriteSplittingRuleBackendHandler.java | 34 +- ...terShardingBindingTableRulesBackendHandler.java | 34 +- ...rShardingBroadcastTableRulesBackendHandler.java | 4 +- .../impl/AlterShardingTableRuleBackendHandler.java | 93 +++-- .../CreateDatabaseDiscoveryRuleBackendHandler.java | 5 + .../rdl/impl/CreateEncryptRuleBackendHandler.java | 66 +++- ...CreateReadwriteSplittingRuleBackendHandler.java | 84 ++++- ...ateShardingBindingTableRulesBackendHandler.java | 34 +- .../CreateShardingTableRuleBackendHandler.java | 13 +- .../DropDatabaseDiscoveryRuleBackendHandler.java | 37 +- .../rdl/impl/DropEncryptRuleBackendHandler.java | 8 +- .../DropReadwriteSplittingRuleBackendHandler.java | 44 ++- ...ropShardingBindingTableRulesBackendHandler.java | 3 +- ...pShardingBroadcastTableRulesBackendHandler.java | 6 +- .../impl/DropShardingTableRuleBackendHandler.java | 31 +- .../text/distsql/rql/RQLBackendHandlerFactory.java | 49 ++- .../DatabaseDiscoveryRulesQueryBackendHandler.java | 95 +++++ .../rql/impl/EncryptRulesQueryBackendHandler.java | 117 ++++++ ...eadwriteSplittingRulesQueryBackendHandler.java} | 55 +-- .../distsql/rql/impl/RuleQueryBackendHandler.java | 94 ----- ...ardingBindingTableRulesQueryBackendHandler.java | 83 ++++ ...dingBroadcastTableRulesQueryBackendHandler.java | 80 ++++ .../rql/impl/ShardingRuleQueryBackendHandler.java | 157 -------- .../ShardingTableRulesQueryBackendHandler.java | 238 ++++++++++++ .../transaction/TransactionBackendHandler.java | 12 + .../TransactionBackendHandlerFactory.java | 12 + .../jdbc/connection/BackendConnectionTest.java | 28 +- .../transaction/BackendTransactionManagerTest.java | 49 +++ .../text/distsql/RDLBackendHandlerFactoryTest.java | 6 +- ...terDatabaseDiscoveryRuleBackendHandlerTest.java | 9 +- ...erReadwriteSplittingRuleBackendHandlerTest.java | 9 +- ...rdingBroadcastTableRulesBackendHandlerTest.java | 4 +- .../AlterShardingTableRuleBackendHandlerTest.java | 8 +- .../impl/CreateEncryptRuleBackendHandlerTest.java | 13 +- ...teReadwriteSplittingRuleBackendHandlerTest.java | 45 ++- .../CreateShardingTableRuleBackendHandlerTest.java | 21 +- ...ropDatabaseDiscoveryRuleBackendHandlerTest.java | 9 +- ...opReadwriteSplittingRuleBackendHandlerTest.java | 9 +- ...hardingBindingTableRulesBackendHandlerTest.java | 3 +- ...rdingBroadcastTableRulesBackendHandlerTest.java | 3 +- .../DropShardingTableRuleBackendHandlerTest.java | 28 +- ...baseDiscoveryRulesQueryBackendHandlerTest.java} | 77 ++-- .../impl/EncryptRulesQueryBackendHandlerTest.java} | 90 ++--- ...riteSplittingRulesQueryBackendHandlerTest.java} | 88 ++--- ...gBindingTableRulesQueryBackendHandlerTest.java} | 79 ++-- ...roadcastTableRulesQueryBackendHandlerTest.java} | 75 ++-- ...ShardingTableRulesQueryBackendHandlerTest.java} | 94 ++--- .../src/test/resources/yaml/config-sharding.yaml | 51 +++ .../impl/GovernanceBootstrapInitializer.java | 2 +- .../impl/GovernanceBootstrapInitializerTest.java | 15 +- .../query/builder/ResponsePacketBuilder.java | 6 +- .../frontend/mysql/err/MySQLErrPacketFactory.java | 55 +-- .../mysql/err/MySQLErrPacketFactoryTest.java | 10 +- .../mysql/component/MySQLIncrementalDumper.java | 49 ++- .../column/metadata/MySQLColumnMetaData.java | 18 +- .../column/metadata/MySQLColumnMetaDataLoader.java | 59 ++- .../column/value/UnsignedBigintHandler.java | 32 +- .../component/column/value/UnsignedIntHandler.java | 27 +- .../column/value/UnsignedMediumintHandler.java | 27 +- .../column/value/UnsignedSmallintHandler.java | 27 +- .../column/value/UnsignedTinyintHandler.java | 27 +- .../mysql/component/column/value/ValueHandler.java | 28 +- ...aling.mysql.component.column.value.ValueHandler | 23 +- .../column/value/UnsignedBigintHandlerTest.java | 20 +- .../column/value/UnsignedIntHandlerTest.java | 27 +- .../column/value/UnsignedMediumintHandlerTest.java | 35 +- .../column/value/UnsignedSmallintHandlerTest.java | 19 +- .../column/value/UnsignedTinyintHandlerTest.java | 35 +- .../impl/MySQLDDLStatementSQLVisitor.java | 14 + .../statement/impl/MySQLStatementSQLVisitor.java | 5 + .../src/main/antlr4/imports/oracle/BaseRule.g4 | 16 +- .../src/main/antlr4/imports/oracle/DMLStatement.g4 | 38 +- .../main/antlr4/imports/oracle/OracleKeyword.g4 | 36 ++ .../impl/OracleDMLStatementSQLVisitor.java | 89 ++++- .../sql/parser/autogen/PostgreSQLStatement.g4 | 2 + .../impl/PostgreSQLDDLStatementSQLVisitor.java | 17 + .../impl/PostgreSQLTCLStatementSQLVisitor.java | 25 +- .../src/main/antlr4/imports/sqlserver/BaseRule.g4 | 3 +- .../main/antlr4/imports/sqlserver/DDLStatement.g4 | 26 +- .../antlr4/imports/sqlserver/SQLServerKeyword.g4 | 16 + .../sql/parser/core/visitor/SQLVisitorRule.java | 6 +- .../table/RenameTableDefinitionSegment.java} | 22 +- .../common/segment/dml/predicate/LockSegment.java | 3 + .../common/statement/ddl/AlterTableStatement.java | 12 + .../statement/tcl/ReleaseSavepointStatement.java | 13 +- .../tcl/RollbackToSavepointStatement.java | 17 +- .../common/statement/tcl/SavepointStatement.java | 6 + .../handler/ddl/AlterIndexStatementHandler.java | 16 + .../ddl/PostgreSQLAlterIndexStatement.java | 16 + .../PostgreSQLReleaseSavepointStatement.java} | 10 +- .../PostgreSQLRollbackToSavepointStatement.java} | 10 +- .../ddl/AlterIndexStatementHandlerTest.java | 17 + .../asserts/segment/lock/LockClauseAssert.java | 15 +- .../statement/dal/impl/ExplainStatementAssert.java | 19 + .../ddl/impl/AlterTableStatementAssert.java | 15 + .../segment/impl/lock/ExpectedLockClause.java | 4 + .../statement/dal/ExplainStatementTestCase.java | 23 ++ .../statement/ddl/AlterTableStatementTestCase.java | 3 + .../src/main/resources/case/dal/explain.xml | 91 +++++ .../src/main/resources/case/ddl/alter-table.xml | 6 + .../src/main/resources/case/dml/select-lock.xml | 25 ++ .../main/resources/case/dml/select-order-by.xml | 39 ++ .../main/resources/case/dml/select-pagination.xml | 13 + .../main/resources/case/dml/select-sub-query.xml | 17 + .../{dml/select-sub-query.xml => dal/explain.xml} | 9 +- .../src/main/resources/sql/supported/ddl/alter.xml | 3 +- .../resources/sql/supported/dml/select-lock.xml | 2 + .../sql/supported/dml/select-order-by.xml | 2 + .../sql/supported/dml/select-pagination.xml | 1 + .../sql/supported/dml/select-sub-query.xml | 7 +- .../begin-transcation.xml} | 11 +- .../main/resources/sql/supported/tcl/commit.xml | 30 ++ .../{dml/select-sub-query.xml => tcl/rollback.xml} | 12 +- .../select-sub-query.xml => tcl/savepoint.xml} | 6 +- .../set-auto-commit.xml} | 11 +- .../sql/supported/tcl/set-transaction.xml | 33 ++ .../src/main/resources/sql/supported/tcl/tcl.xml | 63 ---- .../transaction/core/TransactionOperationType.java | 2 +- 259 files changed, 5811 insertions(+), 3122 deletions(-)
