[
https://issues.apache.org/jira/browse/IGNITE-18085?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Vyacheslav Koptilin updated IGNITE-18085:
-----------------------------------------
Labels: ignite-3 (was: )
> Implement logical topology events subscription and notification
> ---------------------------------------------------------------
>
> Key: IGNITE-18085
> URL: https://issues.apache.org/jira/browse/IGNITE-18085
> Project: Ignite
> Issue Type: Improvement
> Reporter: Alexander Lapin
> Assignee: Roman Puchkovskiy
> Priority: Major
> Labels: ignite-3
>
> h3. Motivation
> There are two types of typologies in Apache Ignite 3
> * Physical(Network) - nodes that are visible through network layer.
> * Logical - nodes that successfully passed the join procedure including
> local recovery and catch up phases, thus nodes that are ready to handle user
> load. More details in IEP-77
> In order to recalculate data nodes for specific distribution zone (see
> [IEP-97|https://cwiki.apache.org/confluence/display/IGNITE/IEP-97%3A+Distribution+Zones])
> it's required for distribution zone manager to receive notifications about
> logical topology updates along with logical topology version similar to ones
> we have in network topology:
> * onAppeared
> * onDisappeared
> h3. Definition of Done
> * It's possible to register listeners for logical topology
> onAppeared/onDisappeared events
> * Events are fired in a distributed manner to all recipients.
> * Each event produces ClusterNode.consistentId that was either added or
> removed and *logical topology version.* It's required to solve ABA problem on
> topology events, see https://issues.apache.org/jira/browse/IGNITE-18087 for
> more details.
> * Events are ordered within each Producer to Recipient communication channel.
> * It's valid to have multiple producers, e.g. during CMG leader change, thus
> it's valid to send same set of event twice but order still matters.
> * It's not valid to skip events, even in case of of CMG leader change.
> * Delivery guarantee is required.
> * Besides events, there should be a method to get current logical topology
> along with topology version.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)