[jira] [Updated] (IGNITE-18155) Update changePeersAsync method to support learners configuration

2022-11-21 Thread Kirill Tkalenko (Jira)


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

Kirill Tkalenko updated IGNITE-18155:
-
Fix Version/s: 3.0.0-beta2

> Update changePeersAsync method to support learners configuration
> 
>
> Key: IGNITE-18155
> URL: https://issues.apache.org/jira/browse/IGNITE-18155
> Project: Ignite
>  Issue Type: Task
>Reporter: Aleksandr Polovtcev
>Assignee: Aleksandr Polovtcev
>Priority: Major
>  Labels: ignite-3
> Fix For: 3.0.0-beta2
>
>  Time Spent: 2h 50m
>  Remaining Estimate: 0h
>
> Update {{RaftGroupService#changePeersAsync}} method to support changing 
> learners configuration. It should work the same way, we simply need to update 
> internal Raft configuration for learners as well as for peers. The new 
> signature will look like the following: 
> {code:java}
> /**
>  * @param peers New peers.
>  * @param learners New leaners.
>  * @param term Current known leader term.
>  * If real raft group term will be different - changePeers will 
> be skipped.
>  * @return A future.
>  */
> CompletableFuture changePeersAsync(List peers, List 
> learners, long term);
> {code}
> This also implies changing the signature of 
> {{RaftGroupEventsListener#onNewPeersConfigurationApplied}}:
> {code:java}
> /**
>  * Invoked on the leader, when new peers' configuration applied to raft group.
>  *
>  * @param peers list of peers, which was applied by raft group membership 
> configuration.
>  * @param learners list of learners, which was applied by raft group 
> membership configuration.
>  */
> void onNewPeersConfigurationApplied(List peers, List 
> learners);
> {code}



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


[jira] [Updated] (IGNITE-18155) Update changePeersAsync method to support learners configuration

2022-11-15 Thread Aleksandr Polovtcev (Jira)


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

Aleksandr Polovtcev updated IGNITE-18155:
-
Description: 
Update {{RaftGroupService#changePeersAsync}} method to support changing 
learners configuration. It should work the same way, we simply need to update 
internal Raft configuration for learners as well as for peers. The new 
signature will look like the following: 

{code:java}
/**
 * @param peers New peers.
 * @param learners New leaners.
 * @param term Current known leader term.
 * If real raft group term will be different - changePeers will be 
skipped.
 * @return A future.
 */
CompletableFuture changePeersAsync(List peers, List learners, 
long term);
{code}

This also implies changing the signature of 
{{RaftGroupEventsListener#onNewPeersConfigurationApplied}}:

{code:java}
/**
 * Invoked on the leader, when new peers' configuration applied to raft group.
 *
 * @param peers list of peers, which was applied by raft group membership 
configuration.
 * @param learners list of learners, which was applied by raft group membership 
configuration.
 */
void onNewPeersConfigurationApplied(List peers, List learners);
{code}


  was:
Update {{RaftGroupService#changePeersAsync}} method to support changing 
learners configuration, for example:

{code:java}
/**
 * @param peers New peers.
 * @param learners New leaners.
 * @param term Current known leader term.
 * If real raft group term will be different - changePeers will be 
skipped.
 * @return A future.
 */
CompletableFuture changePeersAsync(List peers, List learners, 
long term);
{code}

This also implies changing the signature of 
{{RaftGroupEventsListener#onNewPeersConfigurationApplied}}:

{code:java}
/**
 * Invoked on the leader, when new peers' configuration applied to raft group.
 *
 * @param peers list of peers, which was applied by raft group membership 
configuration.
 * @param learners list of learners, which was applied by raft group membership 
configuration.
 */
void onNewPeersConfigurationApplied(List peers, List learners);
{code}



> Update changePeersAsync method to support learners configuration
> 
>
> Key: IGNITE-18155
> URL: https://issues.apache.org/jira/browse/IGNITE-18155
> Project: Ignite
>  Issue Type: Task
>Reporter: Aleksandr Polovtcev
>Assignee: Aleksandr Polovtcev
>Priority: Major
>  Labels: ignite-3
>
> Update {{RaftGroupService#changePeersAsync}} method to support changing 
> learners configuration. It should work the same way, we simply need to update 
> internal Raft configuration for learners as well as for peers. The new 
> signature will look like the following: 
> {code:java}
> /**
>  * @param peers New peers.
>  * @param learners New leaners.
>  * @param term Current known leader term.
>  * If real raft group term will be different - changePeers will 
> be skipped.
>  * @return A future.
>  */
> CompletableFuture changePeersAsync(List peers, List 
> learners, long term);
> {code}
> This also implies changing the signature of 
> {{RaftGroupEventsListener#onNewPeersConfigurationApplied}}:
> {code:java}
> /**
>  * Invoked on the leader, when new peers' configuration applied to raft group.
>  *
>  * @param peers list of peers, which was applied by raft group membership 
> configuration.
>  * @param learners list of learners, which was applied by raft group 
> membership configuration.
>  */
> void onNewPeersConfigurationApplied(List peers, List 
> learners);
> {code}



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


[jira] [Updated] (IGNITE-18155) Update changePeersAsync method to support learners configuration

2022-11-15 Thread Aleksandr Polovtcev (Jira)


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

Aleksandr Polovtcev updated IGNITE-18155:
-
Description: 
Update {{RaftGroupService#changePeersAsync}} method to support changing 
learners configuration, for example:

{code:java}
/**
 * @param peers New peers.
 * @param learners New leaners.
 * @param term Current known leader term.
 * If real raft group term will be different - changePeers will be 
skipped.
 * @return A future.
 */
CompletableFuture changePeersAsync(List peers, List learners, 
long term);
{code}

This also implies changing the signature of 
{{RaftGroupEventsListener#onNewPeersConfigurationApplied}}:

{code:java}
/**
 * Invoked on the leader, when new peers' configuration applied to raft group.
 *
 * @param peers list of peers, which was applied by raft group membership 
configuration.
 * @param learners list of learners, which was applied by raft group membership 
configuration.
 */
void onNewPeersConfigurationApplied(List peers, List learners);
{code}


> Update changePeersAsync method to support learners configuration
> 
>
> Key: IGNITE-18155
> URL: https://issues.apache.org/jira/browse/IGNITE-18155
> Project: Ignite
>  Issue Type: Task
>Reporter: Aleksandr Polovtcev
>Assignee: Aleksandr Polovtcev
>Priority: Major
>  Labels: ignite-3
>
> Update {{RaftGroupService#changePeersAsync}} method to support changing 
> learners configuration, for example:
> {code:java}
> /**
>  * @param peers New peers.
>  * @param learners New leaners.
>  * @param term Current known leader term.
>  * If real raft group term will be different - changePeers will 
> be skipped.
>  * @return A future.
>  */
> CompletableFuture changePeersAsync(List peers, List 
> learners, long term);
> {code}
> This also implies changing the signature of 
> {{RaftGroupEventsListener#onNewPeersConfigurationApplied}}:
> {code:java}
> /**
>  * Invoked on the leader, when new peers' configuration applied to raft group.
>  *
>  * @param peers list of peers, which was applied by raft group membership 
> configuration.
>  * @param learners list of learners, which was applied by raft group 
> membership configuration.
>  */
> void onNewPeersConfigurationApplied(List peers, List 
> learners);
> {code}



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


[jira] [Updated] (IGNITE-18155) Update changePeersAsync method to support learners configuration

2022-11-15 Thread Aleksandr Polovtcev (Jira)


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

Aleksandr Polovtcev updated IGNITE-18155:
-
Labels: ignite-3  (was: )

> Update changePeersAsync method to support learners configuration
> 
>
> Key: IGNITE-18155
> URL: https://issues.apache.org/jira/browse/IGNITE-18155
> Project: Ignite
>  Issue Type: Task
>Reporter: Aleksandr Polovtcev
>Assignee: Aleksandr Polovtcev
>Priority: Major
>  Labels: ignite-3
>




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