[
https://issues.apache.org/jira/browse/IGNITE-18734?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Aleksandr Polovtcev updated IGNITE-18734:
-----------------------------------------
Description:
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 disappearedNode, LogicalTopologySnapshot
newTopology);
// Called when a Raft snapshot is applied. (no changes)
void onTopologyLeap(LogicalTopologySnapshot newTopology);
{code}
> 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
>
>
> 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 disappearedNode, LogicalTopologySnapshot
> newTopology);
> // Called when a Raft snapshot is applied. (no changes)
> void onTopologyLeap(LogicalTopologySnapshot newTopology);
> {code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)