diff --git a/core/src/com/cloud/hypervisor/xen/resource/CitrixResourceBase.java b/core/src/com/cloud/hypervisor/xen/resource/CitrixResourceBase.java index de8d297de25..79db215804f 100644 --- a/core/src/com/cloud/hypervisor/xen/resource/CitrixResourceBase.java +++ b/core/src/com/cloud/hypervisor/xen/resource/CitrixResourceBase.java @@ -4984,6 +4984,10 @@ public abstract class CitrixResourceBase implements ServerResource, HypervisorRe SR primaryStoragePool = getStorageRepository(conn, poolTO); String srUuid = primaryStoragePool.getUuid(conn); if (toSecondaryStorage) { + // Create the volume folder + if (!createSecondaryStorageFolder(conn, remoteVolumesMountPath, volumeFolder)) { + throw new InternalErrorException("Failed to create the volume folder."); + } VDI vdi = VDI.getByUuid(conn, volumeUUID); String pUuid = getVhdParent(conn, srUuid, vdi.getUuid(conn), IsISCSI(primaryStoragePool.getType(conn))); if( pUuid != null ) { @@ -5001,10 +5005,6 @@ public abstract class CitrixResourceBase implements ServerResource, HypervisorRe removeSR(conn, secondaryStorage); } } else { - // Create the volume folder - if (!createSecondaryStorageFolder(conn, remoteVolumesMountPath, volumeFolder)) { - throw new InternalErrorException("Failed to create the volume folder."); - } String uuid = copy_vhd_to_secondarystorage(conn, mountpoint, volumeUUID, srUuid); return new CopyVolumeAnswer(cmd, true, null, null, uuid); }