kgusakov commented on code in PR #3931:
URL: https://github.com/apache/ignite-3/pull/3931#discussion_r1687185507


##########
modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/ZonePartitionReplicaListener.java:
##########
@@ -17,31 +17,103 @@
 
 package org.apache.ignite.internal.partition.replicator;
 
+import static 
org.apache.ignite.internal.util.CompletableFutures.nullCompletedFuture;
+
+import java.util.Map;
 import java.util.concurrent.CompletableFuture;
-import org.apache.ignite.internal.binarytuple.BinaryTupleBuilder;
+import java.util.concurrent.ConcurrentHashMap;
+import java.util.function.Function;
+import org.apache.ignite.internal.logger.IgniteLogger;
+import org.apache.ignite.internal.logger.Loggers;
 import org.apache.ignite.internal.raft.service.RaftCommandRunner;
+import org.apache.ignite.internal.raft.service.RaftGroupService;
 import org.apache.ignite.internal.replicator.ReplicaResult;
+import org.apache.ignite.internal.replicator.ReplicationGroupId;
+import org.apache.ignite.internal.replicator.TablePartitionId;
+import org.apache.ignite.internal.replicator.ZonePartitionId;
 import org.apache.ignite.internal.replicator.listener.ReplicaListener;
 import org.apache.ignite.internal.replicator.message.ReplicaRequest;
-import org.apache.ignite.internal.schema.BinaryRowImpl;
+import org.apache.ignite.internal.replicator.message.TableAware;
+import org.apache.ignite.internal.tx.message.TxFinishReplicaRequest;
+import org.apache.ignite.internal.tx.message.TxMessagesFactory;
 
 /**
  * Zone partition replica listener.
  */
 public class ZonePartitionReplicaListener implements ReplicaListener {
+    private static final TxMessagesFactory TX_MESSAGES_FACTORY = new 
TxMessagesFactory();
+
+    private static final IgniteLogger LOG = 
Loggers.forClass(ZonePartitionReplicaListener.class);
+
+    // TODO: https://issues.apache.org/jira/browse/IGNITE-22624 await for the 
table replica listener if needed.
+    private final Map<TablePartitionId, ReplicaListener> replicas = new 
ConcurrentHashMap<>();
+
+    private final RaftGroupService raftClient;
+
+    public ZonePartitionReplicaListener(RaftGroupService raftClient) {
+        this.raftClient = raftClient;
+    }
 
     @Override
     public CompletableFuture<ReplicaResult> invoke(ReplicaRequest request, 
String senderId) {
-        var res = new BinaryRowImpl(
-                1,
-                new BinaryTupleBuilder(2).appendLong(1).appendInt(-1).build());
-        return CompletableFuture.completedFuture(new ReplicaResult(
-                res,
-                CompletableFuture.completedFuture(res)));
+        if (!(request instanceof TableAware)) {
+            // TODO: https://issues.apache.org/jira/browse/IGNITE-22620 
implement ReplicaSafeTimeSyncRequest processing.
+            // TODO: https://issues.apache.org/jira/browse/IGNITE-22621 
implement zone-based transaction storage
+            //  and txn messages processing
+            if (request instanceof TxFinishReplicaRequest) {
+                TxFinishReplicaRequest txFinishReplicaRquest = 
(TxFinishReplicaRequest) request;

Review Comment:
   Fixed



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to