You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
currently we have counter, that represents a count of tarantool instances on each tree node, calculated as sum of child node instances. to choose server as place for instance we go through tree by smallest counter. this is the reason why we can get unbalanced tree by instances on leaves. see example:
I suggest we use (capacity - counter) with the highest value. the parameter will show the available space for instances.
let's have a look at init step. firstly we need to calculate server (leafe) capacity: capacity_by_server = amount_of_instances / amount_of_servers (amount of leaves) -- maximum amount of instances for each server. another nodes have a capacity equals to sum of children capacity.
to put instance we need only tree steps: find server with the highest capacity, put the instance and recalculate capacity.
In the current workflow when in one of failure domains has 2 hosts, and another has 3 hosts instances on them will be distributed equally.
The text was updated successfully, but these errors were encountered: