Skip to content

Commit 1684347

Browse files
committed
add IOPS to VmwareStorageMotionStrategy copy command
1 parent 8a1ae6a commit 1684347

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

plugins/hypervisors/vmware/src/main/java/org/apache/cloudstack/storage/motion/VmwareStorageMotionStrategy.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
import javax.inject.Inject;
2828

2929
import com.cloud.agent.api.to.DiskTO;
30+
import com.cloud.storage.DiskOfferingVO;
3031
import com.cloud.storage.Storage;
3132
import org.apache.cloudstack.engine.subsystem.api.storage.CopyCommandResult;
3233
import org.apache.cloudstack.engine.subsystem.api.storage.DataMotionStrategy;
@@ -251,6 +252,17 @@ public void copyAsync(DataObject srcData, DataObject destData, Host destHost, As
251252
, sourcePool
252253
, targetPool
253254
, hostIdForVmAndHostGuidInTargetCluster.second(), ((VolumeObjectTO) srcData.getTO()).getChainInfo());
255+
256+
VolumeInfo volumeInfo = (VolumeInfo) srcData;
257+
if (volumeInfo.getpayload() instanceof DiskOfferingVO) {
258+
DiskOfferingVO offering = (DiskOfferingVO) volumeInfo.getpayload();
259+
Long newIops = null;
260+
if (offering.getIopsReadRate() != null && offering.getIopsWriteRate() != null) {
261+
newIops = offering.getIopsReadRate() + offering.getIopsWriteRate();
262+
}
263+
cmd.setNewIops(newIops);
264+
}
265+
254266
if (sourcePool.getParent() != 0) {
255267
cmd.setContextParam(DiskTO.PROTOCOL_TYPE, Storage.StoragePoolType.DatastoreCluster.toString());
256268
}

0 commit comments

Comments
 (0)