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:
- 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.