[
https://issues.apache.org/jira/browse/IGNITE-8571?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Anton Kalashnikov updated IGNITE-8571:
--------------------------------------
Description:
Now we have only one way to change BLAT - manually update it via console.sh or
API.
We need to add the possibility to change it automatically. Adjust to current
topology.
So, I propose 2 new distributed parameters which would be responsible to tune
this feature.
1. Flag autoAdjustEnabled - true/false. Easy. Manual baseline control or auto
adjusting baseline.
2. autoAdjustTimeout - time which we would wait after the actual topology
change. But it would be reset if new discovery event happened. (node join/exit).
We need to change API next way:
1. org.apache.ignite.IgniteCluster
*Add*
isBaselineAutoAdjustEnabled()
setBaselineAutoAdjustEnabled(boolean enabled);
setBaselineAutoAdjustTimeout(long timeoutInMs);
Also, we need to ensure that all nodes would have the same
parameters(distributed parameters).
And we should be able to survive coordinator left during parameters changes.
When autoAdjustEnabled is true we should be block ability to manual baseline
change.
was:
Now we have only one way to change BLAT - manually update it via console.sh or
API.
We need to add the possibility to change it automatically. Adjust to current
topology.
So, I propose 3 new parameters which would be responsible to tune this feature.
1. Flag autoAdjustEnabled - true/false. Easy. Manual baseline control or auto
adjusting baseline.
2. autoAdjustTimeout - time which we would wait after the actual topology
change. But it would be reset if new discovery event happened. (node join/exit).
3. autoAdjustMaxTimeout - time which we would wait from the first dicovery
event in the chain. If we achieved it than we would change BLAT right away (no
matter were another node join/exit happened or not).
We need to change API next way:
1. org.apache.ignite.IgniteCluster
*Add*
isBaselineAutoAdjustEnabled()
setBaselineAutoAdjustEnabled(boolean enabled);
setBaselineAutoAdjustTimeout(long timeoutInMs);
setBaselineAutoAdjustMaxTimeout(long timeoutInMs);
2. org.apache.ignite.configuration.IgniteConfiguration
*Add*
IgniteConfiguration setBaselineAutoAdjustEnabled(boolean enabled);
IgniteConfiguration setBaselineAutoAdjustTimeout(long timeoutInMs);
IgniteConfiguration setBaselineAutoAdjustMaxTimeout(long timeoutInMs);
Also, we need to ensure that all nodes would have the same parameters.
And we should be able to survive coordinator left during parameters changes.
> Baseline auto-adjust feature
> ----------------------------
>
> Key: IGNITE-8571
> URL: https://issues.apache.org/jira/browse/IGNITE-8571
> Project: Ignite
> Issue Type: New Feature
> Reporter: Eduard Shangareev
> Assignee: Anton Kalashnikov
> Priority: Major
> Labels: IEP-4, Phase-2
> Fix For: 2.8
>
> Time Spent: 20m
> Remaining Estimate: 0h
>
> Now we have only one way to change BLAT - manually update it via console.sh
> or API.
> We need to add the possibility to change it automatically. Adjust to current
> topology.
> So, I propose 2 new distributed parameters which would be responsible to tune
> this feature.
> 1. Flag autoAdjustEnabled - true/false. Easy. Manual baseline control or auto
> adjusting baseline.
> 2. autoAdjustTimeout - time which we would wait after the actual topology
> change. But it would be reset if new discovery event happened. (node
> join/exit).
> We need to change API next way:
> 1. org.apache.ignite.IgniteCluster
> *Add*
> isBaselineAutoAdjustEnabled()
> setBaselineAutoAdjustEnabled(boolean enabled);
> setBaselineAutoAdjustTimeout(long timeoutInMs);
> Also, we need to ensure that all nodes would have the same
> parameters(distributed parameters).
> And we should be able to survive coordinator left during parameters changes.
> When autoAdjustEnabled is true we should be block ability to manual baseline
> change.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)