From 97ddd17f94826effbca8e47a01a94b03be1b9488 Mon Sep 17 00:00:00 2001 From: Abhishek Kumar Date: Fri, 13 Sep 2024 17:40:20 +0530 Subject: [PATCH] fix related to 38d6c4e7e7d7535e08f1e45dad0f4e5fd1eb2239 Signed-off-by: Abhishek Kumar --- .../com/cloud/storage/dao/VMTemplateDaoImpl.java | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/engine/schema/src/main/java/com/cloud/storage/dao/VMTemplateDaoImpl.java b/engine/schema/src/main/java/com/cloud/storage/dao/VMTemplateDaoImpl.java index 6e0dc5cbeea..7e82b96462d 100644 --- a/engine/schema/src/main/java/com/cloud/storage/dao/VMTemplateDaoImpl.java +++ b/engine/schema/src/main/java/com/cloud/storage/dao/VMTemplateDaoImpl.java @@ -546,14 +546,19 @@ public class VMTemplateDaoImpl extends GenericDaoBase implem @Override public List listAllReadySystemVMTemplates(Long zoneId) { - List availableHypervisors = _hostDao.findDistinctHypervisorTypesForZone(zoneId); - if (CollectionUtils.isEmpty(availableHypervisors)) { - return Collections.emptyList(); + List availableHypervisors = null; + if (zoneId != null) { + availableHypervisors = _hostDao.findDistinctHypervisorTypesForZone(zoneId); + if (CollectionUtils.isEmpty(availableHypervisors)) { + return Collections.emptyList(); + } } SearchCriteria sc = readySystemTemplateSearch.create(); sc.setParameters("templateType", Storage.TemplateType.SYSTEM); sc.setParameters("state", VirtualMachineTemplate.State.Active); - sc.setParameters("hypervisorType", availableHypervisors.toArray()); + if (CollectionUtils.isNotEmpty(availableHypervisors)) { + sc.setParameters("hypervisorType", availableHypervisors.toArray()); + } sc.setJoinParameters("vmTemplateJoinTemplateStoreRef", "downloadState", List.of(VMTemplateStorageResourceAssoc.Status.DOWNLOADED, VMTemplateStorageResourceAssoc.Status.BYPASSED).toArray());