You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by sa...@apache.org on 2025/04/14 06:53:45 UTC

(ignite-3) branch main updated: IGNITE-25108 Fix several different tests in case of enabled colocation. (#5620)

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

sanpwc pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


The following commit(s) were added to refs/heads/main by this push:
     new f482713b336 IGNITE-25108 Fix several different tests in case of enabled colocation. (#5620)
f482713b336 is described below

commit f482713b336287900c866a12527f8ddc17342b44
Author: Alexander Lapin <la...@gmail.com>
AuthorDate: Mon Apr 14 09:53:39 2025 +0300

    IGNITE-25108 Fix several different tests in case of enabled colocation. (#5620)
---
 .../ignite/internal/table/ItEstimatedSizeTest.java     |  2 +-
 .../ignite/internal/index/IndexBuildController.java    | 10 ++++++++++
 .../internal/index/IndexManagementUtilsTest.java       | 13 +++++++++----
 .../raftsnapshot/ItTableRaftSnapshotsTest.java         | 12 ++++++------
 .../internal/ItTruncateRaftLogAndRestartNodesTest.java | 18 +++++++++---------
 .../java/org/apache/ignite/internal/Cluster.java       | 16 ++++++++++------
 .../apache/ignite/internal/ReplicationGroupsUtils.java | 12 ++++++++++++
 .../tx/distributed/ItTransactionPrimaryChangeTest.java | 12 ++++++++----
 8 files changed, 65 insertions(+), 30 deletions(-)

diff --git a/modules/distribution-zones/src/integrationTest/java/org/apache/ignite/internal/table/ItEstimatedSizeTest.java b/modules/distribution-zones/src/integrationTest/java/org/apache/ignite/internal/table/ItEstimatedSizeTest.java
index 0f347ab4e3a..3a0eb8372e1 100644
--- a/modules/distribution-zones/src/integrationTest/java/org/apache/ignite/internal/table/ItEstimatedSizeTest.java
+++ b/modules/distribution-zones/src/integrationTest/java/org/apache/ignite/internal/table/ItEstimatedSizeTest.java
@@ -193,7 +193,7 @@ public class ItEstimatedSizeTest extends ClusterPerTestIntegrationTest {
 
         if (enabledColocation()) {
             return entriesFuture.join().stream()
-                    .filter(entry -> extractZonePartitionId(entry.key(), STABLE_ASSIGNMENTS_PREFIX_BYTES)
+                    .filter(entry -> extractZonePartitionId(entry.key(), ZoneRebalanceUtil.STABLE_ASSIGNMENTS_PREFIX_BYTES)
                                     .zoneId() == zoneId)
                     .map(entry -> Assignments.fromBytes(entry.value()))
                     .filter(Objects::nonNull)
diff --git a/modules/index/src/main/java/org/apache/ignite/internal/index/IndexBuildController.java b/modules/index/src/main/java/org/apache/ignite/internal/index/IndexBuildController.java
index aeb6c436180..ba5e6c897f1 100644
--- a/modules/index/src/main/java/org/apache/ignite/internal/index/IndexBuildController.java
+++ b/modules/index/src/main/java/org/apache/ignite/internal/index/IndexBuildController.java
@@ -54,6 +54,8 @@ import org.apache.ignite.internal.failure.FailureProcessor;
 import org.apache.ignite.internal.failure.FailureType;
 import org.apache.ignite.internal.hlc.ClockService;
 import org.apache.ignite.internal.hlc.HybridTimestamp;
+import org.apache.ignite.internal.logger.IgniteLogger;
+import org.apache.ignite.internal.logger.Loggers;
 import org.apache.ignite.internal.network.ClusterService;
 import org.apache.ignite.internal.placementdriver.PlacementDriver;
 import org.apache.ignite.internal.placementdriver.PrimaryReplicaAwaitTimeoutException;
@@ -89,6 +91,8 @@ import org.apache.ignite.network.ClusterNode;
  * node restart but after {@link ReplicaMeta#getExpirationTime()}.</p>
  */
 class IndexBuildController implements ManuallyCloseable {
+    private static final IgniteLogger LOG = Loggers.forClass(IndexBuildController.class);
+
     private final IndexBuilder indexBuilder;
 
     private final IndexManager indexManager;
@@ -344,6 +348,9 @@ class IndexBuildController implements ManuallyCloseable {
     ) {
         inBusyLock(busyLock, () -> {
             if (isLeaseExpired(replicaMeta, buildAttemptTimestamp)) {
+                // TODO IGNITE-22522 Remove logging
+                LOG.info("Lease has expired (on new primary), stopping build index process [groupId={}, localNode={},"
+                        + " primaryReplica={}.", primaryReplicaId, localNode(), replicaMeta);
                 stopBuildingIndexesIfPrimaryExpired(primaryReplicaId);
 
                 return;
@@ -397,6 +404,9 @@ class IndexBuildController implements ManuallyCloseable {
 
         inBusyLock(busyLock, () -> {
             if (isLeaseExpired(replicaMeta, buildAttemptTimestamp)) {
+                // TODO IGNITE-22522 Remove logging
+                LOG.info("Lease has expired, stopping build index process [groupId={}, localNode={}, primaryReplica={}.",
+                        primaryReplicaId, localNode(), replicaMeta);
                 stopBuildingIndexesIfPrimaryExpired(primaryReplicaId);
 
                 return;
diff --git a/modules/index/src/test/java/org/apache/ignite/internal/index/IndexManagementUtilsTest.java b/modules/index/src/test/java/org/apache/ignite/internal/index/IndexManagementUtilsTest.java
index a4a22713d3b..0496040e277 100644
--- a/modules/index/src/test/java/org/apache/ignite/internal/index/IndexManagementUtilsTest.java
+++ b/modules/index/src/test/java/org/apache/ignite/internal/index/IndexManagementUtilsTest.java
@@ -33,6 +33,7 @@ import static org.apache.ignite.internal.index.IndexManagementUtils.toPartitionB
 import static org.apache.ignite.internal.index.TestIndexManagementUtils.LOCAL_NODE;
 import static org.apache.ignite.internal.index.TestIndexManagementUtils.NODE_NAME;
 import static org.apache.ignite.internal.index.TestIndexManagementUtils.newPrimaryReplicaMeta;
+import static org.apache.ignite.internal.lang.IgniteSystemProperties.enabledColocation;
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertFalse;
 import static org.junit.jupiter.api.Assertions.assertTrue;
@@ -52,7 +53,9 @@ import org.apache.ignite.internal.network.ClusterNodeImpl;
 import org.apache.ignite.internal.network.ClusterService;
 import org.apache.ignite.internal.network.TopologyService;
 import org.apache.ignite.internal.placementdriver.ReplicaMeta;
+import org.apache.ignite.internal.replicator.PartitionGroupId;
 import org.apache.ignite.internal.replicator.TablePartitionId;
+import org.apache.ignite.internal.replicator.ZonePartitionId;
 import org.apache.ignite.internal.testframework.BaseIgniteAbstractTest;
 import org.apache.ignite.internal.util.IgniteSpinBusyLock;
 import org.apache.ignite.network.ClusterNode;
@@ -114,7 +117,9 @@ public class IndexManagementUtilsTest extends BaseIgniteAbstractTest {
 
     @Test
     void testIsPrimaryReplicaFalse() {
-        TablePartitionId replicaGroupId = new TablePartitionId(1, 0);
+        PartitionGroupId groupId = enabledColocation()
+                ? new ZonePartitionId(0, 0)
+                : new TablePartitionId(1, 0);
 
         ClusterNode otherNode = new ClusterNodeImpl(randomUUID(), NODE_NAME + "-other", mock(NetworkAddress.class));
 
@@ -125,9 +130,9 @@ public class IndexManagementUtilsTest extends BaseIgniteAbstractTest {
         HybridTimestamp startTime0 = now;
         HybridTimestamp startTime1 = now.addPhysicalTime(-dayInMillis);
 
-        ReplicaMeta replicaMeta0 = newPrimaryReplicaMeta(otherNode, replicaGroupId, startTime0, startTime0.addPhysicalTime(dayInMillis));
-        ReplicaMeta replicaMeta1 = newPrimaryReplicaMeta(LOCAL_NODE, replicaGroupId, startTime1, startTime1.addPhysicalTime(hourInMillis));
-        ReplicaMeta replicaMeta2 = newPrimaryReplicaMeta(LOCAL_NODE, replicaGroupId, now, now);
+        ReplicaMeta replicaMeta0 = newPrimaryReplicaMeta(otherNode, groupId, startTime0, startTime0.addPhysicalTime(dayInMillis));
+        ReplicaMeta replicaMeta1 = newPrimaryReplicaMeta(LOCAL_NODE, groupId, startTime1, startTime1.addPhysicalTime(hourInMillis));
+        ReplicaMeta replicaMeta2 = newPrimaryReplicaMeta(LOCAL_NODE, groupId, now, now);
 
         assertFalse(isPrimaryReplica(replicaMeta0, LOCAL_NODE, clock.now()));
         assertFalse(isPrimaryReplica(replicaMeta1, LOCAL_NODE, clock.now()));
diff --git a/modules/raft/src/integrationTest/java/org/apache/ignite/internal/raftsnapshot/ItTableRaftSnapshotsTest.java b/modules/raft/src/integrationTest/java/org/apache/ignite/internal/raftsnapshot/ItTableRaftSnapshotsTest.java
index b5e15b0ba33..c251e26b53d 100644
--- a/modules/raft/src/integrationTest/java/org/apache/ignite/internal/raftsnapshot/ItTableRaftSnapshotsTest.java
+++ b/modules/raft/src/integrationTest/java/org/apache/ignite/internal/raftsnapshot/ItTableRaftSnapshotsTest.java
@@ -72,7 +72,7 @@ import org.apache.ignite.internal.partition.replicator.raft.snapshot.incoming.In
 import org.apache.ignite.internal.placementdriver.ReplicaMeta;
 import org.apache.ignite.internal.raft.server.RaftServer;
 import org.apache.ignite.internal.raft.server.impl.JraftServerImpl;
-import org.apache.ignite.internal.replicator.TablePartitionId;
+import org.apache.ignite.internal.replicator.ReplicationGroupId;
 import org.apache.ignite.internal.replicator.command.SafeTimeSyncCommand;
 import org.apache.ignite.internal.storage.MvPartitionStorage;
 import org.apache.ignite.internal.storage.pagememory.PersistentPageMemoryStorageEngine;
@@ -388,19 +388,19 @@ class ItTableRaftSnapshotsTest extends ClusterPerTestIntegrationTest {
      * Causes a RAFT snapshot to be taken on the RAFT leader of the sole table partition that exists in the cluster.
      */
     private void doSnapshotOnSolePartitionLeader(int expectedLeaderNodeIndex, boolean forced) throws Exception {
-        TablePartitionId tablePartitionId = cluster.solePartitionId();
+        ReplicationGroupId replicationGroupId = cluster.solePartitionId();
 
-        doSnapshotOn(tablePartitionId, expectedLeaderNodeIndex, forced);
+        doSnapshotOn(replicationGroupId, expectedLeaderNodeIndex, forced);
     }
 
     /**
      * Takes a RAFT snapshot on the leader of the RAFT group corresponding to the given table partition.
      */
-    private void doSnapshotOn(TablePartitionId tablePartitionId, int expectedLeaderNodeIndex, boolean forced) throws Exception {
-        RaftGroupService raftGroupService = cluster.leaderServiceFor(tablePartitionId);
+    private void doSnapshotOn(ReplicationGroupId replicationGroupId, int expectedLeaderNodeIndex, boolean forced) throws Exception {
+        RaftGroupService raftGroupService = cluster.leaderServiceFor(replicationGroupId);
 
         assertThat(
-                "Unexpected leadership change on group: " + tablePartitionId,
+                "Unexpected leadership change on group: " + replicationGroupId,
                 raftGroupService.getServerId().getConsistentId(), is(cluster.node(expectedLeaderNodeIndex).name())
         );
 
diff --git a/modules/runner/src/integrationTest/java/org/apache/ignite/internal/ItTruncateRaftLogAndRestartNodesTest.java b/modules/runner/src/integrationTest/java/org/apache/ignite/internal/ItTruncateRaftLogAndRestartNodesTest.java
index ef3112b8c62..f4ca3a0d2e8 100644
--- a/modules/runner/src/integrationTest/java/org/apache/ignite/internal/ItTruncateRaftLogAndRestartNodesTest.java
+++ b/modules/runner/src/integrationTest/java/org/apache/ignite/internal/ItTruncateRaftLogAndRestartNodesTest.java
@@ -54,7 +54,7 @@ import org.apache.ignite.internal.manager.ComponentContext;
 import org.apache.ignite.internal.raft.storage.LogStorageFactory;
 import org.apache.ignite.internal.raft.storage.impl.IgniteJraftServiceFactory;
 import org.apache.ignite.internal.raft.util.SharedLogStorageFactoryUtils;
-import org.apache.ignite.internal.replicator.TablePartitionId;
+import org.apache.ignite.internal.replicator.ReplicationGroupId;
 import org.apache.ignite.internal.schema.BinaryRow;
 import org.apache.ignite.internal.schema.Column;
 import org.apache.ignite.internal.schema.SchemaDescriptor;
@@ -169,14 +169,14 @@ public class ItTruncateRaftLogAndRestartNodesTest extends ClusterPerTestIntegrat
         }
     }
 
-    private NodeImpl raftNodeImpl(int nodeIndex, TablePartitionId tablePartitionId) {
+    private NodeImpl raftNodeImpl(int nodeIndex, ReplicationGroupId replicationGroupId) {
         NodeImpl[] node = {null};
 
         igniteImpl(nodeIndex).raftManager().forEach((raftNodeId, raftGroupService) -> {
-            if (tablePartitionId.equals(raftNodeId.groupId())) {
+            if (replicationGroupId.equals(raftNodeId.groupId())) {
                 assertNull(
                         node[0],
-                        String.format("NodeImpl already found: [nodeIndex=%s, tablePartitionId=%s]", nodeIndex, tablePartitionId)
+                        String.format("NodeImpl already found: [nodeIndex=%s, replicationGroupId=%s]", nodeIndex, replicationGroupId)
                 );
 
                 node[0] = (NodeImpl) raftGroupService.getRaftNode();
@@ -185,7 +185,7 @@ public class ItTruncateRaftLogAndRestartNodesTest extends ClusterPerTestIntegrat
 
         NodeImpl res = node[0];
 
-        assertNotNull(res, String.format("Can't find NodeImpl: [nodeIndex=%s, tablePartitionId=%s]", nodeIndex, tablePartitionId));
+        assertNotNull(res, String.format("Can't find NodeImpl: [nodeIndex=%s, replicationGroupId=%s]", nodeIndex, replicationGroupId));
 
         return res;
     }
@@ -194,7 +194,7 @@ public class ItTruncateRaftLogAndRestartNodesTest extends ClusterPerTestIntegrat
      * Creates and prepares {@link TestLogStorageFactory} for {@link TestLogStorageFactory#createLogStorage} creation after the
      * corresponding node is stopped, so that there are no errors.
      */
-    private TestLogStorageFactory createTestLogStorageFactory(int nodeIndex, TablePartitionId tablePartitionId) {
+    private TestLogStorageFactory createTestLogStorageFactory(int nodeIndex, ReplicationGroupId replicationGroupId) {
         IgniteImpl ignite = igniteImpl(nodeIndex);
 
         LogStorageFactory logStorageFactory = SharedLogStorageFactoryUtils.create(
@@ -202,16 +202,16 @@ public class ItTruncateRaftLogAndRestartNodesTest extends ClusterPerTestIntegrat
                 ignite.partitionsWorkDir().raftLogPath()
         );
 
-        NodeImpl nodeImpl = raftNodeImpl(nodeIndex, tablePartitionId);
+        NodeImpl nodeImpl = raftNodeImpl(nodeIndex, replicationGroupId);
 
         return new TestLogStorageFactory(logStorageFactory, nodeImpl.getOptions(), nodeImpl.getRaftOptions());
     }
 
-    private void awaitMajority(TablePartitionId tablePartitionId) {
+    private void awaitMajority(ReplicationGroupId replicationGroupId) {
         IgniteImpl ignite = unwrapIgniteImpl(cluster.aliveNode());
 
         assertThat(
-                ignite.placementDriver().awaitPrimaryReplica(tablePartitionId, ignite.clock().now(), 10, TimeUnit.SECONDS),
+                ignite.placementDriver().awaitPrimaryReplica(replicationGroupId, ignite.clock().now(), 10, TimeUnit.SECONDS),
                 willCompleteSuccessfully()
         );
     }
diff --git a/modules/runner/src/testFixtures/java/org/apache/ignite/internal/Cluster.java b/modules/runner/src/testFixtures/java/org/apache/ignite/internal/Cluster.java
index e0702dd193f..f58f09e4ffc 100644
--- a/modules/runner/src/testFixtures/java/org/apache/ignite/internal/Cluster.java
+++ b/modules/runner/src/testFixtures/java/org/apache/ignite/internal/Cluster.java
@@ -20,7 +20,10 @@ package org.apache.ignite.internal;
 import static java.util.Collections.nCopies;
 import static java.util.stream.Collectors.joining;
 import static java.util.stream.Collectors.toList;
+import static org.apache.ignite.internal.ReplicationGroupsUtils.tablePartitionIds;
+import static org.apache.ignite.internal.ReplicationGroupsUtils.zonePartitionIds;
 import static org.apache.ignite.internal.TestWrappers.unwrapIgniteImpl;
+import static org.apache.ignite.internal.lang.IgniteSystemProperties.enabledColocation;
 import static org.apache.ignite.internal.testframework.IgniteTestUtils.waitForCondition;
 import static org.apache.ignite.internal.testframework.matchers.CompletableFutureMatcher.willCompleteSuccessfully;
 import static org.apache.ignite.internal.testframework.matchers.CompletableFutureMatcher.willSucceedIn;
@@ -61,7 +64,6 @@ import org.apache.ignite.internal.network.NetworkMessage;
 import org.apache.ignite.internal.raft.RaftNodeId;
 import org.apache.ignite.internal.raft.server.impl.JraftServerImpl;
 import org.apache.ignite.internal.replicator.ReplicationGroupId;
-import org.apache.ignite.internal.replicator.TablePartitionId;
 import org.apache.ignite.internal.testframework.TestIgnitionManager;
 import org.apache.ignite.raft.jraft.RaftGroupService;
 import org.apache.ignite.raft.jraft.Status;
@@ -709,15 +711,17 @@ public class Cluster {
     }
 
     /**
-     * Returns the ID of the sole table partition that exists in the cluster or throws if there are less than one
+     * Returns the ID of the sole partition that exists in the cluster or throws if there are less than one
      * or more than one partitions.
      */
-    public TablePartitionId solePartitionId() {
-        List<TablePartitionId> tablePartitionIds = ReplicationGroupsUtils.tablePartitionIds(unwrapIgniteImpl(aliveNode()));
+    public ReplicationGroupId solePartitionId() {
+        List<? extends ReplicationGroupId> replicationGroupIds = enabledColocation()
+                ? zonePartitionIds(unwrapIgniteImpl(aliveNode()))
+                : tablePartitionIds(unwrapIgniteImpl(aliveNode()));
 
-        assertThat(tablePartitionIds.size(), is(1));
+        assertThat(replicationGroupIds.size(), is(1));
 
-        return tablePartitionIds.get(0);
+        return replicationGroupIds.get(0);
     }
 
     /**
diff --git a/modules/runner/src/testFixtures/java/org/apache/ignite/internal/ReplicationGroupsUtils.java b/modules/runner/src/testFixtures/java/org/apache/ignite/internal/ReplicationGroupsUtils.java
index 56e667d2c1c..db2959fc5d5 100644
--- a/modules/runner/src/testFixtures/java/org/apache/ignite/internal/ReplicationGroupsUtils.java
+++ b/modules/runner/src/testFixtures/java/org/apache/ignite/internal/ReplicationGroupsUtils.java
@@ -23,6 +23,7 @@ import java.util.List;
 import org.apache.ignite.internal.app.IgniteImpl;
 import org.apache.ignite.internal.raft.RaftNodeId;
 import org.apache.ignite.internal.replicator.TablePartitionId;
+import org.apache.ignite.internal.replicator.ZonePartitionId;
 
 /**
  * Utilities used to obtain replication groups from a running Ignite instance.
@@ -38,4 +39,15 @@ public class ReplicationGroupsUtils {
                 .map(TablePartitionId.class::cast)
                 .collect(toList());
     }
+
+    /**
+     * Returns the IDs of all zone partitions that exist on the given node.
+     */
+    public static List<ZonePartitionId> zonePartitionIds(IgniteImpl node) {
+        return node.raftManager().localNodes().stream()
+                .map(RaftNodeId::groupId)
+                .filter(ZonePartitionId.class::isInstance)
+                .map(ZonePartitionId.class::cast)
+                .collect(toList());
+    }
 }
diff --git a/modules/transactions/src/integrationTest/java/org/apache/ignite/tx/distributed/ItTransactionPrimaryChangeTest.java b/modules/transactions/src/integrationTest/java/org/apache/ignite/tx/distributed/ItTransactionPrimaryChangeTest.java
index 9ddb2eae67f..0dff5a3a023 100644
--- a/modules/transactions/src/integrationTest/java/org/apache/ignite/tx/distributed/ItTransactionPrimaryChangeTest.java
+++ b/modules/transactions/src/integrationTest/java/org/apache/ignite/tx/distributed/ItTransactionPrimaryChangeTest.java
@@ -22,6 +22,7 @@ import static org.apache.ignite.internal.TestDefaultProfilesNames.DEFAULT_AIPERS
 import static org.apache.ignite.internal.TestWrappers.unwrapIgniteImpl;
 import static org.apache.ignite.internal.TestWrappers.unwrapInternalTransaction;
 import static org.apache.ignite.internal.TestWrappers.unwrapTableImpl;
+import static org.apache.ignite.internal.lang.IgniteSystemProperties.enabledColocation;
 import static org.apache.ignite.internal.sql.engine.util.SqlTestUtils.executeUpdate;
 import static org.apache.ignite.internal.testframework.matchers.CompletableFutureMatcher.willCompleteSuccessfully;
 import static org.apache.ignite.internal.tx.test.ItTransactionTestUtils.waitAndGetPrimaryReplica;
@@ -37,6 +38,7 @@ import org.apache.ignite.internal.TestWrappers;
 import org.apache.ignite.internal.app.IgniteImpl;
 import org.apache.ignite.internal.partition.replicator.network.command.UpdateCommand;
 import org.apache.ignite.internal.replicator.TablePartitionId;
+import org.apache.ignite.internal.replicator.ZonePartitionId;
 import org.apache.ignite.internal.table.NodeUtils;
 import org.apache.ignite.internal.table.TableImpl;
 import org.apache.ignite.raft.jraft.rpc.WriteActionRequest;
@@ -110,9 +112,11 @@ public class ItTransactionPrimaryChangeTest extends ClusterPerTestIntegrationTes
 
         int partId = 0;
 
-        var tblReplicationGrp = new TablePartitionId(tbl.tableId(), partId);
+        var replicationGrp = enabledColocation()
+                ? new ZonePartitionId(tbl.zoneId(), partId)
+                : new TablePartitionId(tbl.tableId(), partId);
 
-        String leaseholder = waitAndGetPrimaryReplica(unwrapIgniteImpl(node(0)), tblReplicationGrp).getLeaseholder();
+        String leaseholder = waitAndGetPrimaryReplica(unwrapIgniteImpl(node(0)), replicationGrp).getLeaseholder();
 
         IgniteImpl firstLeaseholderNode = findNodeByName(leaseholder);
 
@@ -137,7 +141,7 @@ public class ItTransactionPrimaryChangeTest extends ClusterPerTestIntegrationTes
             if (msg instanceof WriteActionRequest) {
                 WriteActionRequest writeActionRequest = (WriteActionRequest) msg;
 
-                if (tblReplicationGrp.toString().equals(writeActionRequest.groupId())
+                if (replicationGrp.toString().equals(writeActionRequest.groupId())
                         && writeActionRequest.deserializedCommand() instanceof UpdateCommand
                         && !fullTxReplicationAttemptFuture.isDone()) {
                     UpdateCommand updateCommand = (UpdateCommand) writeActionRequest.deserializedCommand();
@@ -165,7 +169,7 @@ public class ItTransactionPrimaryChangeTest extends ClusterPerTestIntegrationTes
             // Changing the primary.
             NodeUtils.transferPrimary(
                     cluster.runningNodes().map(TestWrappers::unwrapIgniteImpl).collect(toList()),
-                    tblReplicationGrp,
+                    replicationGrp,
                     txCrdNode.name()
             );