sashapolo commented on code in PR #1412:
URL: https://github.com/apache/ignite-3/pull/1412#discussion_r1043286853


##########
modules/cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/ClusterManagementGroupManager.java:
##########
@@ -125,6 +125,19 @@ public class ClusterManagementGroupManager implements 
IgniteComponent {
     /** Handles cluster initialization flow. */
     private final ClusterInitializer clusterInitializer;
 
+    /**
+     * Whether we attempted to complete join (i.e. send JoinReady command) on 
Ignite node start.
+     *
+     * <p>Such join completion always happens during a start, and it is always 
the last step during the startup process,
+     * to make sure a node joins the cluster when it's fully ready.
+     *
+     * <p>We need this flag to make sure we handle automatic rejoins 
correctly. If a short network hiccup happens, CMG leader
+     * might lose our node of sight, hence the node will be removed from 
physical and then from logical topologies. When
+     * the network connectivity is restored, the node will appear in the 
physical topology, after which it till try to
+     * rejoin the cluster. If such a 'rejoin' was carried unconditionally, it 
could happen before the first join during
+     * startup, so a not-yet-ready node could join the cluster. That's why we 
use this flag to only try such automatic

Review Comment:
   I think that the "That's why" sentence can be removed, it's kinda redundant



##########
modules/cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/ClusterManagementGroupManager.java:
##########
@@ -125,6 +125,19 @@ public class ClusterManagementGroupManager implements 
IgniteComponent {
     /** Handles cluster initialization flow. */
     private final ClusterInitializer clusterInitializer;
 
+    /**
+     * Whether we attempted to complete join (i.e. send JoinReady command) on 
Ignite node start.
+     *
+     * <p>Such join completion always happens during a start, and it is always 
the last step during the startup process,
+     * to make sure a node joins the cluster when it's fully ready.
+     *
+     * <p>We need this flag to make sure we handle automatic rejoins 
correctly. If a short network hiccup happens, CMG leader
+     * might lose our node of sight, hence the node will be removed from 
physical and then from logical topologies. When
+     * the network connectivity is restored, the node will appear in the 
physical topology, after which it till try to
+     * rejoin the cluster. If such a 'rejoin' was carried unconditionally, it 
could happen before the first join during

Review Comment:
   ```suggestion
        * rejoin the cluster. If such 'rejoin' was carried unconditionally, it 
could happen before the first join during
   ```



##########
modules/cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/ClusterManagementGroupManager.java:
##########
@@ -125,6 +125,19 @@ public class ClusterManagementGroupManager implements 
IgniteComponent {
     /** Handles cluster initialization flow. */
     private final ClusterInitializer clusterInitializer;
 
+    /**
+     * Whether we attempted to complete join (i.e. send JoinReady command) on 
Ignite node start.
+     *
+     * <p>Such join completion always happens during a start, and it is always 
the last step during the startup process,
+     * to make sure a node joins the cluster when it's fully ready.
+     *
+     * <p>We need this flag to make sure we handle automatic rejoins 
correctly. If a short network hiccup happens, CMG leader
+     * might lose our node of sight, hence the node will be removed from 
physical and then from logical topologies. When
+     * the network connectivity is restored, the node will appear in the 
physical topology, after which it till try to

Review Comment:
   ```suggestion
        * the network connectivity is restored, the node will appear in the 
physical topology, after which it will try to
   ```



##########
modules/network/src/main/java/org/apache/ignite/network/DefaultMessagingService.java:
##########
@@ -404,7 +404,8 @@ public void stop() {
      * Installs a predicate, it will be consulted with for each message being 
sent; when it returns {@code true}, the
      * message will be silently dropped (it will not be sent, the 
corresponding future will never complete).
      *
-     * @param predicate Predicate that will decide whether a message should be 
dropped.
+     * @param predicate Predicate that will decide whether a message should be 
dropped. Its first argument is the recipient
+     *     node consistent ID.

Review Comment:
   ```suggestion
        *     node's consistent ID.
   ```



-- 
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