From 4233bf99d398251ba8d86a58172c73b0a0f83ca0 Mon Sep 17 00:00:00 2001 From: saksham Date: Mon, 20 Aug 2012 17:43:05 +0530 Subject: [PATCH] CS-15734 KVM Snapshots show incorrect disk usage Using dskch.getSize() to get virtual sizes of volumes/snapshots Reviewed by : Nitin --- .../agent/resource/computing/LibvirtComputingResource.java | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/agent/src/com/cloud/agent/resource/computing/LibvirtComputingResource.java b/agent/src/com/cloud/agent/resource/computing/LibvirtComputingResource.java index 4a85c1042ee..7ed1ed55e57 100755 --- a/agent/src/com/cloud/agent/resource/computing/LibvirtComputingResource.java +++ b/agent/src/com/cloud/agent/resource/computing/LibvirtComputingResource.java @@ -1122,7 +1122,7 @@ public class LibvirtComputingResource extends ServerResourceBase implements long disksize; try { primaryPool = _storagePoolMgr.getStoragePool(pool.getUuid()); - + disksize = dskch.getSize(); if (cmd.getTemplateUrl() != null) { BaseVol = primaryPool.getPhysicalDisk(cmd.getTemplateUrl()); @@ -1133,10 +1133,9 @@ public class LibvirtComputingResource extends ServerResourceBase implements return new Answer(cmd, false, " Can't create storage volume on storage pool"); } - disksize = vol.getVirtualSize(); + } else { - disksize = dskch.getSize(); - vol = primaryPool.createPhysicalDisk(UUID.randomUUID() + vol = primaryPool.createPhysicalDisk(UUID.randomUUID() .toString(), dskch.getSize()); } VolumeTO volume = new VolumeTO(cmd.getVolumeId(), dskch.getType(),