[ 
https://issues.apache.org/jira/browse/IGNITE-23863?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Mikhail Efremov reassigned IGNITE-23863:
----------------------------------------

    Assignee: Mikhail Efremov

> TopologyAwareRaftGroupService's onLeaderElected callbacks mechanism 
> refactoring
> -------------------------------------------------------------------------------
>
>                 Key: IGNITE-23863
>                 URL: https://issues.apache.org/jira/browse/IGNITE-23863
>             Project: Ignite
>          Issue Type: Improvement
>            Reporter: Mikhail Efremov
>            Assignee: Mikhail Efremov
>            Priority: Major
>              Labels: ignite-3
>
> *Description* 
> The main goal of the ticket is to improve the callbacks' sub-/unsubscribing 
> mechanism refactoring that will allow straightforward approach to register 
> and unrefister a custom {{onLeaderElected}} callbacks with the corresponding 
> request sending if there'is the only new one callback is registered or none 
> callbacs left after last deregistery.
> *Motivation*
> Now we're unable to register new callbacks in 
> {{TopologyAwareRaftGroupService}}. The only handler is 
> {{ServerEventHandler}}. But we definitely may want to add several more 
> callbacks (e.g. IGNITE-22036), so we should improve the callback 
> sub-/unsubscription mechanism.
> *Definition of done*
> # {{TopologyAwareRaftGroupService}} must be able to register more than one 
> callbacks on leader elected event.
> # When the only first subscription performed the subscription request should 
> be fired.
> # When the last callback is unsubscribed, then the unsubscription request 
> should be fired.
> # Code must be consistent for all callbacks handling processes.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to