[pve-devel] [PATCH ha-manager 06/11] usage: add Usage::Static plugin

Fiona Ebner f.ebner at proxmox.com
Wed Nov 16 10:10:08 CET 2022


Am 15.11.22 um 16:55 schrieb DERUMIER, Alexandre:
> 
>> +sub score_nodes_to_start_service {
>> +    my ($self, $sid, $service_node) = @_;
>> +
>> +    my $score_list = eval {
>> +       my $service_usage = get_service_usage($self, $sid,
>> $service_node);
>> +       $self->{scheduler}-
>>> score_nodes_to_start_service($service_usage);
>> +    };
>> +    if (my $err = $@) {
>> +       $self->{haenv}->log(
>> +           'err',
>> +           "unable to score nodes according to static usage for
>> service '$sid' - $err",
>> +       );
>> +       # TODO maybe use service count as fallback?
> 
> Maybe you use add "service count" in criterias with the lowest priority
> ?
> 
> (I have done it like this if I remember)
> 

The fallback is intended to be used when something goes wrong with the
calculation or interfacing with the Rust backend. So we can't add the
fallback in the Rust backend, but would need to do it in the Perl module
directly.

The TOPSIS calculation is only expected to fail if a f64::NAN ends up in
the TOPSIS Matrix somehow, which also shouldn't happen in absence of
bugs. But it's good to be prepared for unexpected bugs in the
interfacing and calculation of course.





More information about the pve-devel mailing list