mirror of https://github.com/apache/cloudstack.git
bug CS-16232: For volumes created from snapshot, create usage event after successful volume
status CS-16232: resolved fixed reviewed-by: Nitin
This commit is contained in:
parent
115e8fd2cb
commit
b8429dcb17
|
|
@ -595,7 +595,13 @@ public class StorageManagerImpl implements StorageManager, StorageService, Manag
|
|||
SnapshotVO snapshot = _snapshotDao.findById(snapshotId); // Precondition: snapshot is not null and not removed.
|
||||
|
||||
Pair<VolumeVO, String> volumeDetails = createVolumeFromSnapshot(volume, snapshot);
|
||||
createdVolume = volumeDetails.first();
|
||||
createdVolume = volumeDetails.first();
|
||||
if (createdVolume != null) {
|
||||
UsageEventVO usageEvent = new UsageEventVO(EventTypes.EVENT_VOLUME_CREATE, createdVolume.getAccountId(), createdVolume.getDataCenterId(), createdVolume.getId(), createdVolume.getName(),
|
||||
createdVolume.getDiskOfferingId(), null, createdVolume.getSize());
|
||||
_usageEventDao.persist(usageEvent);
|
||||
|
||||
}
|
||||
return createdVolume;
|
||||
}
|
||||
|
||||
|
|
@ -1792,8 +1798,10 @@ public class StorageManagerImpl implements StorageManager, StorageService, Manag
|
|||
volume.setState(Volume.State.Creating);
|
||||
}
|
||||
volume = _volsDao.persist(volume);
|
||||
UsageEventVO usageEvent = new UsageEventVO(EventTypes.EVENT_VOLUME_CREATE, volume.getAccountId(), volume.getDataCenterId(), volume.getId(), volume.getName(), diskOfferingId, null, size);
|
||||
_usageEventDao.persist(usageEvent);
|
||||
if(cmd.getSnapshotId() == null){
|
||||
UsageEventVO usageEvent = new UsageEventVO(EventTypes.EVENT_VOLUME_CREATE, volume.getAccountId(), volume.getDataCenterId(), volume.getId(), volume.getName(), diskOfferingId, null, size);
|
||||
_usageEventDao.persist(usageEvent);
|
||||
}
|
||||
txn.commit();
|
||||
|
||||
UserContext.current().setEventDetails("Volume Id: " + volume.getId());
|
||||
|
|
|
|||
Loading…
Reference in New Issue