This is an automated email from the ASF dual-hosted git repository. sdanilov pushed a change to branch main in repository https://gitbox.apache.org/repos/asf/ignite-3.git
from 6932a42d6 IGNITE-16853 Fix ItClientHandlerTest#testHandshakeValidReturnsSuccess (#777) new 149d9e200 IGNITE-16528 Implement init command handling new 98be03730 IGNITE-16471 Implement node join protocol (#722) 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: examples/config/ignite-config.json | 5 - examples/pom.xml | 12 + .../ignite/example/AbstractExamplesTest.java | 62 +++ .../apache/ignite/example/ExampleTestUtils.java | 2 +- .../example/sql/jdbc/ItSqlExamplesTest.java} | 54 +- .../ignite/example/table/ItTableExamplesTest.java} | 54 +- .../example/tx/ItTransactionsExamplesTest.java | 34 +- .../ignite/example/rebalance/RebalanceExample.java | 2 +- .../example/tx/TransactionsExamplesTest.java | 88 ---- .../affinity/RendezvousAffinityFunctionTest.java | 4 - .../src/main/java/org/apache/ignite/Ignition.java | 134 +++-- .../java/org/apache/ignite/IgnitionManager.java | 133 ++--- .../schemas/runner/ClusterConfigurationSchema.java | 32 -- .../schemas/runner/NodeConfigurationSchema.java | 32 -- .../configuration/schemas/runner/package-info.java | 22 - .../org/apache/ignite/cli/ItConfigCommandTest.java | 89 ++-- .../ignite/client/handler/ItClientHandlerTest.java | 4 +- .../ignite/client/handler/ClientHandlerModule.java | 16 +- .../handler/requests/sql/JdbcQueryCursor.java | 7 - .../org/apache/ignite/client/fakes/FakeCursor.java | 6 - .../{storage-api => cluster-management}/pom.xml | 77 ++- .../cluster/management/ItClusterManagerTest.java | 233 +++++++++ .../internal/cluster/management/MockNode.java | 149 ++++++ .../management/raft/ItCmgRaftServiceTest.java | 251 +++++++++ .../cluster/management/ClusterInitializer.java | 152 ++++++ .../management/ClusterManagementGroupManager.java | 566 +++++++++++++++++++++ .../management/IllegalInitArgumentException.java} | 11 +- .../cluster/management/InitException.java} | 15 +- .../cluster/management/InternalInitException.java} | 25 +- .../cluster/management/LocalStateStorage.java | 71 +++ .../network/CmgMessageHandlerFactory.java | 87 ++++ .../network/messages/CancelInitMessage.java} | 16 +- .../network/messages/ClusterStateMessage.java} | 15 +- .../network/messages/CmgInitMessage.java} | 22 +- .../network/messages/CmgMessageGroup.java | 56 ++ .../network/messages/InitCompleteMessage.java} | 12 +- .../network/messages/InitErrorMessage.java} | 29 +- .../network/messages/SuccessResponseMessage.java} | 12 +- .../cluster/management/raft/ClusterState.java | 74 +++ .../management/raft/ClusterStateStorage.java | 102 ++++ .../management/raft/CmgRaftGroupListener.java | 117 +++++ .../cluster/management/raft/CmgRaftService.java | 146 ++++++ .../management/raft/RaftStorageManager.java | 137 +++++ .../raft/RocksDbClusterStateStorage.java | 204 ++++++++ .../management/raft/commands/NodeJoinCommand.java} | 26 +- .../raft/commands/NodesLeaveCommand.java} | 27 +- .../raft/commands/ReadLogicalTopologyCommand.java} | 10 +- .../raft/commands/ReadStateCommand.java} | 9 +- .../raft/commands/WriteStateCommand.java} | 26 +- .../raft/responses/JoinDeniedResponse.java} | 27 +- .../raft/responses/LogicalTopologyResponse.java} | 28 +- .../cluster/management/rest/InitCommand.java | 58 +++ .../management/rest/InitCommandHandler.java | 98 ++++ .../cluster/management/ClusterInitializerTest.java | 192 +++++++ .../raft/AbstractClusterStateStorageTest.java | 272 ++++++++++ .../raft/ClusterStateStorageManagerTest.java | 162 ++++++ .../raft/ConcurrentMapClusterStateStorage.java | 153 ++++++ .../ConcurrentMapClusterStateStorageTest.java} | 12 +- .../raft/RocksDbClusterStateStorageTest.java} | 12 +- .../org/apache/ignite/internal/util/ByteUtils.java | 44 +- .../org/apache/ignite/internal/util/Cursor.java | 11 + .../testframework/BaseIgniteAbstractTest.java | 16 +- .../matchers/CompletableFutureMatcher.java | 25 +- .../client/ItMetaStorageRaftGroupTest.java | 13 +- .../client/ItMetaStorageServiceTest.java | 13 +- .../internal/metastorage/client/CursorImpl.java | 8 - .../metastorage/client/MetaStorageService.java | 1 - .../server/persistence/RangeCursor.java | 7 - .../server/persistence/WatchCursor.java | 7 - .../server/SimpleInMemoryKeyValueStorage.java | 14 - modules/metastorage/pom.xml | 5 + .../internal/metastorage/MetaStorageManager.java | 443 ++++++---------- .../MessageDeserializerGenerator.java | 42 +- .../serialization/MessageSerializerGenerator.java | 28 +- .../ignite/network/util/ClusterServiceUtils.java | 55 ++ .../network/scalecube/ItClusterServiceTest.java | 7 +- .../network/scalecube/ItNodeRestartsTest.java | 10 +- .../scalecube/ItScaleCubeNetworkMessagingTest.java | 21 +- .../ignite/utils/ClusterServiceTestUtils.java | 15 +- .../scalecube/ScaleCubeClusterServiceFactory.java | 2 +- .../apache/ignite/internal/raft/ItLozaTest.java | 11 +- .../internal/raft/ItRaftGroupServiceTest.java | 10 +- .../service/ItAbstractListenerSnapshotTest.java | 7 +- .../ignite/raft/jraft/core/ItCliServiceTest.java | 5 +- .../apache/ignite/raft/jraft/core/ItNodeTest.java | 16 +- .../ignite/raft/server/RaftServerAbstractTest.java | 7 +- .../apache/ignite/raft/jraft/core/TestCluster.java | 9 +- .../ignite/raft/jraft/rpc/IgniteRpcTest.java | 7 +- .../apache/ignite/internal/rest/api/Routes.java | 13 + .../apache/ignite/internal/rest/RestComponent.java | 18 + .../internal/rocksdb/RocksIteratorAdapter.java | 9 - modules/runner/pom.xml | 8 +- .../internal/AbstractClusterIntegrationTest.java | 53 +- .../java/org/apache/ignite/internal/ItUtils.java | 42 -- .../cluster/management/ItClusterInitTest.java | 88 ++++ .../ignite/internal/compute/ItComputeTest.java | 4 +- .../ItDistributedConfigurationPropertiesTest.java | 68 +-- .../ItDistributedConfigurationStorageTest.java | 63 +-- .../runner/app/AbstractSchemaChangeTest.java | 53 +- .../internal/runner/app/IgniteCliRunnerTest.java | 41 +- .../internal/runner/app/ItBaselineChangesTest.java | 94 ++-- .../internal/runner/app/ItDataSchemaSyncTest.java | 69 +-- .../runner/app/ItDynamicTableCreationTest.java | 170 +++---- .../runner/app/ItIgniteNodeRestartTest.java | 192 ++++--- .../ignite/internal/runner/app/ItIgnitionTest.java | 143 ++---- .../internal/runner/app/ItNoThreadsLeftTest.java | 94 ++-- .../runner/app/ItSchemaChangeKvViewTest.java | 12 +- .../runner/app/ItSchemaChangeTableViewTest.java | 14 +- .../internal/runner/app/ItTableCreationTest.java | 31 +- .../internal/runner/app/ItTablesApiTest.java | 178 +++---- .../runner/app/PlatformTestNodeRunner.java | 49 +- .../app/client/ItAbstractThinClientTest.java | 58 ++- .../runner/app/jdbc/AbstractJdbcSelfTest.java | 28 +- .../runner/app/jdbc/ItJdbcBatchSelfTest.java | 6 +- .../sql/engine/AbstractBasicIntegrationTest.java | 49 +- .../ignite/internal/sql/engine/ItDmlTest.java | 1 + .../integrationTest/resources/ignite-config.json | 5 - .../org/apache/ignite/app/IgniteCliRunner.java | 20 +- .../org/apache/ignite/internal/app/IgniteImpl.java | 155 ++++-- .../apache/ignite/internal/app/IgnitionImpl.java | 102 +++- .../CoreDistributedConfigurationModule.java | 6 +- .../CoreLocalConfigurationModule.java | 2 - .../recovery/RecoveryCompletionFutureFactory.java | 5 - .../CoreDistributedConfigurationModuleTest.java | 6 - .../CoreLocalConfigurationModuleTest.java | 6 - .../DistributedConfigurationStorageTest.java | 8 - .../sql/engine/exec/RuntimeSortedIndex.java | 8 - .../ignite/internal/sql/engine/util/Commons.java | 6 - .../internal/sql/engine/util/NodeLeaveHandler.java | 6 - .../storage/rocksdb/RocksDbTableStorageTest.java | 8 +- .../index/RocksDbSortedIndexStorageTest.java | 50 +- .../distributed/ItInternalTableScanTest.java | 6 +- .../distributed/ItTxDistributedTestSingleNode.java | 10 +- .../distributed/storage/VersionedRowStore.java | 7 - .../ItPersistencePropertiesVaultServiceTest.java | 12 +- .../ignite/internal/vault/VaultServiceTest.java | 7 +- parent/pom.xml | 13 + pom.xml | 1 + 138 files changed, 5211 insertions(+), 2228 deletions(-) create mode 100644 examples/src/integrationTest/java/org/apache/ignite/example/AbstractExamplesTest.java rename examples/src/{test => integrationTest}/java/org/apache/ignite/example/ExampleTestUtils.java (97%) rename examples/src/{test/java/org/apache/ignite/example/sql/jdbc/SqlExamplesTest.java => integrationTest/java/org/apache/ignite/example/sql/jdbc/ItSqlExamplesTest.java} (55%) rename examples/src/{test/java/org/apache/ignite/example/table/TableExamplesTest.java => integrationTest/java/org/apache/ignite/example/table/ItTableExamplesTest.java} (65%) copy modules/metastorage-common/src/main/java/org/apache/ignite/internal/metastorage/common/command/MultiInvokeCommand.java => examples/src/integrationTest/java/org/apache/ignite/example/tx/ItTransactionsExamplesTest.java (54%) delete mode 100644 examples/src/test/java/org/apache/ignite/example/tx/TransactionsExamplesTest.java delete mode 100644 modules/api/src/main/java/org/apache/ignite/configuration/schemas/runner/ClusterConfigurationSchema.java delete mode 100644 modules/api/src/main/java/org/apache/ignite/configuration/schemas/runner/NodeConfigurationSchema.java delete mode 100644 modules/api/src/main/java/org/apache/ignite/configuration/schemas/runner/package-info.java copy modules/{storage-api => cluster-management}/pom.xml (71%) create mode 100644 modules/cluster-management/src/integrationTest/java/org/apache/ignite/internal/cluster/management/ItClusterManagerTest.java create mode 100644 modules/cluster-management/src/integrationTest/java/org/apache/ignite/internal/cluster/management/MockNode.java create mode 100644 modules/cluster-management/src/integrationTest/java/org/apache/ignite/internal/cluster/management/raft/ItCmgRaftServiceTest.java create mode 100644 modules/cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/ClusterInitializer.java create mode 100644 modules/cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/ClusterManagementGroupManager.java copy modules/{storage-api/src/main/java/org/apache/ignite/internal/storage/TxIdMismatchException.java => cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/IllegalInitArgumentException.java} (68%) copy modules/{storage-api/src/main/java/org/apache/ignite/internal/storage/TxIdMismatchException.java => cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/InitException.java} (64%) copy modules/{storage-rocksdb/src/main/java/org/apache/ignite/internal/storage/rocksdb/index/ByteArraySearchRow.java => cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/InternalInitException.java} (61%) create mode 100644 modules/cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/LocalStateStorage.java create mode 100644 modules/cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/network/CmgMessageHandlerFactory.java copy modules/{network/src/test/java/org/apache/ignite/internal/network/NestedMessageMessage.java => cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/network/messages/CancelInitMessage.java} (66%) copy modules/{network/src/test/java/org/apache/ignite/internal/network/processor/EmptyMessage.java => cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/network/messages/ClusterStateMessage.java} (67%) copy modules/{network/src/main/java/org/apache/ignite/internal/network/message/ClassDescriptorListMessage.java => cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/network/messages/CmgInitMessage.java} (62%) create mode 100644 modules/cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/network/messages/CmgMessageGroup.java copy modules/{network/src/integrationTest/resources/org/apache/ignite/internal/network/processor/InvalidReturnTypeGetterMessage.java => cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/network/messages/InitCompleteMessage.java} (72%) copy modules/{sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/message/QueryStartResponse.java => cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/network/messages/InitErrorMessage.java} (56%) copy modules/{network/src/integrationTest/resources/org/apache/ignite/internal/network/processor/ConflictingTypeMessage.java => cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/network/messages/SuccessResponseMessage.java} (74%) create mode 100644 modules/cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/raft/ClusterState.java create mode 100644 modules/cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/raft/ClusterStateStorage.java create mode 100644 modules/cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/raft/CmgRaftGroupListener.java create mode 100644 modules/cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/raft/CmgRaftService.java create mode 100644 modules/cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/raft/RaftStorageManager.java create mode 100644 modules/cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/raft/RocksDbClusterStateStorage.java copy modules/{metastorage-common/src/main/java/org/apache/ignite/internal/metastorage/common/command/MultiInvokeCommand.java => cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/raft/commands/NodeJoinCommand.java} (59%) copy modules/{metastorage-common/src/main/java/org/apache/ignite/internal/metastorage/common/command/MultiInvokeCommand.java => cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/raft/commands/NodesLeaveCommand.java} (56%) copy modules/{metastorage-common/src/main/java/org/apache/ignite/internal/metastorage/common/command/CompoundConditionType.java => cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/raft/commands/ReadLogicalTopologyCommand.java} (77%) copy modules/{storage-api/src/main/java/org/apache/ignite/internal/storage/TxIdMismatchException.java => cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/raft/commands/ReadStateCommand.java} (72%) copy modules/{metastorage-common/src/main/java/org/apache/ignite/internal/metastorage/common/command/MultiInvokeCommand.java => cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/raft/commands/WriteStateCommand.java} (59%) copy modules/{metastorage-common/src/main/java/org/apache/ignite/internal/metastorage/common/StatementResultInfo.java => cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/raft/responses/JoinDeniedResponse.java} (55%) copy modules/{metastorage-common/src/main/java/org/apache/ignite/internal/metastorage/common/StatementResultInfo.java => cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/raft/responses/LogicalTopologyResponse.java} (58%) create mode 100644 modules/cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/rest/InitCommand.java create mode 100644 modules/cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/rest/InitCommandHandler.java create mode 100644 modules/cluster-management/src/test/java/org/apache/ignite/internal/cluster/management/ClusterInitializerTest.java create mode 100644 modules/cluster-management/src/test/java/org/apache/ignite/internal/cluster/management/raft/AbstractClusterStateStorageTest.java create mode 100644 modules/cluster-management/src/test/java/org/apache/ignite/internal/cluster/management/raft/ClusterStateStorageManagerTest.java create mode 100644 modules/cluster-management/src/test/java/org/apache/ignite/internal/cluster/management/raft/ConcurrentMapClusterStateStorage.java copy modules/{storage-api/src/main/java/org/apache/ignite/internal/storage/TxIdMismatchException.java => cluster-management/src/test/java/org/apache/ignite/internal/cluster/management/raft/ConcurrentMapClusterStateStorageTest.java} (71%) copy modules/{storage-api/src/main/java/org/apache/ignite/internal/storage/TxIdMismatchException.java => cluster-management/src/test/java/org/apache/ignite/internal/cluster/management/raft/RocksDbClusterStateStorageTest.java} (71%) create mode 100644 modules/network-api/src/main/java/org/apache/ignite/network/util/ClusterServiceUtils.java delete mode 100644 modules/runner/src/integrationTest/java/org/apache/ignite/internal/ItUtils.java create mode 100644 modules/runner/src/integrationTest/java/org/apache/ignite/internal/cluster/management/ItClusterInitTest.java