This is an automated email from the ASF dual-hosted git repository. tkalkirill pushed a commit to branch ignite-27081 in repository https://gitbox.apache.org/repos/asf/ignite-3.git
commit c8463659d2331e15b96489cf4323a8e9d672fddd Author: Kirill Tkalenko <[email protected]> AuthorDate: Mon Nov 17 18:16:16 2025 +0300 IGNITE-27081 wip --- modules/cluster-management/build.gradle | 2 ++ .../management/raft/ItCmgRaftServiceTest.java | 6 ++++- .../management/BaseItClusterManagementTest.java | 6 +++++ .../internal/cluster/management/MockNode.java | 4 ++- .../rebalance/ItRebalanceDistributedTest.java | 4 +++ .../impl/ItIdempotentCommandCacheTest.java | 29 ++++++++++++++++++---- .../impl/ItMetaStorageManagerImplTest.java | 12 ++++++++- .../ItMetaStorageMultipleNodesAbstractTest.java | 13 +++++++--- .../metastorage/impl/ItMetaStorageServiceTest.java | 14 +++++++++-- .../metastorage/impl/ItMetaStorageWatchTest.java | 5 ++++ .../partition/replicator/fixtures/Node.java | 1 + .../ItZonePartitionRaftListenerRecoveryTest.java | 3 +++ .../MultiActorPlacementDriverTest.java | 5 ++++ .../PlacementDriverManagerTest.java | 5 ++++ modules/raft/build.gradle | 2 ++ .../ignite/internal/raft/ItLearnersTest.java | 6 ++++- .../apache/ignite/internal/raft/ItLozaTest.java | 21 +++++++++++----- .../internal/raft/ItRaftGroupServiceTest.java | 5 ++++ .../raft/ItTruncateSuffixAndRestartTest.java | 6 ++++- .../java/org/apache/ignite/internal/raft/Loza.java | 6 +++++ .../org/apache/ignite/internal/raft/LozaTest.java | 6 ++++- .../ignite/internal/raft/TestLozaFactory.java | 15 ++++++++--- modules/replicator/build.gradle | 1 + .../ItPlacementDriverReplicaSideTest.java | 5 ++++ .../ItDistributedConfigurationPropertiesTest.java | 17 +++++++++---- .../ItDistributedConfigurationStorageTest.java | 9 +++++-- .../runner/app/ItIgniteNodeRestartTest.java | 1 + .../org/apache/ignite/internal/app/IgniteImpl.java | 1 + .../apache/ignite/distributed/ItLockTableTest.java | 1 + .../ItTxDistributedCleanupRecoveryTest.java | 1 + ...xDistributedTestSingleNodeNoCleanupMessage.java | 1 + .../ignite/distributed/ItTxStateLocalMapTest.java | 5 ++++ .../ReplicasSafeTimePropagationTest.java | 5 ++++ .../apache/ignite/distributed/ItTxTestCluster.java | 16 ++++++++---- .../internal/table/TxInfrastructureTest.java | 5 ++++ 35 files changed, 207 insertions(+), 37 deletions(-) diff --git a/modules/cluster-management/build.gradle b/modules/cluster-management/build.gradle index 804944a6b7d..b1ccf334640 100644 --- a/modules/cluster-management/build.gradle +++ b/modules/cluster-management/build.gradle @@ -67,6 +67,7 @@ dependencies { testFixturesImplementation project(':ignite-security') testFixturesImplementation project(':ignite-system-disaster-recovery-api') testFixturesImplementation project(':ignite-system-disaster-recovery') + testFixturesImplementation project(':ignite-configuration-system') testFixturesImplementation testFixtures(project(':ignite-core')) testFixturesImplementation testFixtures(project(':ignite-configuration')) testFixturesImplementation testFixtures(project(':ignite-network')) @@ -81,6 +82,7 @@ dependencies { integrationTestImplementation project(':ignite-catalog') integrationTestImplementation project(':ignite-runner') integrationTestImplementation project(':ignite-system-disaster-recovery') + integrationTestImplementation project(':ignite-configuration-system') integrationTestImplementation testFixtures(project) integrationTestImplementation testFixtures(project(':ignite-core')) integrationTestImplementation testFixtures(project(':ignite-configuration')) diff --git a/modules/cluster-management/src/integrationTest/java/org/apache/ignite/internal/cluster/management/raft/ItCmgRaftServiceTest.java b/modules/cluster-management/src/integrationTest/java/org/apache/ignite/internal/cluster/management/raft/ItCmgRaftServiceTest.java index 190b9faf4fb..53b60976172 100644 --- a/modules/cluster-management/src/integrationTest/java/org/apache/ignite/internal/cluster/management/raft/ItCmgRaftServiceTest.java +++ b/modules/cluster-management/src/integrationTest/java/org/apache/ignite/internal/cluster/management/raft/ItCmgRaftServiceTest.java @@ -53,6 +53,7 @@ import org.apache.ignite.internal.cluster.management.topology.api.LogicalNode; import org.apache.ignite.internal.cluster.management.topology.api.LogicalTopologySnapshot; import org.apache.ignite.internal.configuration.ComponentWorkingDir; import org.apache.ignite.internal.configuration.RaftGroupOptionsConfigHelper; +import org.apache.ignite.internal.configuration.SystemLocalConfiguration; import org.apache.ignite.internal.configuration.testframework.ConfigurationExtension; import org.apache.ignite.internal.configuration.testframework.InjectConfiguration; import org.apache.ignite.internal.failure.NoOpFailureManager; @@ -95,6 +96,9 @@ public class ItCmgRaftServiceTest extends BaseIgniteAbstractTest { @InjectConfiguration private static RaftConfiguration raftConfiguration; + @InjectConfiguration + private static SystemLocalConfiguration systemLocalConfiguration; + private final CmgMessagesFactory msgFactory = new CmgMessagesFactory(); private class Node { @@ -120,7 +124,7 @@ public class ItCmgRaftServiceTest extends BaseIgniteAbstractTest { clusterService.nodeName(), workingDir.raftLogPath() ); - this.raftManager = TestLozaFactory.create(clusterService, raftConfiguration, new HybridClockImpl()); + this.raftManager = TestLozaFactory.create(clusterService, raftConfiguration, systemLocalConfiguration, new HybridClockImpl()); this.logicalTopology = new LogicalTopologyImpl(clusterStateStorage, new NoOpFailureManager()); } diff --git a/modules/cluster-management/src/testFixtures/java/org/apache/ignite/internal/cluster/management/BaseItClusterManagementTest.java b/modules/cluster-management/src/testFixtures/java/org/apache/ignite/internal/cluster/management/BaseItClusterManagementTest.java index f2b3dbd73f5..4d61e6d5d7a 100644 --- a/modules/cluster-management/src/testFixtures/java/org/apache/ignite/internal/cluster/management/BaseItClusterManagementTest.java +++ b/modules/cluster-management/src/testFixtures/java/org/apache/ignite/internal/cluster/management/BaseItClusterManagementTest.java @@ -27,6 +27,7 @@ import java.util.function.BiConsumer; import java.util.function.Consumer; import java.util.stream.IntStream; import org.apache.ignite.internal.cluster.management.configuration.NodeAttributesConfiguration; +import org.apache.ignite.internal.configuration.SystemLocalConfiguration; import org.apache.ignite.internal.configuration.testframework.ConfigurationExtension; import org.apache.ignite.internal.configuration.testframework.InjectConfiguration; import org.apache.ignite.internal.network.NodeFinder; @@ -50,6 +51,9 @@ public abstract class BaseItClusterManagementTest extends IgniteAbstractTest { @InjectConfiguration("mock.retryTimeoutMillis = 60000") private static RaftConfiguration raftConfiguration; + @InjectConfiguration + private static SystemLocalConfiguration systemLocalConfiguration; + @InjectConfiguration private static NodeAttributesConfiguration userNodeAttributes; @@ -78,6 +82,7 @@ public abstract class BaseItClusterManagementTest extends IgniteAbstractTest { nodeFinder, workDir, raftConfiguration, + systemLocalConfiguration, userNodeAttributes, storageConfiguration, config -> onConfigurationCommittedListener.accept(i, config) @@ -104,6 +109,7 @@ public abstract class BaseItClusterManagementTest extends IgniteAbstractTest { new StaticNodeFinder(createSeedAddresses(clusterSize)), workDir, raftConfiguration, + systemLocalConfiguration, userNodeAttributes, storageConfiguration, onConfigurationCommittedListener diff --git a/modules/cluster-management/src/testFixtures/java/org/apache/ignite/internal/cluster/management/MockNode.java b/modules/cluster-management/src/testFixtures/java/org/apache/ignite/internal/cluster/management/MockNode.java index 30167d227db..2d96b8dfd2b 100644 --- a/modules/cluster-management/src/testFixtures/java/org/apache/ignite/internal/cluster/management/MockNode.java +++ b/modules/cluster-management/src/testFixtures/java/org/apache/ignite/internal/cluster/management/MockNode.java @@ -39,6 +39,7 @@ import org.apache.ignite.internal.cluster.management.topology.LogicalTopologyImp import org.apache.ignite.internal.cluster.management.topology.api.LogicalNode; import org.apache.ignite.internal.cluster.management.topology.api.LogicalTopologySnapshot; import org.apache.ignite.internal.configuration.RaftGroupOptionsConfigHelper; +import org.apache.ignite.internal.configuration.SystemLocalConfiguration; import org.apache.ignite.internal.configuration.validation.TestConfigurationValidator; import org.apache.ignite.internal.disaster.system.SystemDisasterRecoveryStorage; import org.apache.ignite.internal.failure.FailureManager; @@ -89,6 +90,7 @@ public class MockNode { NodeFinder nodeFinder, Path workDir, RaftConfiguration raftConfiguration, + SystemLocalConfiguration systemLocalConfiguration, NodeAttributesConfiguration nodeAttributes, StorageConfiguration storageProfilesConfiguration, Consumer<RaftGroupConfiguration> onConfigurationCommittedListener @@ -115,7 +117,7 @@ public class MockNode { this.workDir.resolve("partitions/log") ); - var raftManager = TestLozaFactory.create(clusterService, raftConfiguration, new HybridClockImpl()); + var raftManager = TestLozaFactory.create(clusterService, raftConfiguration, systemLocalConfiguration, new HybridClockImpl()); var clusterStateStorage = new RocksDbClusterStateStorage(this.workDir.resolve("cmg/data"), clusterService.nodeName()); diff --git a/modules/distribution-zones/src/integrationTest/java/org/apache/ignite/internal/rebalance/ItRebalanceDistributedTest.java b/modules/distribution-zones/src/integrationTest/java/org/apache/ignite/internal/rebalance/ItRebalanceDistributedTest.java index 6788b67c87a..91203047cb0 100644 --- a/modules/distribution-zones/src/integrationTest/java/org/apache/ignite/internal/rebalance/ItRebalanceDistributedTest.java +++ b/modules/distribution-zones/src/integrationTest/java/org/apache/ignite/internal/rebalance/ItRebalanceDistributedTest.java @@ -320,6 +320,9 @@ public class ItRebalanceDistributedTest extends BaseIgniteAbstractTest { @InjectConfiguration private RaftConfiguration raftConfiguration; + @InjectConfiguration + private SystemLocalConfiguration systemLocalConfiguration; + @InjectConfiguration private SystemLocalConfiguration systemConfiguration; @@ -1319,6 +1322,7 @@ public class ItRebalanceDistributedTest extends BaseIgniteAbstractTest { clusterService, metricManager, raftConfiguration, + systemLocalConfiguration, hybridClock, raftGroupEventsClientListener, new NoOpFailureManager() diff --git a/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItIdempotentCommandCacheTest.java b/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItIdempotentCommandCacheTest.java index b4b37fbf26a..0ecb7977ff9 100644 --- a/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItIdempotentCommandCacheTest.java +++ b/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItIdempotentCommandCacheTest.java @@ -57,6 +57,7 @@ import org.apache.ignite.internal.cluster.management.topology.api.LogicalTopolog import org.apache.ignite.internal.configuration.ComponentWorkingDir; import org.apache.ignite.internal.configuration.RaftGroupOptionsConfigHelper; import org.apache.ignite.internal.configuration.SystemDistributedConfiguration; +import org.apache.ignite.internal.configuration.SystemLocalConfiguration; import org.apache.ignite.internal.configuration.testframework.ConfigurationExtension; import org.apache.ignite.internal.configuration.testframework.InjectConfiguration; import org.apache.ignite.internal.failure.NoOpFailureManager; @@ -136,8 +137,11 @@ public class ItIdempotentCommandCacheTest extends IgniteAbstractTest { @InjectConfiguration("mock.retryTimeoutMillis = 10000") private RaftConfiguration raftConfiguration; + @InjectConfiguration + private SystemLocalConfiguration systemLocalConfiguration; + @InjectConfiguration("mock.idleSafeTimeSyncIntervalMillis = 100") - private SystemDistributedConfiguration systemConfiguration; + private SystemDistributedConfiguration systemDistributedConfiguration; @InjectExecutorService private ScheduledExecutorService scheduledExecutorService; @@ -166,7 +170,8 @@ public class ItIdempotentCommandCacheTest extends IgniteAbstractTest { Node( TestInfo testInfo, RaftConfiguration raftConfiguration, - SystemDistributedConfiguration systemConfiguration, + SystemLocalConfiguration systemLocalConfiguration, + SystemDistributedConfiguration systemDistributedConfiguration, Path workDir, int index, ScheduledExecutorService scheduledExecutorService @@ -194,7 +199,13 @@ public class ItIdempotentCommandCacheTest extends IgniteAbstractTest { workingDir.raftLogPath() ); - raftManager = TestLozaFactory.create(clusterService, raftConfiguration, clock, raftGroupEventsClientListener); + raftManager = TestLozaFactory.create( + clusterService, + raftConfiguration, + systemLocalConfiguration, + clock, + raftGroupEventsClientListener + ); var logicalTopologyService = mock(LogicalTopologyService.class); @@ -235,7 +246,7 @@ public class ItIdempotentCommandCacheTest extends IgniteAbstractTest { clock, topologyAwareRaftGroupServiceFactory, new NoOpMetricManager(), - systemConfiguration, + systemDistributedConfiguration, msRaftConfigurer, readOperationForCompactionTracker ); @@ -555,7 +566,15 @@ public class ItIdempotentCommandCacheTest extends IgniteAbstractTest { nodes = new ArrayList<>(); for (int i = 0; i < NODES_COUNT; i++) { - Node node = new Node(testInfo, raftConfiguration, systemConfiguration, workDir, i, scheduledExecutorService); + Node node = new Node( + testInfo, + raftConfiguration, + systemLocalConfiguration, + systemDistributedConfiguration, + workDir, + i, + scheduledExecutorService + ); nodes.add(node); } diff --git a/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageManagerImplTest.java b/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageManagerImplTest.java index 9ee64595f43..9cf447badac 100644 --- a/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageManagerImplTest.java +++ b/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageManagerImplTest.java @@ -61,6 +61,7 @@ import org.apache.ignite.internal.cluster.management.topology.api.LogicalTopolog import org.apache.ignite.internal.configuration.ComponentWorkingDir; import org.apache.ignite.internal.configuration.RaftGroupOptionsConfigHelper; import org.apache.ignite.internal.configuration.SystemDistributedConfiguration; +import org.apache.ignite.internal.configuration.SystemLocalConfiguration; import org.apache.ignite.internal.configuration.testframework.ConfigurationExtension; import org.apache.ignite.internal.configuration.testframework.InjectConfiguration; import org.apache.ignite.internal.disaster.system.repair.MetastorageRepair; @@ -138,6 +139,9 @@ public class ItMetaStorageManagerImplTest extends IgniteAbstractTest { @InjectConfiguration private RaftConfiguration raftConfiguration; + @InjectConfiguration + private SystemLocalConfiguration systemLocalConfiguration; + @InjectExecutorService private ScheduledExecutorService scheduledExecutorService; @@ -163,7 +167,13 @@ public class ItMetaStorageManagerImplTest extends IgniteAbstractTest { workingDir.raftLogPath() ); - raftManager = TestLozaFactory.create(clusterService, raftConfiguration, clock, raftGroupEventsClientListener); + raftManager = TestLozaFactory.create( + clusterService, + raftConfiguration, + systemLocalConfiguration, + clock, + raftGroupEventsClientListener + ); var logicalTopologyService = mock(LogicalTopologyService.class); diff --git a/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageMultipleNodesAbstractTest.java b/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageMultipleNodesAbstractTest.java index b3351960b70..a395f6a470a 100644 --- a/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageMultipleNodesAbstractTest.java +++ b/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageMultipleNodesAbstractTest.java @@ -44,6 +44,7 @@ import org.apache.ignite.internal.components.SystemPropertiesNodeProperties; import org.apache.ignite.internal.configuration.ComponentWorkingDir; import org.apache.ignite.internal.configuration.RaftGroupOptionsConfigHelper; import org.apache.ignite.internal.configuration.SystemDistributedConfiguration; +import org.apache.ignite.internal.configuration.SystemLocalConfiguration; import org.apache.ignite.internal.configuration.testframework.ConfigurationExtension; import org.apache.ignite.internal.configuration.testframework.InjectConfiguration; import org.apache.ignite.internal.configuration.validation.TestConfigurationValidator; @@ -96,11 +97,14 @@ abstract class ItMetaStorageMultipleNodesAbstractTest extends IgniteAbstractTest @InjectConfiguration private StorageConfiguration storageConfiguration; + @InjectConfiguration + private SystemLocalConfiguration systemLocalConfiguration; + /** * Large interval to effectively disable idle safe time propagation. */ @InjectConfiguration("mock.idleSafeTimeSyncIntervalMillis=1000000") - private SystemDistributedConfiguration systemConfiguration; + private SystemDistributedConfiguration systemDistributedConfiguration; private TestInfo testInfo; @@ -161,6 +165,7 @@ abstract class ItMetaStorageMultipleNodesAbstractTest extends IgniteAbstractTest this.raftManager = TestLozaFactory.create( clusterService, raftConfiguration, + systemLocalConfiguration, clock, raftGroupEventsClientListener ); @@ -227,7 +232,7 @@ abstract class ItMetaStorageMultipleNodesAbstractTest extends IgniteAbstractTest clock, topologyAwareRaftGroupServiceFactory, new NoOpMetricManager(), - systemConfiguration, + systemDistributedConfiguration, msRaftConfigurator, readOperationForCompactionTracker ); @@ -318,7 +323,9 @@ abstract class ItMetaStorageMultipleNodesAbstractTest extends IgniteAbstractTest } final void enableIdleSafeTimeSync() { - CompletableFuture<Void> updateIdleSafeTimeSyncIntervalFuture = systemConfiguration.idleSafeTimeSyncIntervalMillis().update(100L); + CompletableFuture<Void> updateIdleSafeTimeSyncIntervalFuture = systemDistributedConfiguration + .idleSafeTimeSyncIntervalMillis() + .update(100L); assertThat(updateIdleSafeTimeSyncIntervalFuture, willCompleteSuccessfully()); } diff --git a/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageServiceTest.java b/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageServiceTest.java index 6a76141b726..304197c5754 100644 --- a/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageServiceTest.java +++ b/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageServiceTest.java @@ -70,6 +70,7 @@ import java.util.stream.Collectors; import java.util.stream.Stream; import org.apache.ignite.internal.configuration.ComponentWorkingDir; import org.apache.ignite.internal.configuration.RaftGroupOptionsConfigHelper; +import org.apache.ignite.internal.configuration.SystemLocalConfiguration; import org.apache.ignite.internal.configuration.testframework.ConfigurationExtension; import org.apache.ignite.internal.configuration.testframework.InjectConfiguration; import org.apache.ignite.internal.hlc.HybridClock; @@ -197,7 +198,12 @@ public class ItMetaStorageServiceTest extends BaseIgniteAbstractTest { private final RaftGroupOptionsConfigurer partitionsRaftConfigurer; - Node(ClusterService clusterService, RaftConfiguration raftConfiguration, Path dataPath) { + Node( + ClusterService clusterService, + RaftConfiguration raftConfiguration, + SystemLocalConfiguration systemLocalConfiguration, + Path dataPath + ) { this.clusterService = clusterService; clock = new HybridClockImpl(); @@ -215,6 +221,7 @@ public class ItMetaStorageServiceTest extends BaseIgniteAbstractTest { this.raftManager = TestLozaFactory.create( clusterService, raftConfiguration, + systemLocalConfiguration, clock ); this.clusterTime = new ClusterTimeImpl(clusterService.nodeName(), new IgniteSpinBusyLock(), clock); @@ -301,6 +308,9 @@ public class ItMetaStorageServiceTest extends BaseIgniteAbstractTest { @InjectConfiguration private RaftConfiguration raftConfiguration; + @InjectConfiguration + private SystemLocalConfiguration systemLocalConfiguration; + private final List<Node> nodes = new ArrayList<>(); @BeforeEach @@ -316,7 +326,7 @@ public class ItMetaStorageServiceTest extends BaseIgniteAbstractTest { localAddresses.stream() .map(addr -> ClusterServiceTestUtils.clusterService(testInfo, addr.port(), nodeFinder)) - .forEach(clusterService -> nodes.add(new Node(clusterService, raftConfiguration, workDir))); + .forEach(clusterService -> nodes.add(new Node(clusterService, raftConfiguration, systemLocalConfiguration, workDir))); return nodes; } diff --git a/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageWatchTest.java b/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageWatchTest.java index 147348b8b78..b0d41642081 100644 --- a/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageWatchTest.java +++ b/modules/metastorage/src/integrationTest/java/org/apache/ignite/internal/metastorage/impl/ItMetaStorageWatchTest.java @@ -61,6 +61,7 @@ import org.apache.ignite.internal.components.SystemPropertiesNodeProperties; import org.apache.ignite.internal.configuration.ComponentWorkingDir; import org.apache.ignite.internal.configuration.RaftGroupOptionsConfigHelper; import org.apache.ignite.internal.configuration.SystemDistributedConfiguration; +import org.apache.ignite.internal.configuration.SystemLocalConfiguration; import org.apache.ignite.internal.configuration.testframework.ConfigurationExtension; import org.apache.ignite.internal.configuration.testframework.InjectConfiguration; import org.apache.ignite.internal.configuration.validation.TestConfigurationValidator; @@ -129,6 +130,9 @@ public class ItMetaStorageWatchTest extends IgniteAbstractTest { @InjectConfiguration private RaftConfiguration raftConfiguration; + @InjectConfiguration + private SystemLocalConfiguration systemLocalConfiguration; + private class Node { private final List<IgniteComponent> components = new ArrayList<>(); @@ -165,6 +169,7 @@ public class ItMetaStorageWatchTest extends IgniteAbstractTest { var raftManager = TestLozaFactory.create( clusterService, raftConfiguration, + systemLocalConfiguration, clock, raftGroupEventsClientListener ); diff --git a/modules/partition-replicator/src/integrationTest/java/org/apache/ignite/internal/partition/replicator/fixtures/Node.java b/modules/partition-replicator/src/integrationTest/java/org/apache/ignite/internal/partition/replicator/fixtures/Node.java index cb0026e0483..c4c46cca52f 100644 --- a/modules/partition-replicator/src/integrationTest/java/org/apache/ignite/internal/partition/replicator/fixtures/Node.java +++ b/modules/partition-replicator/src/integrationTest/java/org/apache/ignite/internal/partition/replicator/fixtures/Node.java @@ -402,6 +402,7 @@ public class Node { clusterService, metricManager, raftConfiguration, + systemLocalConfiguration, hybridClock, raftGroupEventsClientListener, new NoOpFailureManager() diff --git a/modules/partition-replicator/src/integrationTest/java/org/apache/ignite/internal/partition/replicator/raft/ItZonePartitionRaftListenerRecoveryTest.java b/modules/partition-replicator/src/integrationTest/java/org/apache/ignite/internal/partition/replicator/raft/ItZonePartitionRaftListenerRecoveryTest.java index 9ced615c4fa..bdcb3605a2c 100644 --- a/modules/partition-replicator/src/integrationTest/java/org/apache/ignite/internal/partition/replicator/raft/ItZonePartitionRaftListenerRecoveryTest.java +++ b/modules/partition-replicator/src/integrationTest/java/org/apache/ignite/internal/partition/replicator/raft/ItZonePartitionRaftListenerRecoveryTest.java @@ -60,6 +60,7 @@ import org.apache.ignite.internal.catalog.descriptors.CatalogIndexDescriptor; import org.apache.ignite.internal.components.NoOpLogSyncer; import org.apache.ignite.internal.components.SystemPropertiesNodeProperties; import org.apache.ignite.internal.configuration.ComponentWorkingDir; +import org.apache.ignite.internal.configuration.SystemLocalConfiguration; import org.apache.ignite.internal.configuration.testframework.ConfigurationExtension; import org.apache.ignite.internal.configuration.testframework.InjectConfiguration; import org.apache.ignite.internal.failure.NoOpFailureManager; @@ -232,6 +233,7 @@ class ItZonePartitionRaftListenerRecoveryTest extends IgniteAbstractTest { void setUp( TestInfo testInfo, @InjectConfiguration RaftConfiguration raftConfiguration, + @InjectConfiguration SystemLocalConfiguration systemLocalConfiguration, @InjectExecutorService ScheduledExecutorService scheduledExecutorService, @Mock Catalog catalog, @Mock CatalogIndexDescriptor catalogIndexDescriptor @@ -262,6 +264,7 @@ class ItZonePartitionRaftListenerRecoveryTest extends IgniteAbstractTest { clusterService, new NoOpMetricManager(), raftConfiguration, + systemLocalConfiguration, clock, new RaftGroupEventsClientListener(), failureProcessor diff --git a/modules/placement-driver/src/integrationTest/java/org/apache/ignite/internal/placementdriver/MultiActorPlacementDriverTest.java b/modules/placement-driver/src/integrationTest/java/org/apache/ignite/internal/placementdriver/MultiActorPlacementDriverTest.java index 01be19c4c28..a65046045b0 100644 --- a/modules/placement-driver/src/integrationTest/java/org/apache/ignite/internal/placementdriver/MultiActorPlacementDriverTest.java +++ b/modules/placement-driver/src/integrationTest/java/org/apache/ignite/internal/placementdriver/MultiActorPlacementDriverTest.java @@ -47,6 +47,7 @@ import org.apache.ignite.internal.components.SystemPropertiesNodeProperties; import org.apache.ignite.internal.configuration.ComponentWorkingDir; import org.apache.ignite.internal.configuration.RaftGroupOptionsConfigHelper; import org.apache.ignite.internal.configuration.SystemDistributedConfiguration; +import org.apache.ignite.internal.configuration.SystemLocalConfiguration; import org.apache.ignite.internal.configuration.testframework.ConfigurationExtension; import org.apache.ignite.internal.configuration.testframework.InjectConfiguration; import org.apache.ignite.internal.failure.FailureProcessor; @@ -108,6 +109,9 @@ public class MultiActorPlacementDriverTest extends BasePlacementDriverTest { @InjectConfiguration private RaftConfiguration raftConfiguration; + @InjectConfiguration + private SystemLocalConfiguration systemLocalConfiguration; + @InjectConfiguration private SystemDistributedConfiguration systemDistributedConfiguration; @@ -278,6 +282,7 @@ public class MultiActorPlacementDriverTest extends BasePlacementDriverTest { var raftManager = TestLozaFactory.create( clusterService, raftConfiguration, + systemLocalConfiguration, nodeClock, eventsClientListener ); diff --git a/modules/placement-driver/src/integrationTest/java/org/apache/ignite/internal/placementdriver/PlacementDriverManagerTest.java b/modules/placement-driver/src/integrationTest/java/org/apache/ignite/internal/placementdriver/PlacementDriverManagerTest.java index b16c60d08a7..69cd5d42bfa 100644 --- a/modules/placement-driver/src/integrationTest/java/org/apache/ignite/internal/placementdriver/PlacementDriverManagerTest.java +++ b/modules/placement-driver/src/integrationTest/java/org/apache/ignite/internal/placementdriver/PlacementDriverManagerTest.java @@ -67,6 +67,7 @@ import org.apache.ignite.internal.components.SystemPropertiesNodeProperties; import org.apache.ignite.internal.configuration.ComponentWorkingDir; import org.apache.ignite.internal.configuration.RaftGroupOptionsConfigHelper; import org.apache.ignite.internal.configuration.SystemDistributedConfiguration; +import org.apache.ignite.internal.configuration.SystemLocalConfiguration; import org.apache.ignite.internal.configuration.testframework.ConfigurationExtension; import org.apache.ignite.internal.configuration.testframework.InjectConfiguration; import org.apache.ignite.internal.distributionzones.rebalance.ZoneRebalanceUtil; @@ -148,6 +149,9 @@ public class PlacementDriverManagerTest extends BasePlacementDriverTest { @InjectConfiguration private RaftConfiguration raftConfiguration; + @InjectConfiguration + private SystemLocalConfiguration systemLocalConfiguration; + @InjectConfiguration private SystemDistributedConfiguration systemDistributedConfiguration; @@ -222,6 +226,7 @@ public class PlacementDriverManagerTest extends BasePlacementDriverTest { raftManager = TestLozaFactory.create( clusterService, raftConfiguration, + systemLocalConfiguration, nodeClock, eventsClientListener ); diff --git a/modules/raft/build.gradle b/modules/raft/build.gradle index f8724585775..a315d2f74ce 100644 --- a/modules/raft/build.gradle +++ b/modules/raft/build.gradle @@ -38,6 +38,7 @@ pmdTest { dependencies { implementation project(':ignite-core') implementation project(':ignite-configuration-api') + implementation project(':ignite-configuration-system') implementation project(':ignite-raft-api') implementation project(':ignite-network') implementation project(':ignite-rocksdb-common') @@ -75,6 +76,7 @@ dependencies { testFixturesImplementation project(':ignite-core') testFixturesImplementation project(':ignite-network') testFixturesImplementation project(':ignite-raft-api') + testFixturesImplementation project(':ignite-configuration-system') testFixturesImplementation testFixtures(project(':ignite-configuration')) testFixturesImplementation testFixtures(project(':ignite-core')) testFixturesImplementation testFixtures(project(':ignite-metrics')) diff --git a/modules/raft/src/integrationTest/java/org/apache/ignite/internal/raft/ItLearnersTest.java b/modules/raft/src/integrationTest/java/org/apache/ignite/internal/raft/ItLearnersTest.java index 19575173ac9..2c12dd17613 100644 --- a/modules/raft/src/integrationTest/java/org/apache/ignite/internal/raft/ItLearnersTest.java +++ b/modules/raft/src/integrationTest/java/org/apache/ignite/internal/raft/ItLearnersTest.java @@ -51,6 +51,7 @@ import java.util.stream.IntStream; import java.util.stream.Stream; import org.apache.ignite.internal.configuration.ComponentWorkingDir; import org.apache.ignite.internal.configuration.RaftGroupOptionsConfigHelper; +import org.apache.ignite.internal.configuration.SystemLocalConfiguration; import org.apache.ignite.internal.configuration.testframework.ConfigurationExtension; import org.apache.ignite.internal.configuration.testframework.InjectConfiguration; import org.apache.ignite.internal.hlc.HybridClockImpl; @@ -107,6 +108,9 @@ public class ItLearnersTest extends IgniteAbstractTest { @InjectConfiguration private RaftConfiguration raftConfiguration; + @InjectConfiguration + private SystemLocalConfiguration systemLocalConfiguration; + private final List<RaftNode> nodes = new ArrayList<>(ADDRS.size()); /** Mock Raft node. */ @@ -131,7 +135,7 @@ public class ItLearnersTest extends IgniteAbstractTest { partitionsWorkDir.raftLogPath() ); - loza = TestLozaFactory.create(clusterService, raftConfiguration, new HybridClockImpl()); + loza = TestLozaFactory.create(clusterService, raftConfiguration, systemLocalConfiguration, new HybridClockImpl()); } String consistentId() { diff --git a/modules/raft/src/integrationTest/java/org/apache/ignite/internal/raft/ItLozaTest.java b/modules/raft/src/integrationTest/java/org/apache/ignite/internal/raft/ItLozaTest.java index 9d3a4bbef10..5c007b3e393 100644 --- a/modules/raft/src/integrationTest/java/org/apache/ignite/internal/raft/ItLozaTest.java +++ b/modules/raft/src/integrationTest/java/org/apache/ignite/internal/raft/ItLozaTest.java @@ -47,6 +47,7 @@ import java.util.concurrent.CompletableFuture; import java.util.function.Consumer; import org.apache.ignite.internal.configuration.ComponentWorkingDir; import org.apache.ignite.internal.configuration.RaftGroupOptionsConfigHelper; +import org.apache.ignite.internal.configuration.SystemLocalConfiguration; import org.apache.ignite.internal.configuration.testframework.ConfigurationExtension; import org.apache.ignite.internal.configuration.testframework.InjectConfiguration; import org.apache.ignite.internal.hlc.HybridClockImpl; @@ -157,7 +158,10 @@ public class ItLozaTest extends IgniteAbstractTest { * Tests that RaftGroupServiceImpl uses shared executor for retrying RaftGroupServiceImpl#sendWithRetry(). */ @Test - public void testRaftServiceUsingSharedExecutor(@InjectConfiguration RaftConfiguration raftConfiguration) throws Exception { + public void testRaftServiceUsingSharedExecutor( + @InjectConfiguration RaftConfiguration raftConfiguration, + @InjectConfiguration SystemLocalConfiguration systemLocalConfiguration + ) throws Exception { ClusterService spyService = spy(clusterService); MessagingService messagingServiceMock = spy(spyService.messagingService()); @@ -180,7 +184,7 @@ public class ItLozaTest extends IgniteAbstractTest { assertThat(partitionsLogStorageFactory.startAsync(componentContext), willCompleteSuccessfully()); - loza = TestLozaFactory.create(spyService, raftConfiguration, new HybridClockImpl()); + loza = TestLozaFactory.create(spyService, raftConfiguration, systemLocalConfiguration, new HybridClockImpl()); assertThat(loza.startAsync(componentContext), willCompleteSuccessfully()); @@ -217,7 +221,9 @@ public class ItLozaTest extends IgniteAbstractTest { @RepeatedTest(100) void testVolatileAndPersistentGroupsOnSameStripe( @InjectConfiguration("mock.logStripesCount=1") - RaftConfiguration raftConfiguration + RaftConfiguration raftConfiguration, + @InjectConfiguration + SystemLocalConfiguration systemLocalConfiguration ) throws Exception { ComponentWorkingDir partitionsWorkDir = new ComponentWorkingDir(workDir); @@ -230,7 +236,7 @@ public class ItLozaTest extends IgniteAbstractTest { assertThat(logStorageFactory.startAsync(componentContext), willCompleteSuccessfully()); - loza = TestLozaFactory.create(clusterService, raftConfiguration, new HybridClockImpl()); + loza = TestLozaFactory.create(clusterService, raftConfiguration, systemLocalConfiguration, new HybridClockImpl()); assertThat(loza.startAsync(componentContext), willCompleteSuccessfully()); @@ -305,7 +311,10 @@ public class ItLozaTest extends IgniteAbstractTest { } @Test - void destroysRaftNodeStorages(@InjectConfiguration RaftConfiguration raftConfiguration) throws Exception { + void destroysRaftNodeStorages( + @InjectConfiguration RaftConfiguration raftConfiguration, + @InjectConfiguration SystemLocalConfiguration systemLocalConfiguration + ) throws Exception { ComponentWorkingDir partitionsWorkDir = new ComponentWorkingDir(workDir); LogStorageFactory logStorageFactory = SharedLogStorageFactoryUtils.create( @@ -318,7 +327,7 @@ public class ItLozaTest extends IgniteAbstractTest { assertThat(logStorageFactory.startAsync(componentContext), willCompleteSuccessfully()); - loza = TestLozaFactory.create(clusterService, raftConfiguration, new HybridClockImpl()); + loza = TestLozaFactory.create(clusterService, raftConfiguration, systemLocalConfiguration, new HybridClockImpl()); assertThat(loza.startAsync(componentContext), willCompleteSuccessfully()); diff --git a/modules/raft/src/integrationTest/java/org/apache/ignite/internal/raft/ItRaftGroupServiceTest.java b/modules/raft/src/integrationTest/java/org/apache/ignite/internal/raft/ItRaftGroupServiceTest.java index eb0936187ad..d87f9dec1e6 100644 --- a/modules/raft/src/integrationTest/java/org/apache/ignite/internal/raft/ItRaftGroupServiceTest.java +++ b/modules/raft/src/integrationTest/java/org/apache/ignite/internal/raft/ItRaftGroupServiceTest.java @@ -44,6 +44,7 @@ import java.util.function.Function; import java.util.stream.Stream; import org.apache.ignite.internal.configuration.ComponentWorkingDir; import org.apache.ignite.internal.configuration.RaftGroupOptionsConfigHelper; +import org.apache.ignite.internal.configuration.SystemLocalConfiguration; import org.apache.ignite.internal.configuration.testframework.ConfigurationExtension; import org.apache.ignite.internal.configuration.testframework.InjectConfiguration; import org.apache.ignite.internal.hlc.HybridClockImpl; @@ -103,6 +104,9 @@ public class ItRaftGroupServiceTest extends IgniteAbstractTest { @InjectConfiguration private RaftConfiguration raftConfiguration; + @InjectConfiguration + private SystemLocalConfiguration systemLocalConfiguration; + @BeforeEach public void setUp(TestInfo testInfo) { for (int i = 0; i < NODES_CNT; i++) { @@ -314,6 +318,7 @@ public class ItRaftGroupServiceTest extends IgniteAbstractTest { this.loza = TestLozaFactory.create( clusterService, raftConfiguration, + systemLocalConfiguration, new HybridClockImpl() ); } diff --git a/modules/raft/src/integrationTest/java/org/apache/ignite/internal/raft/ItTruncateSuffixAndRestartTest.java b/modules/raft/src/integrationTest/java/org/apache/ignite/internal/raft/ItTruncateSuffixAndRestartTest.java index fe56e5d93ae..c39126c7aab 100644 --- a/modules/raft/src/integrationTest/java/org/apache/ignite/internal/raft/ItTruncateSuffixAndRestartTest.java +++ b/modules/raft/src/integrationTest/java/org/apache/ignite/internal/raft/ItTruncateSuffixAndRestartTest.java @@ -48,6 +48,7 @@ import java.util.concurrent.CompletableFuture; import java.util.function.Consumer; import org.apache.ignite.internal.close.ManuallyCloseable; import org.apache.ignite.internal.configuration.ComponentWorkingDir; +import org.apache.ignite.internal.configuration.SystemLocalConfiguration; import org.apache.ignite.internal.configuration.testframework.ConfigurationExtension; import org.apache.ignite.internal.configuration.testframework.InjectConfiguration; import org.apache.ignite.internal.failure.FailureManager; @@ -121,6 +122,9 @@ public class ItTruncateSuffixAndRestartTest extends BaseIgniteAbstractTest { @InjectConfiguration private RaftConfiguration raftConfiguration; + @InjectConfiguration + private SystemLocalConfiguration systemLocalConfiguration; + @InjectConfiguration private NetworkConfiguration networkConfiguration; @@ -201,7 +205,7 @@ public class ItTruncateSuffixAndRestartTest extends BaseIgniteAbstractTest { partitionsWorkDir = new ComponentWorkingDir(nodeDir); - raftMgr = TestLozaFactory.create(clusterSvc, raftConfiguration, hybridClock); + raftMgr = TestLozaFactory.create(clusterSvc, raftConfiguration, systemLocalConfiguration, hybridClock); assertThat(raftMgr.startAsync(new ComponentContext()), willCompleteSuccessfully()); cleanup.add(() -> assertThat(raftMgr.stopAsync(new ComponentContext()), willCompleteSuccessfully())); diff --git a/modules/raft/src/main/java/org/apache/ignite/internal/raft/Loza.java b/modules/raft/src/main/java/org/apache/ignite/internal/raft/Loza.java index 08896e4a5b7..d0b8e238365 100644 --- a/modules/raft/src/main/java/org/apache/ignite/internal/raft/Loza.java +++ b/modules/raft/src/main/java/org/apache/ignite/internal/raft/Loza.java @@ -29,6 +29,7 @@ import java.util.concurrent.ScheduledThreadPoolExecutor; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicBoolean; import java.util.function.BiConsumer; +import org.apache.ignite.internal.configuration.SystemLocalConfiguration; import org.apache.ignite.internal.failure.FailureManager; import org.apache.ignite.internal.hlc.HybridClock; import org.apache.ignite.internal.lang.IgniteInternalException; @@ -119,6 +120,7 @@ public class Loza implements RaftManager { ClusterService clusterService, MetricManager metricManager, RaftConfiguration raftConfiguration, + SystemLocalConfiguration systemLocalConfiguration, HybridClock hybridClock, RaftGroupEventsClientListener raftGroupEventsClientListener, FailureManager failureManager @@ -127,6 +129,7 @@ public class Loza implements RaftManager { clusterService, metricManager, raftConfiguration, + systemLocalConfiguration, hybridClock, raftGroupEventsClientListener, failureManager, @@ -141,6 +144,7 @@ public class Loza implements RaftManager { * @param clusterNetSvc Cluster network service. * @param metricManager Metric manager. * @param raftConfiguration Raft configuration. + * @param systemLocalConfiguration Local system configuration. * @param clock A hybrid logical clock. * @param failureManager Failure processor that is used to handle critical errors. * @param groupStoragesDestructionIntents Storage to persist {@link StorageDestructionIntent}s. @@ -150,6 +154,7 @@ public class Loza implements RaftManager { ClusterService clusterNetSvc, MetricManager metricManager, RaftConfiguration raftConfiguration, + SystemLocalConfiguration systemLocalConfiguration, HybridClock clock, RaftGroupEventsClientListener raftGroupEventsClientListener, FailureManager failureManager, @@ -160,6 +165,7 @@ public class Loza implements RaftManager { this.raftConfiguration = raftConfiguration; this.metricManager = metricManager; + // TODO: IGNITE-27081 Вот тут надо будет читать системную пропертю NodeOptions options = new NodeOptions(); options.setClock(clock); diff --git a/modules/raft/src/test/java/org/apache/ignite/internal/raft/LozaTest.java b/modules/raft/src/test/java/org/apache/ignite/internal/raft/LozaTest.java index 257a88a3580..d72f380ef37 100644 --- a/modules/raft/src/test/java/org/apache/ignite/internal/raft/LozaTest.java +++ b/modules/raft/src/test/java/org/apache/ignite/internal/raft/LozaTest.java @@ -23,6 +23,7 @@ import static org.junit.jupiter.api.Assertions.assertThrows; import static org.mockito.Mockito.mock; import java.util.Set; +import org.apache.ignite.internal.configuration.SystemLocalConfiguration; import org.apache.ignite.internal.configuration.testframework.ConfigurationExtension; import org.apache.ignite.internal.configuration.testframework.InjectConfiguration; import org.apache.ignite.internal.hlc.HybridClockImpl; @@ -57,6 +58,9 @@ public class LozaTest extends IgniteAbstractTest { @InjectConfiguration private RaftConfiguration raftConfiguration; + @InjectConfiguration + private SystemLocalConfiguration systemLocalConfiguration; + /** * Checks that the all API methods throw the exception ({@link NodeStoppingException}) * when Loza is closed. @@ -75,7 +79,7 @@ public class LozaTest extends IgniteAbstractTest { assertThat(logStorageFactory.startAsync(new ComponentContext()), willCompleteSuccessfully()); - Loza loza = TestLozaFactory.create(clusterNetSvc, raftConfiguration, new HybridClockImpl()); + Loza loza = TestLozaFactory.create(clusterNetSvc, raftConfiguration, systemLocalConfiguration, new HybridClockImpl()); assertThat(loza.startAsync(new ComponentContext()), willCompleteSuccessfully()); diff --git a/modules/raft/src/testFixtures/java/org/apache/ignite/internal/raft/TestLozaFactory.java b/modules/raft/src/testFixtures/java/org/apache/ignite/internal/raft/TestLozaFactory.java index 0d8c71c2299..0e982cab57c 100644 --- a/modules/raft/src/testFixtures/java/org/apache/ignite/internal/raft/TestLozaFactory.java +++ b/modules/raft/src/testFixtures/java/org/apache/ignite/internal/raft/TestLozaFactory.java @@ -17,6 +17,7 @@ package org.apache.ignite.internal.raft; +import org.apache.ignite.internal.configuration.SystemLocalConfiguration; import org.apache.ignite.internal.failure.NoOpFailureManager; import org.apache.ignite.internal.hlc.HybridClock; import org.apache.ignite.internal.metrics.NoOpMetricManager; @@ -38,15 +39,17 @@ public class TestLozaFactory { * Factory method for {@link Loza}. * * @param clusterNetSvc Cluster network service. - * @param raftConfiguration Raft configuration. + * @param raftConfig Raft configuration. + * @param systemLocalConfig Local system configuration. * @param clock A hybrid logical clock. */ public static Loza create( ClusterService clusterNetSvc, - RaftConfiguration raftConfiguration, + RaftConfiguration raftConfig, + SystemLocalConfiguration systemLocalConfig, HybridClock clock ) { - return create(clusterNetSvc, raftConfiguration, clock, new RaftGroupEventsClientListener()); + return create(clusterNetSvc, raftConfig, systemLocalConfig, clock, new RaftGroupEventsClientListener()); } /** @@ -54,12 +57,14 @@ public class TestLozaFactory { * * @param clusterNetSvc Cluster network service. * @param raftConfig Raft configuration. + * @param systemLocalConfig Local system configuration. * @param clock A hybrid logical clock. * @param raftGroupEventsClientListener Raft event listener. */ public static Loza create( ClusterService clusterNetSvc, RaftConfiguration raftConfig, + SystemLocalConfiguration systemLocalConfig, HybridClock clock, RaftGroupEventsClientListener raftGroupEventsClientListener ) { @@ -67,6 +72,7 @@ public class TestLozaFactory { clusterNetSvc, new NoOpMetricManager(), raftConfig, + systemLocalConfig, clock, raftGroupEventsClientListener, new NoOpFailureManager() @@ -78,6 +84,7 @@ public class TestLozaFactory { * * @param clusterNetSvc Cluster network service. * @param raftConfig Raft configuration. + * @param systemLocalConfig Local system configuration. * @param clock A hybrid logical clock. * @param raftGroupEventsClientListener Raft event listener. * @param groupStoragesDestructionIntents Storage to persist {@link StorageDestructionIntent}s. @@ -86,6 +93,7 @@ public class TestLozaFactory { public static Loza create( ClusterService clusterNetSvc, RaftConfiguration raftConfig, + SystemLocalConfiguration systemLocalConfig, HybridClock clock, RaftGroupEventsClientListener raftGroupEventsClientListener, GroupStoragesDestructionIntents groupStoragesDestructionIntents, @@ -95,6 +103,7 @@ public class TestLozaFactory { clusterNetSvc, new NoOpMetricManager(), raftConfig, + systemLocalConfig, clock, raftGroupEventsClientListener, new NoOpFailureManager(), diff --git a/modules/replicator/build.gradle b/modules/replicator/build.gradle index a6d6a8dab00..3b6c111ae8b 100644 --- a/modules/replicator/build.gradle +++ b/modules/replicator/build.gradle @@ -48,6 +48,7 @@ dependencies { integrationTestImplementation project(':ignite-cluster-management') integrationTestImplementation project(':ignite-metrics') integrationTestImplementation project(':ignite-runner') + integrationTestImplementation project(':ignite-configuration-system') integrationTestImplementation testFixtures(project) integrationTestImplementation testFixtures(project(':ignite-core')) integrationTestImplementation testFixtures(project(':ignite-configuration')) diff --git a/modules/replicator/src/integrationTest/java/org/apache/ignite/internal/replicator/ItPlacementDriverReplicaSideTest.java b/modules/replicator/src/integrationTest/java/org/apache/ignite/internal/replicator/ItPlacementDriverReplicaSideTest.java index b96704a9d7d..b3916cacbae 100644 --- a/modules/replicator/src/integrationTest/java/org/apache/ignite/internal/replicator/ItPlacementDriverReplicaSideTest.java +++ b/modules/replicator/src/integrationTest/java/org/apache/ignite/internal/replicator/ItPlacementDriverReplicaSideTest.java @@ -62,6 +62,7 @@ import java.util.stream.IntStream; import org.apache.ignite.internal.cluster.management.ClusterManagementGroupManager; import org.apache.ignite.internal.configuration.ComponentWorkingDir; import org.apache.ignite.internal.configuration.RaftGroupOptionsConfigHelper; +import org.apache.ignite.internal.configuration.SystemLocalConfiguration; import org.apache.ignite.internal.configuration.testframework.ConfigurationExtension; import org.apache.ignite.internal.configuration.testframework.InjectConfiguration; import org.apache.ignite.internal.failure.FailureProcessor; @@ -130,6 +131,9 @@ public class ItPlacementDriverReplicaSideTest extends IgniteAbstractTest { @InjectConfiguration("mock {retryTimeoutMillis=4000, responseTimeoutMillis=1000}") private RaftConfiguration raftConfiguration; + @InjectConfiguration + private SystemLocalConfiguration systemLocalConfiguration; + @InjectConfiguration private ReplicationConfiguration replicationConfiguration; @@ -201,6 +205,7 @@ public class ItPlacementDriverReplicaSideTest extends IgniteAbstractTest { var raftManager = TestLozaFactory.create( clusterService, raftConfiguration, + systemLocalConfiguration, clock, eventsClientListener ); diff --git a/modules/runner/src/integrationTest/java/org/apache/ignite/internal/configuration/ItDistributedConfigurationPropertiesTest.java b/modules/runner/src/integrationTest/java/org/apache/ignite/internal/configuration/ItDistributedConfigurationPropertiesTest.java index d32cfe3f114..b831248b2b7 100644 --- a/modules/runner/src/integrationTest/java/org/apache/ignite/internal/configuration/ItDistributedConfigurationPropertiesTest.java +++ b/modules/runner/src/integrationTest/java/org/apache/ignite/internal/configuration/ItDistributedConfigurationPropertiesTest.java @@ -115,7 +115,10 @@ public class ItDistributedConfigurationPropertiesTest extends BaseIgniteAbstract private static StorageConfiguration storageConfiguration; @InjectConfiguration - private static SystemDistributedConfiguration systemConfiguration; + private static SystemLocalConfiguration systemLocalConfiguration; + + @InjectConfiguration + private static SystemDistributedConfiguration systemDistributedConfiguration; /** * An emulation of an Ignite node, that only contains components necessary for tests. @@ -157,7 +160,8 @@ public class ItDistributedConfigurationPropertiesTest extends BaseIgniteAbstract Path workDir, NetworkAddress addr, List<NetworkAddress> memberAddrs, - RaftConfiguration raftConfiguration + RaftConfiguration raftConfiguration, + SystemLocalConfiguration systemLocalConfiguration ) { vaultManager = new VaultManager(new InMemoryVaultService()); @@ -181,6 +185,7 @@ public class ItDistributedConfigurationPropertiesTest extends BaseIgniteAbstract raftManager = TestLozaFactory.create( clusterService, raftConfiguration, + systemLocalConfiguration, clock, raftGroupEventsClientListener ); @@ -250,7 +255,7 @@ public class ItDistributedConfigurationPropertiesTest extends BaseIgniteAbstract clock, topologyAwareRaftGroupServiceFactory, metricManager, - systemConfiguration, + systemDistributedConfiguration, msRaftConfigurer, readOperationForCompactionTracker ); @@ -375,7 +380,8 @@ public class ItDistributedConfigurationPropertiesTest extends BaseIgniteAbstract workDir.resolve("firstNode"), firstNodeAddr, allNodes, - raftConfiguration + raftConfiguration, + systemLocalConfiguration ); secondNode = new Node( @@ -383,7 +389,8 @@ public class ItDistributedConfigurationPropertiesTest extends BaseIgniteAbstract workDir.resolve("secondNode"), secondNodeAddr, allNodes, - raftConfiguration + raftConfiguration, + systemLocalConfiguration ); Stream.of(firstNode, secondNode).parallel().forEach(Node::startUpToCmgManager); diff --git a/modules/runner/src/integrationTest/java/org/apache/ignite/internal/configuration/storage/ItDistributedConfigurationStorageTest.java b/modules/runner/src/integrationTest/java/org/apache/ignite/internal/configuration/storage/ItDistributedConfigurationStorageTest.java index 765daea938c..f7802e86a12 100644 --- a/modules/runner/src/integrationTest/java/org/apache/ignite/internal/configuration/storage/ItDistributedConfigurationStorageTest.java +++ b/modules/runner/src/integrationTest/java/org/apache/ignite/internal/configuration/storage/ItDistributedConfigurationStorageTest.java @@ -44,6 +44,7 @@ import org.apache.ignite.internal.components.SystemPropertiesNodeProperties; import org.apache.ignite.internal.configuration.ComponentWorkingDir; import org.apache.ignite.internal.configuration.RaftGroupOptionsConfigHelper; import org.apache.ignite.internal.configuration.SystemDistributedConfiguration; +import org.apache.ignite.internal.configuration.SystemLocalConfiguration; import org.apache.ignite.internal.configuration.testframework.ConfigurationExtension; import org.apache.ignite.internal.configuration.testframework.InjectConfiguration; import org.apache.ignite.internal.configuration.validation.TestConfigurationValidator; @@ -98,7 +99,10 @@ public class ItDistributedConfigurationStorageTest extends BaseIgniteAbstractTes private static StorageConfiguration storageConfiguration; @InjectConfiguration - private static SystemDistributedConfiguration systemConfiguration; + private static SystemLocalConfiguration systemLocalConfiguration; + + @InjectConfiguration + private static SystemDistributedConfiguration systemDistributedConfiguration; /** * An emulation of an Ignite node, that only contains components necessary for tests. @@ -155,6 +159,7 @@ public class ItDistributedConfigurationStorageTest extends BaseIgniteAbstractTes raftManager = TestLozaFactory.create( clusterService, raftConfiguration, + systemLocalConfiguration, clock, raftGroupEventsClientListener ); @@ -224,7 +229,7 @@ public class ItDistributedConfigurationStorageTest extends BaseIgniteAbstractTes clock, topologyAwareRaftGroupServiceFactory, metricManager, - systemConfiguration, + systemDistributedConfiguration, msRaftConfigurer, readOperationForCompactionTracker ); diff --git a/modules/runner/src/integrationTest/java/org/apache/ignite/internal/runner/app/ItIgniteNodeRestartTest.java b/modules/runner/src/integrationTest/java/org/apache/ignite/internal/runner/app/ItIgniteNodeRestartTest.java index 528a413d8d5..06442e87b5a 100644 --- a/modules/runner/src/integrationTest/java/org/apache/ignite/internal/runner/app/ItIgniteNodeRestartTest.java +++ b/modules/runner/src/integrationTest/java/org/apache/ignite/internal/runner/app/ItIgniteNodeRestartTest.java @@ -427,6 +427,7 @@ public class ItIgniteNodeRestartTest extends BaseIgniteRestartTest { var raftMgr = TestLozaFactory.create( clusterSvc, raftConfiguration, + systemConfiguration, hybridClock, raftGroupEventsClientListener ); diff --git a/modules/runner/src/main/java/org/apache/ignite/internal/app/IgniteImpl.java b/modules/runner/src/main/java/org/apache/ignite/internal/app/IgniteImpl.java index 13ee855702c..8e8cf60bf4d 100644 --- a/modules/runner/src/main/java/org/apache/ignite/internal/app/IgniteImpl.java +++ b/modules/runner/src/main/java/org/apache/ignite/internal/app/IgniteImpl.java @@ -685,6 +685,7 @@ public class IgniteImpl implements Ignite { clusterSvc, metricManager, raftConfiguration, + systemConfiguration, clock, raftGroupEventsClientListener, failureManager, diff --git a/modules/table/src/integrationTest/java/org/apache/ignite/distributed/ItLockTableTest.java b/modules/table/src/integrationTest/java/org/apache/ignite/distributed/ItLockTableTest.java index b9a5c7e585f..288997f179e 100644 --- a/modules/table/src/integrationTest/java/org/apache/ignite/distributed/ItLockTableTest.java +++ b/modules/table/src/integrationTest/java/org/apache/ignite/distributed/ItLockTableTest.java @@ -128,6 +128,7 @@ public class ItLockTableTest extends IgniteAbstractTest { testInfo, raftConfiguration, txConfiguration, + systemLocalConfiguration, systemDistributedConfiguration, workDir, 1, diff --git a/modules/table/src/integrationTest/java/org/apache/ignite/distributed/ItTxDistributedCleanupRecoveryTest.java b/modules/table/src/integrationTest/java/org/apache/ignite/distributed/ItTxDistributedCleanupRecoveryTest.java index 0deed062641..687607680eb 100644 --- a/modules/table/src/integrationTest/java/org/apache/ignite/distributed/ItTxDistributedCleanupRecoveryTest.java +++ b/modules/table/src/integrationTest/java/org/apache/ignite/distributed/ItTxDistributedCleanupRecoveryTest.java @@ -53,6 +53,7 @@ public class ItTxDistributedCleanupRecoveryTest extends TxAbstractTest { testInfo, raftConfiguration, txConfiguration, + systemLocalConfiguration, systemDistributedConfiguration, workDir, nodes(), diff --git a/modules/table/src/integrationTest/java/org/apache/ignite/distributed/ItTxDistributedTestSingleNodeNoCleanupMessage.java b/modules/table/src/integrationTest/java/org/apache/ignite/distributed/ItTxDistributedTestSingleNodeNoCleanupMessage.java index 9f49366cc50..37b861c508a 100644 --- a/modules/table/src/integrationTest/java/org/apache/ignite/distributed/ItTxDistributedTestSingleNodeNoCleanupMessage.java +++ b/modules/table/src/integrationTest/java/org/apache/ignite/distributed/ItTxDistributedTestSingleNodeNoCleanupMessage.java @@ -117,6 +117,7 @@ public class ItTxDistributedTestSingleNodeNoCleanupMessage extends TxAbstractTes testInfo, raftConfiguration, txConfiguration, + systemLocalConfiguration, systemDistributedConfiguration, workDir, nodes(), diff --git a/modules/table/src/integrationTest/java/org/apache/ignite/distributed/ItTxStateLocalMapTest.java b/modules/table/src/integrationTest/java/org/apache/ignite/distributed/ItTxStateLocalMapTest.java index 51a070c1251..8bd4c8615fd 100644 --- a/modules/table/src/integrationTest/java/org/apache/ignite/distributed/ItTxStateLocalMapTest.java +++ b/modules/table/src/integrationTest/java/org/apache/ignite/distributed/ItTxStateLocalMapTest.java @@ -30,6 +30,7 @@ import java.util.concurrent.atomic.AtomicReference; import java.util.function.Consumer; import java.util.stream.IntStream; import org.apache.ignite.internal.configuration.SystemDistributedConfiguration; +import org.apache.ignite.internal.configuration.SystemLocalConfiguration; import org.apache.ignite.internal.configuration.testframework.ConfigurationExtension; import org.apache.ignite.internal.configuration.testframework.InjectConfiguration; import org.apache.ignite.internal.hlc.HybridTimestamp; @@ -69,6 +70,9 @@ public class ItTxStateLocalMapTest extends IgniteAbstractTest { @InjectConfiguration private TransactionConfiguration txConfiguration; + @InjectConfiguration + private SystemLocalConfiguration systemLocalConfiguration; + @InjectConfiguration("mock.properties.txnLockRetryCount=\"0\"") private SystemDistributedConfiguration systemDistributedConfiguration; @@ -102,6 +106,7 @@ public class ItTxStateLocalMapTest extends IgniteAbstractTest { testInfo, raftConfig, txConfiguration, + systemLocalConfiguration, systemDistributedConfiguration, workDir, NODES, diff --git a/modules/table/src/integrationTest/java/org/apache/ignite/distributed/ReplicasSafeTimePropagationTest.java b/modules/table/src/integrationTest/java/org/apache/ignite/distributed/ReplicasSafeTimePropagationTest.java index 415d7d5fc61..7e6acb5442d 100644 --- a/modules/table/src/integrationTest/java/org/apache/ignite/distributed/ReplicasSafeTimePropagationTest.java +++ b/modules/table/src/integrationTest/java/org/apache/ignite/distributed/ReplicasSafeTimePropagationTest.java @@ -47,6 +47,7 @@ import org.apache.ignite.internal.catalog.CatalogService; import org.apache.ignite.internal.catalog.configuration.SchemaSynchronizationConfiguration; import org.apache.ignite.internal.components.SystemPropertiesNodeProperties; import org.apache.ignite.internal.configuration.ComponentWorkingDir; +import org.apache.ignite.internal.configuration.SystemLocalConfiguration; import org.apache.ignite.internal.configuration.testframework.ConfigurationExtension; import org.apache.ignite.internal.configuration.testframework.InjectConfiguration; import org.apache.ignite.internal.hlc.ClockService; @@ -105,6 +106,9 @@ public class ReplicasSafeTimePropagationTest extends IgniteAbstractTest { @InjectConfiguration("mock: { fsync: false }") private RaftConfiguration raftConfiguration; + @InjectConfiguration + private SystemLocalConfiguration systemLocalConfiguration; + @InjectConfiguration("mock: { maxClockSkewMillis: 500 }") private SchemaSynchronizationConfiguration schemaSynchronizationConfiguration; @@ -367,6 +371,7 @@ public class ReplicasSafeTimePropagationTest extends IgniteAbstractTest { raftManager = TestLozaFactory.create( clusterService, raftConfiguration, + systemLocalConfiguration, clock, new RaftGroupEventsClientListener() ); diff --git a/modules/table/src/testFixtures/java/org/apache/ignite/distributed/ItTxTestCluster.java b/modules/table/src/testFixtures/java/org/apache/ignite/distributed/ItTxTestCluster.java index aac8a847da2..991b2b5e5d7 100644 --- a/modules/table/src/testFixtures/java/org/apache/ignite/distributed/ItTxTestCluster.java +++ b/modules/table/src/testFixtures/java/org/apache/ignite/distributed/ItTxTestCluster.java @@ -79,6 +79,7 @@ import org.apache.ignite.internal.cluster.management.topology.api.LogicalTopolog import org.apache.ignite.internal.components.SystemPropertiesNodeProperties; import org.apache.ignite.internal.configuration.RaftGroupOptionsConfigHelper; import org.apache.ignite.internal.configuration.SystemDistributedConfiguration; +import org.apache.ignite.internal.configuration.SystemLocalConfiguration; import org.apache.ignite.internal.failure.NoOpFailureManager; import org.apache.ignite.internal.hlc.ClockService; import org.apache.ignite.internal.hlc.ClockWaiter; @@ -216,7 +217,9 @@ public class ItTxTestCluster { private final TransactionConfiguration txConfiguration; - private final SystemDistributedConfiguration systemCfg; + private final SystemLocalConfiguration systemLocalConfig; + + private final SystemDistributedConfiguration systemDistributedConfig; private final Path workDir; @@ -344,7 +347,8 @@ public class ItTxTestCluster { TestInfo testInfo, RaftConfiguration raftConfig, TransactionConfiguration txConfiguration, - SystemDistributedConfiguration systemCfg, + SystemLocalConfiguration systemLocalConfig, + SystemDistributedConfiguration systemDistributedConfig, Path workDir, int nodes, int replicas, @@ -354,7 +358,8 @@ public class ItTxTestCluster { ) { this.raftConfig = raftConfig; this.txConfiguration = txConfiguration; - this.systemCfg = systemCfg; + this.systemLocalConfig = systemLocalConfig; + this.systemDistributedConfig = systemDistributedConfig; this.workDir = workDir; this.nodes = nodes; this.replicas = replicas; @@ -462,6 +467,7 @@ public class ItTxTestCluster { var raftSrv = TestLozaFactory.create( clusterService, raftConfig, + systemLocalConfig, clock, new RaftGroupEventsClientListener() ); @@ -603,7 +609,7 @@ public class ItTxTestCluster { return new TxManagerImpl( node.name(), txConfiguration, - systemCfg, + systemDistributedConfig, clusterService.messagingService(), clusterService.topologyService(), replicaSvc, @@ -1321,7 +1327,7 @@ public class ItTxTestCluster { clientTxManager = new TxManagerImpl( "client", txConfiguration, - systemCfg, + systemDistributedConfig, client.messagingService(), client.topologyService(), clientReplicaSvc, diff --git a/modules/table/src/testFixtures/java/org/apache/ignite/internal/table/TxInfrastructureTest.java b/modules/table/src/testFixtures/java/org/apache/ignite/internal/table/TxInfrastructureTest.java index e709a0b6a7f..e2411867a9e 100644 --- a/modules/table/src/testFixtures/java/org/apache/ignite/internal/table/TxInfrastructureTest.java +++ b/modules/table/src/testFixtures/java/org/apache/ignite/internal/table/TxInfrastructureTest.java @@ -29,6 +29,7 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.ScheduledExecutorService; import org.apache.ignite.distributed.ItTxTestCluster; import org.apache.ignite.internal.configuration.SystemDistributedConfiguration; +import org.apache.ignite.internal.configuration.SystemLocalConfiguration; import org.apache.ignite.internal.configuration.testframework.ConfigurationExtension; import org.apache.ignite.internal.configuration.testframework.InjectConfiguration; import org.apache.ignite.internal.hlc.HybridClock; @@ -118,6 +119,9 @@ public abstract class TxInfrastructureTest extends IgniteAbstractTest { @InjectConfiguration("mock: { fsync: false }") protected RaftConfiguration raftConfiguration; + @InjectConfiguration + protected SystemLocalConfiguration systemLocalConfiguration; + @InjectConfiguration("mock.properties.txnLockRetryCount=\"0\"") protected SystemDistributedConfiguration systemDistributedConfiguration; @@ -177,6 +181,7 @@ public abstract class TxInfrastructureTest extends IgniteAbstractTest { testInfo, raftConfiguration, txConfiguration, + systemLocalConfiguration, systemDistributedConfiguration, workDir, nodes(),
