Skip to content

Commit a8544ee

Browse files
Fix: copy of volumes are not being properly expunged when a volume migration fails.
1 parent ba50272 commit a8544ee

1 file changed

Lines changed: 6 additions & 0 deletions

File tree

engine/storage/volume/src/org/apache/cloudstack/storage/volume/VolumeServiceImpl.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1009,6 +1009,12 @@ protected Void copyVolumeCallBack(AsyncCallbackDispatcher<VolumeServiceImpl, Cop
10091009
destVolume.processEvent(Event.OperationFailed);
10101010
srcVolume.processEvent(Event.OperationFailed);
10111011
destroyVolume(destVolume.getId());
1012+
1013+
//Release volume from its original pod so it can be expunged
1014+
VolumeVO volumeVO = volDao.findById(destVolume.getId());
1015+
volumeVO.setPodId(null);
1016+
volDao.persist(volumeVO);
1017+
10121018
destVolume = volFactory.getVolume(destVolume.getId());
10131019
AsyncCallFuture<VolumeApiResult> destroyFuture = expungeVolumeAsync(destVolume);
10141020
destroyFuture.get();

0 commit comments

Comments
 (0)