The current balancing strategy spreading objects between schedulers is a simple round robin.
This is sufficient for configurations with homogeneous pack sizes, but with heterogeneous configuration with host/service groups of different sizes, complex service dependencies or large business rules, this can result sometimes in a greatly unbalanced dispatching.
This patch introduce a routine that selects the scheduler managing the lowest amount of objects for each pack. The result is a more evenly balanced load across the schedulers.
Also, modifies the behavior of service_overrides property when overriding a parameter for an unknown service. The previous behavior raised an error. The new one only raises a warning. This is way more convenient when dealing with portion of configuration that are enabled or disabled.
The current balancing strategy spreading objects between schedulers is a simple round robin.
This is sufficient for configurations with homogeneous pack sizes, but with heterogeneous configuration with host/service groups of different sizes, complex service dependencies or large business rules, this can result sometimes in a greatly unbalanced dispatching.
This patch introduce a routine that selects the scheduler managing the lowest amount of objects for each pack. The result is a more evenly balanced load across the schedulers.
Also, modifies the behavior of
service_overrides
property when overriding a parameter for an unknown service. The previous behavior raised an error. The new one only raises a warning. This is way more convenient when dealing with portion of configuration that are enabled or disabled.