This is an automated email from the ASF dual-hosted git repository. wuweijie pushed a change to branch 5.3.0-release in repository https://gitbox.apache.org/repos/asf/shardingsphere.git
from 46038f5e6c2 Merge remote-tracking branch 'apache/master' into 5.3.0-release add 89c5a6f2a0e update the example module docs (#22738) add b2a01c519e0 19937 federation optimization test 20221205 (#22693) add e93726c8b75 Make sure ShardingSphereDriver can load configuration file from classpath with mutiple ClassLoaders (#22677) add 6473d1fb614 Add ensembleTracker parameter support deploy ZooKeeper on cloud (#22745) add 610a4ebc82c Add CDC create subscription event and listener (#22739) add 8bfa611ac9b Improve MySQL incremental client reconnect and close (#22740) add f372dc5d0b0 Refactor AgentTypedSPIRegistry (#22748) add 318aa2bf915 Remove ensembleTracker configuration (#22747) add a6d9e3a4876 Refactor ReflectiveUtil (#22749) add 224b7d1ac80 Remove spring dependencies (#22751) add 055cdbffd0a Move package of ShardingSphereAlgorithm (#22753) add 631fdf40f87 Fix wrong decide result when execute same sharding condition subquery with sql federation (#22754) add eb230d4ac97 Refactor : disable the example upload action temporarily (#22757) (#22758) add b7b4ec3fa39 Move ExportableConstants to rule package (#22760) add 8ea92c7a51c Update `脱敏` in encrypt chinese documents to `加密` and `decryption` in encrypt english documents to `encryption` (#22761) add 7e7e3eb3ad0 Add shardingsphere-distsql-handler module (#22765) add 04525dc4129 Fix the transaction IT test assert usage specification (#22764) add 8dc3fdc76a0 Fix occasional test exceptions for ShardingSphereDataCollectorTest. (#22767) add 509a27b4a99 initialize the mask module and add the underlying spi interface, mask rule class (#22766) add deb1c83ff6c Add like literal for show single table statement (#22763) add 3a28730acb3 Merge branch 'master' into 5.3.0-release No new revisions were added by this update. Summary of changes: .github/workflows/nightly-build-example.yml | 14 +- .../core/plugin/PluginBootServiceManager.java | 16 +- .../agent/core/spi/AgentTypedSPIRegistry.java | 34 +--- .../cdc/core => distsql/handler}/pom.xml | 16 +- .../handler}/exception/DistSQLException.java | 2 +- .../resource/DuplicateResourceException.java | 2 +- .../exception/resource/EmptyResourceException.java | 2 +- .../resource/InvalidResourcesException.java | 2 +- .../MissingRequiredResourcesException.java | 2 +- .../ResourceDefinitionViolationException.java | 4 +- .../resource/ResourceInUsedException.java | 2 +- .../exception/rule/AlgorithmInUsedException.java | 2 +- .../rule/DuplicateAlgorithmException.java | 2 +- .../exception/rule/DuplicateRuleException.java | 2 +- .../InvalidAlgorithmConfigurationException.java | 2 +- .../rule/InvalidRuleConfigurationException.java | 2 +- .../rule/MissingRequiredAlgorithmException.java | 2 +- .../rule/MissingRequiredRuleException.java | 2 +- .../rule/RuleDefinitionViolationException.java | 4 +- .../exception/rule/RuleInUsedException.java | 2 +- .../handler}/query/DatabaseDistSQLResultSet.java | 2 +- .../distsql/handler}/query/DistSQLResultSet.java | 2 +- .../handler}/query/GlobalRuleDistSQLResultSet.java | 2 +- .../handler}/update/GlobalRuleRALUpdater.java | 2 +- .../distsql/handler}/update/RALUpdater.java | 2 +- .../distsql/handler}/update/RALUpdaterFactory.java | 2 +- .../update/RuleDefinitionAlterUpdater.java | 2 +- .../update/RuleDefinitionCreateUpdater.java | 2 +- .../handler}/update/RuleDefinitionDropUpdater.java | 2 +- .../handler}/update/RuleDefinitionUpdater.java | 2 +- .../update/RuleDefinitionUpdaterFactory.java | 2 +- .../DataSourcePropertiesValidateHandler.java | 28 +-- .../fixture/config/FixtureRuleConfiguration.java | 15 +- .../fixture/statement}/FixtureRALStatement.java | 2 +- .../fixture/statement}/FixtureRuleStatement.java | 2 +- .../fixture/updater}/FixtureRALUpdater.java | 5 +- .../updater}/FixtureRuleDefinitionUpdater.java | 6 +- .../handler}/update/RALUpdaterFactoryTest.java | 6 +- .../update/RuleDefinitionUpdaterFactoryTest.java | 6 +- ...hardingsphere.distsql.handler.update.RALUpdater | 2 +- ...re.distsql.handler.update.RuleDefinitionUpdater | 2 +- distsql/parser/pom.xml | 1 + distsql/parser/src/main/antlr4/imports/Keyword.g4 | 4 + .../parser/src/main/antlr4/imports/RQLStatement.g4 | 6 +- .../core/kernel/KernelDistSQLStatementVisitor.java | 3 +- distsql/pom.xml | 1 + .../rql/show/ShowSingleTableStatement.java | 5 +- .../single-table/show-single-table.cn.md | 36 +++- .../single-table/show-single-table.en.md | 36 +++- .../shardingsphere-jdbc/java-api/rules/mix.cn.md | 4 +- .../shardingsphere-jdbc/java-api/rules/mix.en.md | 4 +- .../yaml-config/rules/mix.cn.md | 2 +- .../yaml-config/rules/mix.en.md | 2 +- .../syntax/rql/rule-query/single-table.cn.md | 14 +- .../syntax/rql/rule-query/single-table.en.md | 14 +- examples/README.md | 73 +------ examples/README_ZH.md | 76 ++----- .../DatabaseDiscoveryProviderAlgorithmFactory.java | 2 +- .../spi/DatabaseDiscoveryProviderAlgorithm.java | 2 +- .../dbdiscovery/rule/DatabaseDiscoveryRule.java | 2 +- .../rule/DatabaseDiscoveryRuleTest.java | 2 +- features/db-discovery/distsql/handler/pom.xml | 5 + .../CountDatabaseDiscoveryRuleQueryResultSet.java | 2 +- .../DatabaseDiscoveryHeartbeatQueryResultSet.java | 2 +- .../query/DatabaseDiscoveryRuleQueryResultSet.java | 2 +- .../query/DatabaseDiscoveryTypeQueryResultSet.java | 2 +- ...DatabaseDiscoveryHeartbeatStatementUpdater.java | 6 +- ...AlterDatabaseDiscoveryRuleStatementUpdater.java | 10 +- ...AlterDatabaseDiscoveryTypeStatementUpdater.java | 8 +- ...DatabaseDiscoveryHeartbeatStatementUpdater.java | 4 +- ...reateDatabaseDiscoveryRuleStatementUpdater.java | 10 +- ...reateDatabaseDiscoveryTypeStatementUpdater.java | 6 +- ...DatabaseDiscoveryHeartbeatStatementUpdater.java | 6 +- .../DropDatabaseDiscoveryRuleStatementUpdater.java | 10 +- .../DropDatabaseDiscoveryTypeStatementUpdater.java | 6 +- ...gsphere.distsql.handler.query.DistSQLResultSet} | 0 ...e.distsql.handler.update.RuleDefinitionUpdater} | 0 ...tabaseDiscoveryHeartbeatQueryResultSetTest.java | 2 +- .../DatabaseDiscoveryRuleQueryResultSetTest.java | 2 +- .../DatabaseDiscoveryTypeQueryResultSetTest.java | 2 +- ...baseDiscoveryHeartbeatStatementUpdaterTest.java | 4 +- ...overyProviderAlgorithmStatementUpdaterTest.java | 6 +- ...rDatabaseDiscoveryRuleStatementUpdaterTest.java | 6 +- ...baseDiscoveryHeartbeatStatementUpdaterTest.java | 2 +- ...overyProviderAlgorithmStatementUpdaterTest.java | 4 +- ...eDatabaseDiscoveryRuleStatementUpdaterTest.java | 6 +- ...baseDiscoveryHeartbeatStatementUpdaterTest.java | 4 +- ...overyProviderAlgorithmStatementUpdaterTest.java | 4 +- ...pDatabaseDiscoveryRuleStatementUpdaterTest.java | 8 +- .../encrypt/factory/EncryptAlgorithmFactory.java | 2 +- .../encrypt/spi/EncryptAlgorithm.java | 2 +- features/encrypt/distsql/handler/pom.xml | 5 + .../query/CountEncryptRuleQueryResultSet.java | 2 +- .../handler/query/EncryptRuleQueryResultSet.java | 2 +- .../update/AlterEncryptRuleStatementUpdater.java | 8 +- .../update/CreateEncryptRuleStatementUpdater.java | 10 +- .../update/DropEncryptRuleStatementUpdater.java | 4 +- ...gsphere.distsql.handler.query.DistSQLResultSet} | 0 ...e.distsql.handler.update.RuleDefinitionUpdater} | 0 .../query/EncryptRuleQueryResultSetTest.java | 2 +- .../AlterEncryptRuleStatementUpdaterTest.java | 6 +- .../CreateEncryptRuleStatementUpdaterTest.java | 6 +- .../DropEncryptRuleStatementUpdaterTest.java | 2 +- .../cdc/core => features/mask/api}/pom.xml | 16 +- .../mask/api/config/MaskRuleConfiguration.java | 29 ++- .../config/rule/MaskColumnRuleConfiguration.java | 15 +- .../config/rule/MaskTableRuleConfiguration.java | 17 +- .../mask/factory/MaskAlgorithmFactory.java | 24 +-- .../shardingsphere/mask/spi/MaskAlgorithm.java} | 21 +- .../cdc => features/mask}/core/pom.xml | 18 +- .../mask/algorithm/hash/MD5MaskAlgorithm.java | 20 +- .../shardingsphere/mask/constant/MaskOrder.java | 15 +- .../shardingsphere/mask/rule/MaskColumn.java | 15 +- .../apache/shardingsphere/mask/rule/MaskRule.java | 60 ++++++ .../apache/shardingsphere/mask/rule/MaskTable.java | 21 +- ...rg.apache.shardingsphere.mask.spi.MaskAlgorithm | 2 +- {distsql => features/mask}/pom.xml | 13 +- features/pom.xml | 1 + .../ReadQueryLoadBalanceAlgorithmFactory.java | 2 +- .../spi/ReadQueryLoadBalanceAlgorithm.java | 2 +- .../rule/ReadwriteSplittingRule.java | 4 +- .../readwrite-splitting/distsql/handler/pom.xml | 5 + .../ReadwriteSplittingRuleStatementChecker.java | 12 +- .../CountReadwriteSplittingRuleQueryResultSet.java | 2 +- .../ReadwriteSplittingRuleQueryResultSet.java | 6 +- ...lterReadwriteSplittingRuleStatementUpdater.java | 2 +- ...eateReadwriteSplittingRuleStatementUpdater.java | 2 +- ...DropReadwriteSplittingRuleStatementUpdater.java | 8 +- ...gsphere.distsql.handler.query.DistSQLResultSet} | 0 ...e.distsql.handler.update.RuleDefinitionUpdater} | 0 .../ReadwriteSplittingRuleQueryResultSetTest.java | 4 +- ...ReadwriteSplittingRuleStatementUpdaterTest.java | 10 +- ...ReadwriteSplittingRuleStatementUpdaterTest.java | 10 +- ...ReadwriteSplittingRuleStatementUpdaterTest.java | 6 +- .../shadow/factory/ShadowAlgorithmFactory.java | 2 +- .../shardingsphere/shadow/spi/ShadowAlgorithm.java | 2 +- features/shadow/distsql/handler/pom.xml | 5 + .../checker/ShadowRuleStatementChecker.java | 8 +- .../query/CountShadowRuleQueryResultSet.java | 2 +- .../DefaultShadowAlgorithmQueryResultSet.java | 2 +- .../query/ShadowAlgorithmQueryResultSet.java | 2 +- .../handler/query/ShadowRuleQueryResultSet.java | 2 +- .../query/ShadowTableRuleQueryResultSet.java | 2 +- ...lterDefaultShadowAlgorithmStatementUpdater.java | 6 +- .../update/AlterShadowRuleStatementUpdater.java | 8 +- ...eateDefaultShadowAlgorithmStatementUpdater.java | 6 +- .../update/CreateShadowRuleStatementUpdater.java | 6 +- ...DropDefaultShadowAlgorithmStatementUpdater.java | 4 +- .../DropShadowAlgorithmStatementUpdater.java | 8 +- .../update/DropShadowRuleStatementUpdater.java | 4 +- ...gsphere.distsql.handler.query.DistSQLResultSet} | 0 ...e.distsql.handler.update.RuleDefinitionUpdater} | 0 .../query/ShadowAlgorithmQueryResultSetTest.java | 2 +- .../query/ShadowRuleQueryResultSetTest.java | 2 +- .../query/ShadowTableRuleQueryResultSetTest.java | 2 +- ...DefaultShadowAlgorithmStatementUpdaterTest.java | 6 +- .../AlterShadowRuleStatementUpdaterTest.java | 10 +- ...DefaultShadowAlgorithmStatementUpdaterTest.java | 2 +- .../CreateShadowRuleStatementUpdaterTest.java | 6 +- ...DefaultShadowAlgorithmStatementUpdaterTest.java | 2 +- .../DropShadowAlgorithmStatementUpdaterTest.java | 2 +- .../update/DropShadowRuleStatementUpdaterTest.java | 2 +- .../factory/KeyGenerateAlgorithmFactory.java | 2 +- .../sharding/factory/ShardingAlgorithmFactory.java | 2 +- .../factory/ShardingAuditAlgorithmFactory.java | 2 +- .../sharding/spi/KeyGenerateAlgorithm.java | 2 +- .../sharding/spi/ShardingAlgorithm.java | 2 +- .../sharding/spi/ShardingAuditAlgorithm.java | 2 +- .../decider/ShardingSQLFederationDecider.java | 10 +- .../decider/ShardingSQLFederationDeciderTest.java | 37 +++- features/sharding/distsql/handler/pom.xml | 5 + .../checker/ShardingTableRuleStatementChecker.java | 12 +- .../query/BroadcastTableRuleQueryResultSet.java | 2 +- .../query/CountShardingRuleQueryResultSet.java | 2 +- .../DefaultShardingStrategyQueryResultSet.java | 2 +- .../query/ShardingAlgorithmsQueryResultSet.java | 2 +- .../query/ShardingAuditorsQueryResultSet.java | 2 +- .../query/ShardingKeyGeneratorsQueryResultSet.java | 2 +- .../query/ShardingTableNodesQueryResultSet.java | 2 +- .../ShardingTableReferenceRuleQueryResultSet.java | 2 +- .../query/ShardingTableRuleQueryResultSet.java | 2 +- ...rdingTableRulesUsedAlgorithmQueryResultSet.java | 2 +- ...hardingTableRulesUsedAuditorQueryResultSet.java | 2 +- ...ngTableRulesUsedKeyGeneratorQueryResultSet.java | 2 +- .../UnusedShardingAlgorithmsQueryResultSet.java | 2 +- .../UnusedShardingAuditorsQueryResultSet.java | 2 +- .../UnusedShardingKeyGeneratorsQueryResultSet.java | 2 +- ...terDefaultShardingStrategyStatementUpdater.java | 8 +- ...ShardingTableReferenceRuleStatementUpdater.java | 8 +- .../AlterShardingTableRuleStatementUpdater.java | 4 +- .../CreateBroadcastTableRuleStatementUpdater.java | 8 +- ...ateDefaultShardingStrategyStatementUpdater.java | 10 +- ...ShardingTableReferenceRuleStatementUpdater.java | 8 +- .../CreateShardingTableRuleStatementUpdater.java | 2 +- .../DropBroadcastTableRuleStatementUpdater.java | 4 +- .../DropDefaultStrategyStatementUpdater.java | 4 +- .../DropShardingAlgorithmStatementUpdater.java | 8 +- .../DropShardingAuditorStatementUpdater.java | 6 +- .../DropShardingKeyGeneratorStatementUpdater.java | 6 +- ...ShardingTableReferenceRuleStatementUpdater.java | 4 +- .../DropShardingTableRuleStatementUpdater.java | 8 +- ...gsphere.distsql.handler.query.DistSQLResultSet} | 0 ...e.distsql.handler.update.RuleDefinitionUpdater} | 0 .../checker/ShardingRuleStatementCheckerTest.java | 8 +- .../ShardingTableNodesQueryResultSetTest.java | 2 +- .../query/ShardingTableRuleQueryResultSetTest.java | 2 +- ...gTableRulesUsedAlgorithmQueryResultSetTest.java | 2 +- ...ingTableRulesUsedAuditorQueryResultSetTest.java | 2 +- ...bleRulesUsedKeyGeneratorQueryResultSetTest.java | 2 +- ...efaultShardingStrategyStatementUpdaterTest.java | 6 +- ...dingTableReferenceRuleStatementUpdaterTest.java | 2 +- ...efaultShardingStrategyStatementUpdaterTest.java | 6 +- ...dingTableReferenceRuleStatementUpdaterTest.java | 4 +- ...reateShardingTableRuleStatementUpdaterTest.java | 2 +- ...DropBroadcastTableRuleStatementUpdaterTest.java | 2 +- ...efaultShardingStrategyStatementUpdaterTest.java | 2 +- .../DropShardingAlgorithmStatementUpdaterTest.java | 6 +- .../DropShardingAuditorStatementUpdaterTest.java | 4 +- ...opShardingKeyGeneratorStatementUpdaterTest.java | 4 +- ...dingTableReferenceRuleStatementUpdaterTest.java | 2 +- .../DropShardingTableRuleStatementUpdaterTest.java | 6 +- .../algorithm/AlgorithmDescription.java | 2 +- .../algorithm/ShardingSphereAlgorithm.java | 2 +- .../algorithm/ShardingSphereAlgorithmFactory.java | 3 +- .../props/DataSourcePropertiesValidator.java | 13 +- .../exception/rule/RuleDisabledException.java | 32 --- .../exception/rule/RuleEnabledException.java | 32 --- .../exportable}/constant/ExportableConstants.java | 4 +- .../constant/ExportableItemConstants.java | 2 +- .../ShardingSphereAlgorithmFactoryTest.java | 5 +- .../fixture/ShardingSphereAlgorithmFixture.java | 4 +- .../props/DataSourcePropertiesValidatorTest.java | 18 +- ...gsphere.infra.algorithm.ShardingSphereAlgorithm | 2 +- .../infra/util/reflect/ReflectiveUtil.java | 26 ++- .../infra/util/reflect/ReflectiveUtilTest.java | 23 +-- .../util/reflect/fixture/ReflectiveFixture.java} | 21 +- .../jdbc/core/driver/ShardingSphereDriverURL.java | 22 ++- .../factory/AuthorityProviderAlgorithmFactory.java | 2 +- .../authority/spi/AuthorityProviderAlgorithm.java | 2 +- kernel/authority/distsql/handler/pom.xml | 5 + .../handler/AuthorityRuleQueryResultSet.java | 2 +- ...gsphere.distsql.handler.query.DistSQLResultSet} | 0 .../handler/AuthorityRuleQueryResultSetTest.java | 2 +- .../DataConsistencyCalculateAlgorithm.java | 2 +- .../DataConsistencyCalculateAlgorithmFactory.java | 2 +- .../spi/ingest/channel/PipelineChannelCreator.java | 2 +- .../channel/PipelineChannelCreatorFactory.java | 2 +- .../spi/ratelimit/JobRateLimitAlgorithm.java | 2 +- .../ratelimit/JobRateLimitAlgorithmFactory.java | 2 +- kernel/data-pipeline/cdc/client/pom.xml | 4 + .../data/pipeline/cdc/client/CDCClient.java | 39 +++- .../client/handler/SubscriptionRequestHandler.java | 35 ++-- .../client/parameter/StartCDCClientParameter.java | 37 ++-- kernel/data-pipeline/cdc/core/pom.xml | 4 + .../data/pipeline/cdc/api/CDCJobAPI.java | 19 +- .../data/pipeline/cdc/api/CDCJobAPIFactory.java | 24 ++- .../data/pipeline/cdc/api/impl/CDCJobAPIImpl.java | 195 ++++++++++++++++++ .../data/pipeline/cdc/api/job/type/CDCJobType.java | 16 +- .../api/pojo/CreateSubscriptionJobParameter.java | 31 +-- .../cdc/config/job/CDCJobConfiguration.java | 53 +++++ .../data/pipeline/cdc/core/job/CDCJob.java | 53 +++++ .../data/pipeline/cdc/core/job/CDCJobId.java | 31 +-- .../CDCJobConfigurationChangedProcessor.java | 72 +++++++ .../cdc/yaml/job/YamlCDCJobConfiguration.java | 55 ++++++ .../yaml/job/YamlCDCJobConfigurationSwapper.java | 60 ++++++ ....shardingsphere.data.pipeline.cdc.api.CDCJobAPI | 2 +- ...andler.PipelineChangedJobConfigurationProcessor | 2 +- ...he.shardingsphere.data.pipeline.spi.job.JobType | 2 +- .../data/pipeline/cdc/core/job/CDCJobIdTest.java | 16 +- .../AbstractInventoryIncrementalJobAPIImpl.java | 2 +- ...RC32MatchDataConsistencyCalculateAlgorithm.java | 2 +- ...DataMatchDataConsistencyCalculateAlgorithm.java | 2 +- .../ShardingSphereDataScheduleCollector.java | 2 +- .../PipelineChangedJobConfigurationProcessor.java | 1 + .../execute/ShardingSphereDataCollectorTest.java | 10 +- .../pipeline/mysql/ingest/client/MySQLClient.java | 29 ++- .../mysql/ingest/client/PasswordEncryption.java | 4 +- .../ingest/client/PasswordEncryptionTest.java | 2 +- kernel/data-pipeline/distsql/handler/pom.xml | 5 + ...ShowMigrationCheckAlgorithmsQueryResultSet.java | 2 +- .../ShowMigrationCheckStatusQueryResultSet.java | 2 +- .../ShowMigrationJobStatusQueryResultSet.java | 2 +- .../query/ShowMigrationListQueryResultSet.java | 2 +- ...wMigrationSourceStorageUnitsQueryResultSet.java | 2 +- .../handler/update/CheckMigrationJobUpdater.java | 2 +- .../handler/update/CommitMigrationUpdater.java | 2 +- .../handler/update/DropMigrationCheckUpdater.java | 2 +- .../handler/update/MigrateTableUpdater.java | 2 +- .../RegisterMigrationSourceStorageUnitUpdater.java | 9 +- .../handler/update/RollbackMigrationUpdater.java | 2 +- .../handler/update/StartMigrationCheckUpdater.java | 2 +- .../handler/update/StartMigrationUpdater.java | 2 +- .../handler/update/StopMigrationCheckUpdater.java | 2 +- .../handler/update/StopMigrationUpdater.java | 2 +- ...nregisterMigrationSourceStorageUnitUpdater.java | 2 +- ...gsphere.distsql.handler.query.DistSQLResultSet} | 0 ...ardingsphere.distsql.handler.update.RALUpdater} | 0 kernel/parser/distsql/handler/pom.xml | 5 + .../handler/query/SQLParserRuleQueryResultSet.java | 2 +- .../update/AlterSQLParserRuleStatementUpdater.java | 2 +- ...gsphere.distsql.handler.query.DistSQLResultSet} | 0 ...re.distsql.handler.update.GlobalRuleRALUpdater} | 0 .../singletable/rule/SingleTableRule.java | 3 +- .../optimizer/it/SQLOptimizeEngineIT.java | 34 ++++ .../resources/cases/federation-query-sql-cases.xml | 220 +++++++++++++++++++++ kernel/sql-translator/distsql/handler/pom.xml | 5 + .../handler/SQLTranslatorRuleQueryResultSet.java | 2 +- ...gsphere.distsql.handler.query.DistSQLResultSet} | 0 .../traffic/factory/TrafficAlgorithmFactory.java | 2 +- .../TrafficLoadBalanceAlgorithmFactory.java | 2 +- .../traffic/spi/TrafficAlgorithm.java | 2 +- .../traffic/spi/TrafficLoadBalanceAlgorithm.java | 2 +- kernel/traffic/distsql/handler/pom.xml | 5 + .../handler/query/TrafficRulesQueryResultSet.java | 2 +- .../update/AlterTrafficRuleStatementUpdater.java | 6 +- .../update/CreateTrafficRuleStatementUpdater.java | 6 +- .../update/DropTrafficRuleStatementUpdater.java | 4 +- ...gsphere.distsql.handler.query.DistSQLResultSet} | 0 ...re.distsql.handler.update.GlobalRuleRALUpdater} | 0 .../query/TrafficRulesQueryResultSetTest.java | 2 +- .../AlterTrafficRuleStatementUpdaterTest.java | 4 +- .../CreateTrafficRuleStatementUpdaterTest.java | 4 +- .../DropTrafficRuleStatementUpdaterTest.java | 2 +- kernel/transaction/distsql/handler/pom.xml | 5 + .../query/TransactionRuleQueryResultSet.java | 2 +- .../AlterTransactionRuleStatementUpdater.java | 4 +- ...gsphere.distsql.handler.query.DistSQLResultSet} | 0 ...re.distsql.handler.update.GlobalRuleRALUpdater} | 0 .../cluster/zookeeper/ZookeeperRepository.java | 1 + .../cluster/zookeeper/ZookeeperRepositoryTest.java | 2 + pom.xml | 23 +-- .../backend/handler/cdc/CDCBackendHandler.java | 83 ++++++++ .../ral/QueryableGlobalRuleRALBackendHandler.java | 2 +- ...ueryableGlobalRuleRALBackendHandlerFactory.java | 4 +- .../distsql/ral/RALBackendHandlerFactory.java | 4 +- .../ral/UpdatableGlobalRuleRALBackendHandler.java | 2 +- ...pdatableGlobalRuleRALBackendHandlerFactory.java | 2 +- ...aseDiscoveryRuleConfigurationImportChecker.java | 6 +- ...iteSplittingRuleConfigurationImportChecker.java | 4 +- .../ShardingRuleConfigurationImportChecker.java | 8 +- .../query/QueryableScalingRALBackendHandler.java | 2 +- .../QueryableScalingRALBackendHandlerFactory.java | 2 +- .../update/UpdatableScalingRALBackendHandler.java | 2 +- .../queryable/ShowMigrationRuleQueryResultSet.java | 2 +- ...owStatusFromReadwriteSplittingRulesHandler.java | 4 +- .../AlterInventoryIncrementalRuleUpdater.java | 2 +- ...SplittingStorageUnitStatusStatementHandler.java | 6 +- .../ImportDatabaseConfigurationHandler.java | 14 +- .../ral/updatable/RefreshTableMetaDataHandler.java | 4 +- .../resource/AlterStorageUnitBackendHandler.java | 14 +- .../RegisterStorageUnitBackendHandler.java | 12 +- .../UnregisterStorageUnitBackendHandler.java | 6 +- .../rdl/rule/RuleDefinitionBackendHandler.java | 10 +- ...aultSingleTableStorageUnitStatementUpdater.java | 4 +- .../handler/distsql/rql/RQLBackendHandler.java | 2 +- .../distsql/rql/RQLBackendHandlerFactory.java | 4 +- .../rql/resource/StorageUnitQueryResultSet.java | 2 +- .../rule/CountSingleTableRuleQueryResultSet.java | 2 +- .../rule/RulesUsedStorageUnitQueryResultSet.java | 2 +- .../rql/rule/SingleTableQueryResultSet.java | 8 +- .../rql/rule/SingleTableRulesQueryResultSet.java | 2 +- ...gsphere.distsql.handler.query.DistSQLResultSet} | 0 ...ardingsphere.distsql.handler.update.RALUpdater} | 0 ...e.distsql.handler.update.RuleDefinitionUpdater} | 0 .../backend/handler/cdc/CDCBackendHandlerTest.java | 100 ++++++++++ .../handler/cdc/fixture/FixtureCDCJobAPI.java | 11 +- .../distsql/DistSQLBackendHandlerFactoryTest.java | 2 +- .../FixtureRuleDefinitionCreateUpdater.java | 2 +- .../QueryableScalingFixtureQueryResultSet.java | 2 +- .../ImportDatabaseConfigurationHandlerTest.java | 16 +- .../updatable/RefreshTableMetaDataHandlerTest.java | 4 +- .../AlterStorageUnitBackendHandlerTest.java | 14 +- .../RegisterStorageUnitBackendHandlerTest.java | 14 +- .../UnregisterStorageUnitBackendHandlerTest.java | 6 +- ...etDefaultSingleTableStorageUnitUpdaterTest.java | 2 +- .../handler/distsql/rql/RQLBackendHandlerTest.java | 2 +- .../RulesUsedStorageUnitQueryResultSetTest.java | 4 +- .../distsql/rql/SingleTableQueryResultSetTest.java | 14 +- .../rql/SingleTableRulesQueryResultSetTest.java | 2 +- ....shardingsphere.data.pipeline.cdc.api.CDCJobAPI | 2 +- ...gsphere.distsql.handler.query.DistSQLResultSet} | 0 ...e.distsql.handler.update.RuleDefinitionUpdater} | 0 .../frontend/netty/CDCChannelInboundHandler.java | 18 +- test/e2e/pipeline/pom.xml | 4 + .../cases/autocommit/MySQLAutoCommitTestCase.java | 14 +- .../autocommit/PostgresSQLAutoCommitTestCase.java | 14 +- .../ExceptionInTransactionTestCase.java | 2 - .../cases/cursor/OpenGaussCursorTestCase.java | 19 +- .../cases/nested/NestedTransactionTestCase.java | 16 +- .../cases/readonly/SetReadOnlyTestCase.java | 6 +- .../cases/truncate/MySQLXATruncateTestCase.java | 21 +- .../DataConsistencyCalculateAlgorithmFixture.java | 2 +- 392 files changed, 2244 insertions(+), 1133 deletions(-) copy {kernel/data-pipeline/cdc/core => distsql/handler}/pom.xml (67%) rename {infra/common/src/main/java/org/apache/shardingsphere/infra/distsql => distsql/handler/src/main/java/org/apache/shardingsphere/distsql/handler}/exception/DistSQLException.java (95%) copy {infra/common/src/main/java/org/apache/shardingsphere/infra/distsql => distsql/handler/src/main/java/org/apache/shardingsphere/distsql/handler}/exception/resource/DuplicateResourceException.java (95%) rename {infra/common/src/main/java/org/apache/shardingsphere/infra/distsql => distsql/handler/src/main/java/org/apache/shardingsphere/distsql/handler}/exception/resource/EmptyResourceException.java (94%) rename {infra/common/src/main/java/org/apache/shardingsphere/infra/distsql => distsql/handler/src/main/java/org/apache/shardingsphere/distsql/handler}/exception/resource/InvalidResourcesException.java (95%) rename {infra/common/src/main/java/org/apache/shardingsphere/infra/distsql => distsql/handler/src/main/java/org/apache/shardingsphere/distsql/handler}/exception/resource/MissingRequiredResourcesException.java (95%) rename {infra/common/src/main/java/org/apache/shardingsphere/infra/distsql => distsql/handler/src/main/java/org/apache/shardingsphere/distsql/handler}/exception/resource/ResourceDefinitionViolationException.java (89%) rename {infra/common/src/main/java/org/apache/shardingsphere/infra/distsql => distsql/handler/src/main/java/org/apache/shardingsphere/distsql/handler}/exception/resource/ResourceInUsedException.java (95%) rename {infra/common/src/main/java/org/apache/shardingsphere/infra/distsql => distsql/handler/src/main/java/org/apache/shardingsphere/distsql/handler}/exception/rule/AlgorithmInUsedException.java (95%) rename {infra/common/src/main/java/org/apache/shardingsphere/infra/distsql => distsql/handler/src/main/java/org/apache/shardingsphere/distsql/handler}/exception/rule/DuplicateAlgorithmException.java (95%) rename {infra/common/src/main/java/org/apache/shardingsphere/infra/distsql => distsql/handler/src/main/java/org/apache/shardingsphere/distsql/handler}/exception/rule/DuplicateRuleException.java (96%) rename {infra/common/src/main/java/org/apache/shardingsphere/infra/distsql => distsql/handler/src/main/java/org/apache/shardingsphere/distsql/handler}/exception/rule/InvalidAlgorithmConfigurationException.java (96%) rename {infra/common/src/main/java/org/apache/shardingsphere/infra/distsql => distsql/handler/src/main/java/org/apache/shardingsphere/distsql/handler}/exception/rule/InvalidRuleConfigurationException.java (96%) rename {infra/common/src/main/java/org/apache/shardingsphere/infra/distsql => distsql/handler/src/main/java/org/apache/shardingsphere/distsql/handler}/exception/rule/MissingRequiredAlgorithmException.java (96%) rename {infra/common/src/main/java/org/apache/shardingsphere/infra/distsql => distsql/handler/src/main/java/org/apache/shardingsphere/distsql/handler}/exception/rule/MissingRequiredRuleException.java (97%) rename {infra/common/src/main/java/org/apache/shardingsphere/infra/distsql => distsql/handler/src/main/java/org/apache/shardingsphere/distsql/handler}/exception/rule/RuleDefinitionViolationException.java (90%) rename {infra/common/src/main/java/org/apache/shardingsphere/infra/distsql => distsql/handler/src/main/java/org/apache/shardingsphere/distsql/handler}/exception/rule/RuleInUsedException.java (95%) rename {infra/common/src/main/java/org/apache/shardingsphere/infra/distsql => distsql/handler/src/main/java/org/apache/shardingsphere/distsql/handler}/query/DatabaseDistSQLResultSet.java (95%) rename {infra/common/src/main/java/org/apache/shardingsphere/infra/distsql => distsql/handler/src/main/java/org/apache/shardingsphere/distsql/handler}/query/DistSQLResultSet.java (95%) rename {infra/common/src/main/java/org/apache/shardingsphere/infra/distsql => distsql/handler/src/main/java/org/apache/shardingsphere/distsql/handler}/query/GlobalRuleDistSQLResultSet.java (95%) rename {infra/common/src/main/java/org/apache/shardingsphere/infra/distsql => distsql/handler/src/main/java/org/apache/shardingsphere/distsql/handler}/update/GlobalRuleRALUpdater.java (96%) rename {infra/common/src/main/java/org/apache/shardingsphere/infra/distsql => distsql/handler/src/main/java/org/apache/shardingsphere/distsql/handler}/update/RALUpdater.java (96%) rename {infra/common/src/main/java/org/apache/shardingsphere/infra/distsql => distsql/handler/src/main/java/org/apache/shardingsphere/distsql/handler}/update/RALUpdaterFactory.java (96%) rename {infra/common/src/main/java/org/apache/shardingsphere/infra/distsql => distsql/handler/src/main/java/org/apache/shardingsphere/distsql/handler}/update/RuleDefinitionAlterUpdater.java (96%) rename {infra/common/src/main/java/org/apache/shardingsphere/infra/distsql => distsql/handler/src/main/java/org/apache/shardingsphere/distsql/handler}/update/RuleDefinitionCreateUpdater.java (96%) rename {infra/common/src/main/java/org/apache/shardingsphere/infra/distsql => distsql/handler/src/main/java/org/apache/shardingsphere/distsql/handler}/update/RuleDefinitionDropUpdater.java (97%) rename {infra/common/src/main/java/org/apache/shardingsphere/infra/distsql => distsql/handler/src/main/java/org/apache/shardingsphere/distsql/handler}/update/RuleDefinitionUpdater.java (96%) rename {infra/common/src/main/java/org/apache/shardingsphere/infra/distsql => distsql/handler/src/main/java/org/apache/shardingsphere/distsql/handler}/update/RuleDefinitionUpdaterFactory.java (96%) copy kernel/authority/api/src/main/java/org/apache/shardingsphere/authority/spi/AuthorityProviderAlgorithm.java => distsql/handler/src/main/java/org/apache/shardingsphere/distsql/handler/validate/DataSourcePropertiesValidateHandler.java (50%) copy infra/common/src/test/java/org/apache/shardingsphere/infra/fixture/FixtureRuleStatement.java => distsql/handler/src/test/java/org/apache/shardingsphere/distsql/handler/fixture/config/FixtureRuleConfiguration.java (70%) rename {infra/common/src/test/java/org/apache/shardingsphere/infra/fixture => distsql/handler/src/test/java/org/apache/shardingsphere/distsql/handler/fixture/statement}/FixtureRALStatement.java (93%) copy {infra/common/src/test/java/org/apache/shardingsphere/infra/fixture => distsql/handler/src/test/java/org/apache/shardingsphere/distsql/handler/fixture/statement}/FixtureRuleStatement.java (93%) rename {infra/common/src/test/java/org/apache/shardingsphere/infra/fixture => distsql/handler/src/test/java/org/apache/shardingsphere/distsql/handler/fixture/updater}/FixtureRALUpdater.java (83%) rename {infra/common/src/test/java/org/apache/shardingsphere/infra/fixture => distsql/handler/src/test/java/org/apache/shardingsphere/distsql/handler/fixture/updater}/FixtureRuleDefinitionUpdater.java (81%) copy {infra/common/src/test/java/org/apache/shardingsphere/infra/distsql => distsql/handler/src/test/java/org/apache/shardingsphere/distsql/handler}/update/RALUpdaterFactoryTest.java (83%) rename {infra/common/src/test/java/org/apache/shardingsphere/infra/distsql => distsql/handler/src/test/java/org/apache/shardingsphere/distsql/handler}/update/RuleDefinitionUpdaterFactoryTest.java (83%) copy infra/common/src/test/resources/META-INF/services/org.apache.shardingsphere.infra.distsql.update.RuleDefinitionUpdater => distsql/handler/src/test/resources/META-INF/services/org.apache.shardingsphere.distsql.handler.update.RALUpdater (91%) copy infra/common/src/test/resources/META-INF/services/org.apache.shardingsphere.infra.distsql.update.RALUpdater => distsql/handler/src/test/resources/META-INF/services/org.apache.shardingsphere.distsql.handler.update.RuleDefinitionUpdater (90%) rename features/db-discovery/distsql/handler/src/main/resources/META-INF/services/{org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet => org.apache.shardingsphere.distsql.handler.query.DistSQLResultSet} (100%) rename features/db-discovery/distsql/handler/src/main/resources/META-INF/services/{org.apache.shardingsphere.infra.distsql.update.RuleDefinitionUpdater => org.apache.shardingsphere.distsql.handler.update.RuleDefinitionUpdater} (100%) rename features/encrypt/distsql/handler/src/main/resources/META-INF/services/{org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet => org.apache.shardingsphere.distsql.handler.query.DistSQLResultSet} (100%) rename features/encrypt/distsql/handler/src/main/resources/META-INF/services/{org.apache.shardingsphere.infra.distsql.update.RuleDefinitionUpdater => org.apache.shardingsphere.distsql.handler.update.RuleDefinitionUpdater} (100%) copy {kernel/data-pipeline/cdc/core => features/mask/api}/pom.xml (67%) copy kernel/authority/api/src/main/java/org/apache/shardingsphere/authority/spi/AuthorityProviderAlgorithm.java => features/mask/api/src/main/java/org/apache/shardingsphere/mask/api/config/MaskRuleConfiguration.java (53%) copy kernel/traffic/api/src/main/java/org/apache/shardingsphere/traffic/spi/TrafficAlgorithm.java => features/mask/api/src/main/java/org/apache/shardingsphere/mask/api/config/rule/MaskColumnRuleConfiguration.java (71%) copy kernel/traffic/api/src/main/java/org/apache/shardingsphere/traffic/spi/TrafficAlgorithm.java => features/mask/api/src/main/java/org/apache/shardingsphere/mask/api/config/rule/MaskTableRuleConfiguration.java (68%) copy kernel/authority/api/src/main/java/org/apache/shardingsphere/authority/factory/AuthorityProviderAlgorithmFactory.java => features/mask/api/src/main/java/org/apache/shardingsphere/mask/factory/MaskAlgorithmFactory.java (60%) copy features/{sharding/api/src/main/java/org/apache/shardingsphere/sharding/spi/KeyGenerateAlgorithm.java => mask/api/src/main/java/org/apache/shardingsphere/mask/spi/MaskAlgorithm.java} (67%) copy {kernel/data-pipeline/cdc => features/mask}/core/pom.xml (71%) copy infra/common/src/test/java/org/apache/shardingsphere/infra/config/algorithm/fixture/ShardingSphereAlgorithmFixture.java => features/mask/core/src/main/java/org/apache/shardingsphere/mask/algorithm/hash/MD5MaskAlgorithm.java (69%) copy kernel/traffic/api/src/main/java/org/apache/shardingsphere/traffic/spi/TrafficAlgorithm.java => features/mask/core/src/main/java/org/apache/shardingsphere/mask/constant/MaskOrder.java (74%) copy kernel/traffic/api/src/main/java/org/apache/shardingsphere/traffic/spi/TrafficAlgorithm.java => features/mask/core/src/main/java/org/apache/shardingsphere/mask/rule/MaskColumn.java (74%) create mode 100644 features/mask/core/src/main/java/org/apache/shardingsphere/mask/rule/MaskRule.java rename infra/common/src/main/java/org/apache/shardingsphere/infra/distsql/exception/resource/DuplicateResourceException.java => features/mask/core/src/main/java/org/apache/shardingsphere/mask/rule/MaskTable.java (55%) copy infra/common/src/test/resources/META-INF/services/org.apache.shardingsphere.infra.distsql.update.RALUpdater => features/mask/core/src/main/resources/META-INF/services/org.apache.shardingsphere.mask.spi.MaskAlgorithm (92%) copy {distsql => features/mask}/pom.xml (76%) rename features/readwrite-splitting/distsql/handler/src/main/resources/META-INF/services/{org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet => org.apache.shardingsphere.distsql.handler.query.DistSQLResultSet} (100%) rename features/readwrite-splitting/distsql/handler/src/main/resources/META-INF/services/{org.apache.shardingsphere.infra.distsql.update.RuleDefinitionUpdater => org.apache.shardingsphere.distsql.handler.update.RuleDefinitionUpdater} (100%) rename features/shadow/distsql/handler/src/main/resources/META-INF/services/{org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet => org.apache.shardingsphere.distsql.handler.query.DistSQLResultSet} (100%) rename features/shadow/distsql/handler/src/main/resources/META-INF/services/{org.apache.shardingsphere.infra.distsql.update.RuleDefinitionUpdater => org.apache.shardingsphere.distsql.handler.update.RuleDefinitionUpdater} (100%) rename features/sharding/distsql/handler/src/main/resources/META-INF/services/{org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet => org.apache.shardingsphere.distsql.handler.query.DistSQLResultSet} (100%) rename features/sharding/distsql/handler/src/main/resources/META-INF/services/{org.apache.shardingsphere.infra.distsql.update.RuleDefinitionUpdater => org.apache.shardingsphere.distsql.handler.update.RuleDefinitionUpdater} (100%) rename infra/common/src/main/java/org/apache/shardingsphere/infra/{config => }/algorithm/AlgorithmDescription.java (95%) rename infra/common/src/main/java/org/apache/shardingsphere/infra/{config => }/algorithm/ShardingSphereAlgorithm.java (95%) rename infra/common/src/main/java/org/apache/shardingsphere/infra/{config => }/algorithm/ShardingSphereAlgorithmFactory.java (92%) delete mode 100644 infra/common/src/main/java/org/apache/shardingsphere/infra/distsql/exception/rule/RuleDisabledException.java delete mode 100644 infra/common/src/main/java/org/apache/shardingsphere/infra/distsql/exception/rule/RuleEnabledException.java rename infra/common/src/main/java/org/apache/shardingsphere/infra/{distsql => rule/identifier/type/exportable}/constant/ExportableConstants.java (89%) rename infra/common/src/main/java/org/apache/shardingsphere/infra/{distsql => rule/identifier/type/exportable}/constant/ExportableItemConstants.java (93%) rename infra/common/src/test/java/org/apache/shardingsphere/infra/{config => }/algorithm/ShardingSphereAlgorithmFactoryTest.java (89%) copy infra/common/src/test/java/org/apache/shardingsphere/infra/{config => }/algorithm/fixture/ShardingSphereAlgorithmFixture.java (89%) copy kernel/authority/distsql/handler/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet => infra/common/src/test/resources/META-INF/services/org.apache.shardingsphere.infra.algorithm.ShardingSphereAlgorithm (90%) copy infra/{common/src/test/java/org/apache/shardingsphere/infra/fixture/FixtureRuleStatement.java => util/src/test/java/org/apache/shardingsphere/infra/util/reflect/fixture/ReflectiveFixture.java} (67%) rename kernel/authority/distsql/handler/src/main/resources/META-INF/services/{org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet => org.apache.shardingsphere.distsql.handler.query.DistSQLResultSet} (100%) copy infra/common/src/test/java/org/apache/shardingsphere/infra/config/algorithm/fixture/ShardingSphereAlgorithmFixture.java => kernel/data-pipeline/cdc/client/src/main/java/org/apache/shardingsphere/data/pipeline/cdc/client/parameter/StartCDCClientParameter.java (53%) copy features/sharding/api/src/main/java/org/apache/shardingsphere/sharding/spi/KeyGenerateAlgorithm.java => kernel/data-pipeline/cdc/core/src/main/java/org/apache/shardingsphere/data/pipeline/cdc/api/CDCJobAPI.java (65%) copy features/sharding/api/src/main/java/org/apache/shardingsphere/sharding/spi/KeyGenerateAlgorithm.java => kernel/data-pipeline/cdc/core/src/main/java/org/apache/shardingsphere/data/pipeline/cdc/api/CDCJobAPIFactory.java (64%) create mode 100644 kernel/data-pipeline/cdc/core/src/main/java/org/apache/shardingsphere/data/pipeline/cdc/api/impl/CDCJobAPIImpl.java copy infra/common/src/test/java/org/apache/shardingsphere/infra/fixture/FixtureRuleStatement.java => kernel/data-pipeline/cdc/core/src/main/java/org/apache/shardingsphere/data/pipeline/cdc/api/job/type/CDCJobType.java (70%) copy infra/common/src/test/java/org/apache/shardingsphere/infra/config/algorithm/fixture/ShardingSphereAlgorithmFixture.java => kernel/data-pipeline/cdc/core/src/main/java/org/apache/shardingsphere/data/pipeline/cdc/api/pojo/CreateSubscriptionJobParameter.java (60%) create mode 100644 kernel/data-pipeline/cdc/core/src/main/java/org/apache/shardingsphere/data/pipeline/cdc/config/job/CDCJobConfiguration.java create mode 100644 kernel/data-pipeline/cdc/core/src/main/java/org/apache/shardingsphere/data/pipeline/cdc/core/job/CDCJob.java rename infra/common/src/test/java/org/apache/shardingsphere/infra/config/algorithm/fixture/ShardingSphereAlgorithmFixture.java => kernel/data-pipeline/cdc/core/src/main/java/org/apache/shardingsphere/data/pipeline/cdc/core/job/CDCJobId.java (54%) create mode 100644 kernel/data-pipeline/cdc/core/src/main/java/org/apache/shardingsphere/data/pipeline/cdc/core/metadata/processor/CDCJobConfigurationChangedProcessor.java create mode 100644 kernel/data-pipeline/cdc/core/src/main/java/org/apache/shardingsphere/data/pipeline/cdc/yaml/job/YamlCDCJobConfiguration.java create mode 100644 kernel/data-pipeline/cdc/core/src/main/java/org/apache/shardingsphere/data/pipeline/cdc/yaml/job/YamlCDCJobConfigurationSwapper.java copy infra/common/src/test/resources/META-INF/services/org.apache.shardingsphere.infra.distsql.update.RuleDefinitionUpdater => kernel/data-pipeline/cdc/core/src/main/resources/META-INF/services/org.apache.shardingsphere.data.pipeline.cdc.api.CDCJobAPI (91%) rename infra/common/src/test/resources/META-INF/services/org.apache.shardingsphere.infra.config.algorithm.ShardingSphereAlgorithm => kernel/data-pipeline/cdc/core/src/main/resources/META-INF/services/org.apache.shardingsphere.data.pipeline.core.metadata.node.event.handler.PipelineChangedJobConfigurationProcessor (88%) rename infra/common/src/test/resources/META-INF/services/org.apache.shardingsphere.infra.distsql.update.RALUpdater => kernel/data-pipeline/cdc/core/src/main/resources/META-INF/services/org.apache.shardingsphere.data.pipeline.spi.job.JobType (92%) rename infra/common/src/test/java/org/apache/shardingsphere/infra/distsql/update/RALUpdaterFactoryTest.java => kernel/data-pipeline/cdc/core/src/test/java/org/apache/shardingsphere/data/pipeline/cdc/core/job/CDCJobIdTest.java (59%) rename kernel/data-pipeline/distsql/handler/src/main/resources/META-INF/services/{org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet => org.apache.shardingsphere.distsql.handler.query.DistSQLResultSet} (100%) rename kernel/data-pipeline/distsql/handler/src/main/resources/META-INF/services/{org.apache.shardingsphere.infra.distsql.update.RALUpdater => org.apache.shardingsphere.distsql.handler.update.RALUpdater} (100%) rename kernel/parser/distsql/handler/src/main/resources/META-INF/services/{org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet => org.apache.shardingsphere.distsql.handler.query.DistSQLResultSet} (100%) rename kernel/parser/distsql/handler/src/main/resources/META-INF/services/{org.apache.shardingsphere.infra.distsql.update.GlobalRuleRALUpdater => org.apache.shardingsphere.distsql.handler.update.GlobalRuleRALUpdater} (100%) rename kernel/sql-translator/distsql/handler/src/main/resources/META-INF/services/{org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet => org.apache.shardingsphere.distsql.handler.query.DistSQLResultSet} (100%) rename kernel/traffic/distsql/handler/src/main/resources/META-INF/services/{org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet => org.apache.shardingsphere.distsql.handler.query.DistSQLResultSet} (100%) rename kernel/traffic/distsql/handler/src/main/resources/META-INF/services/{org.apache.shardingsphere.infra.distsql.update.GlobalRuleRALUpdater => org.apache.shardingsphere.distsql.handler.update.GlobalRuleRALUpdater} (100%) rename kernel/transaction/distsql/handler/src/main/resources/META-INF/services/{org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet => org.apache.shardingsphere.distsql.handler.query.DistSQLResultSet} (100%) rename kernel/transaction/distsql/handler/src/main/resources/META-INF/services/{org.apache.shardingsphere.infra.distsql.update.GlobalRuleRALUpdater => org.apache.shardingsphere.distsql.handler.update.GlobalRuleRALUpdater} (100%) create mode 100644 proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/cdc/CDCBackendHandler.java rename proxy/backend/src/main/resources/META-INF/services/{org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet => org.apache.shardingsphere.distsql.handler.query.DistSQLResultSet} (100%) rename proxy/backend/src/main/resources/META-INF/services/{org.apache.shardingsphere.infra.distsql.update.RALUpdater => org.apache.shardingsphere.distsql.handler.update.RALUpdater} (100%) rename proxy/backend/src/main/resources/META-INF/services/{org.apache.shardingsphere.infra.distsql.update.RuleDefinitionUpdater => org.apache.shardingsphere.distsql.handler.update.RuleDefinitionUpdater} (100%) create mode 100644 proxy/backend/src/test/java/org/apache/shardingsphere/proxy/backend/handler/cdc/CDCBackendHandlerTest.java rename infra/common/src/test/java/org/apache/shardingsphere/infra/fixture/FixtureRuleStatement.java => proxy/backend/src/test/java/org/apache/shardingsphere/proxy/backend/handler/cdc/fixture/FixtureCDCJobAPI.java (68%) rename infra/common/src/test/resources/META-INF/services/org.apache.shardingsphere.infra.distsql.update.RuleDefinitionUpdater => proxy/backend/src/test/resources/META-INF/services/org.apache.shardingsphere.data.pipeline.cdc.api.CDCJobAPI (91%) rename proxy/backend/src/test/resources/META-INF/services/{org.apache.shardingsphere.infra.distsql.query.DistSQLResultSet => org.apache.shardingsphere.distsql.handler.query.DistSQLResultSet} (100%) rename proxy/backend/src/test/resources/META-INF/services/{org.apache.shardingsphere.infra.distsql.update.RuleDefinitionUpdater => org.apache.shardingsphere.distsql.handler.update.RuleDefinitionUpdater} (100%)