Note: I find a fourth place in the code where an instance mapping could be updated with a cell_id [4], but I'm not sure if that code is ever reached because it's in the build_instances method, which is only called during reschedules, as far as I know:
# This is populated in scheduler_utils.populate_retry num_attempts = local_filter_props.get('retry', {}).get('num_attempts', 1)
if num_attempts <= 1:
# If this is a reschedule the instance is already mapped to
# this cell and the BuildRequest is already deleted so ignore
# the logic below. inst_mapping = self._populate_instance_mapping(context, instance, host)
Note: I find a fourth place in the code where an instance mapping could be updated with a cell_id [4], but I'm not sure if that code is ever reached because it's in the build_instances method, which is only called during reschedules, as far as I know:
# This is populated in scheduler_ utils.populate_ retry
num_ attempts = local_filter_ props.get( 'retry' ,
{}).get( 'num_attempts' , 1)
inst_ mapping = self._populate_ instance_ mapping( context,
instance,
host)
if num_attempts <= 1:
# If this is a reschedule the instance is already mapped to
# this cell and the BuildRequest is already deleted so ignore
# the logic below.
[4] https:/ /github. com/openstack/ nova/blob/ 7a71408a79dc81f 344ee6c7760fa88 1afb935dfc/ nova/conductor/ manager. py#L817