From a72580def0b555f479fbaa093cf4f8d95a8ea756 Mon Sep 17 00:00:00 2001 From: Nitin Mehta Date: Mon, 20 Oct 2014 16:49:48 -0700 Subject: [PATCH] CLOUDSTACK-7754: Templates source_template_id is null when it is created from Snapshot with its corresponding volume removed. Fix it by searching for volumes including removed. (cherry picked from commit 287ff83552081cd91c68af6214016ca4cc4cc040) --- server/src/com/cloud/template/TemplateManagerImpl.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/server/src/com/cloud/template/TemplateManagerImpl.java b/server/src/com/cloud/template/TemplateManagerImpl.java index a1ca344a26f..615dcb93a67 100755 --- a/server/src/com/cloud/template/TemplateManagerImpl.java +++ b/server/src/com/cloud/template/TemplateManagerImpl.java @@ -1410,9 +1410,10 @@ public class TemplateManagerImpl extends ManagerBase implements TemplateManager, privateTemplate = _tmpltDao.findById(templateId); if (snapshotId != null) { - //getting the prent volume + //getting the parent volume long parentVolumeId = _snapshotDao.findById(snapshotId).getVolumeId(); - VolumeVO parentVolume = _volumeDao.findById(parentVolumeId); + //Volume can be removed + VolumeVO parentVolume = _volumeDao.findByIdIncludingRemoved(parentVolumeId); if (parentVolume != null && parentVolume.getIsoId() != null && parentVolume.getIsoId() != 0) { privateTemplate.setSourceTemplateId(parentVolume.getIsoId());