[ https://issues.apache.org/jira/browse/IGNITE-18734?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17686570#comment-17686570 ]
Roman Puchkovskiy commented on IGNITE-18734: -------------------------------------------- The patch looks good to me > Add verification-related methods to LogicalTopologyEventListener > ---------------------------------------------------------------- > > Key: IGNITE-18734 > URL: https://issues.apache.org/jira/browse/IGNITE-18734 > Project: Ignite > Issue Type: Improvement > Reporter: Aleksandr Polovtcev > Assignee: Aleksandr Polovtcev > Priority: Major > Labels: ignite-3 > Fix For: 3.0.0-beta2 > > Time Spent: 40m > Remaining Estimate: 0h > > When working on IGNITE-18554, it was discovered that current Logical Topology > API does not provide enough guarantees to implement the feature correctly. It > is proposed to rework this API in the following way: > {code:java} > public interface LogicalTopologyEventListener { > // Called after a node has been validated, but not yet joined the Logical > Topology. > void onNodeValidated(ClusterNode validatedNode); > // Called if a node has passed validation but left before joining the > cluster. > void onNodeInvalidated(ClusterNode invalidatedNode); > // Previously was called "onAppeared", renamed to be distinguishable from > the Physical Topology listener. > void onNodeJoined(ClusterNode joinedNode, LogicalTopologySnapshot > newTopology); > // Previously was called "onDisappeared", renamed to be distinguishable > from the Physical Topology listener. > void onNodeLeft(ClusterNode leftNode, LogicalTopologySnapshot > newTopology); > // Called when a Raft snapshot is applied. (no changes) > void onTopologyLeap(LogicalTopologySnapshot newTopology); > } > {code} > {{LogicalTopologyService}} interface should also be extended with a method > that will retrieve a list of validated nodes: > {code:java} > // Returns a list of validated nodes (including ones present in the Logical > Topology). > CompletableFuture<Set<ClusterNode>> validatedNodesOnLeader(); > {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)