node_disks = {}
node_disks_devonly = {}
diskless_instances = set()
+ nodisk_instances = set()
diskless = constants.DT_DISKLESS
for nuuid in node_uuids:
for disk in instanceinfo[inst_uuid].disks]
if not disks:
+ nodisk_instances.update(uuid for uuid in node_inst_uuids
+ if instanceinfo[uuid].disk_template != diskless)
# No need to collect data
continue
for inst_uuid in diskless_instances:
assert inst_uuid not in instdisk
instdisk[inst_uuid] = {}
+ # ...and disk-full instances that happen to have no disks
+ for inst_uuid in nodisk_instances:
+ assert inst_uuid not in instdisk
+ instdisk[inst_uuid] = {}
assert compat.all(len(statuses) == len(instanceinfo[inst].disks) and
len(nuuids) <= len(instanceinfo[inst].all_nodes) and