>>>the update_available_resource period task will never have succeeded, and therefore ResourceTracker's compute_nodes dict will not be populated at all
I think you are suggesting run update_available_resource before any request can be schedule to the compute node, right? but I am little bit confused why periodic task can't success , you run the populate before the init_host would help to make it success
>>>It would be avoided with a brief race, which is that confirm will be able to proceed after the periodic task has run for the first time.
>>>Move the initial population of ResourceTracker to init_host so that the compute host won't start processing jobs until it has been successfully initialized.
you mentioned
>>>the update_ available_ resource period task will never have succeeded, and therefore ResourceTracker's compute_nodes dict will not be populated at all
I think you are suggesting run update_ available_ resource before any request can be schedule to the compute node, right? but I am little bit confused why periodic task can't success , you run the populate before the init_host would help to make it success
>>>It would be avoided with a brief race, which is that confirm will be able to proceed after the periodic task has run for the first time.
>>>Move the initial population of ResourceTracker to init_host so that the compute host won't start processing jobs until it has been successfully initialized.
I am not sure whether that's true because /github. com/openstack/ nova/blob/ master/ nova/compute/ manager. py#L1157
https:/
as you can see, pre hook seems already call the update resource before the service start to listen
my guess is /github. com/openstack/ nova/blob/ master/ nova/compute/ manager. py#L7344
https:/
might have logs and doesn't prevent the service to be doable