CLOUDSTACK-2578: NPE in deleting template from S3.

This commit is contained in:
Min Chen 2013-05-21 14:43:32 -07:00
parent cb0659ab33
commit a4e6784e0b
4 changed files with 11 additions and 10 deletions

View File

@ -276,8 +276,9 @@ public class CloudStackImageStoreDriverImpl implements ImageStoreDriver {
// TODO: need to understand why we need to mark destroyed in
// template_store_ref table here instead of in callback.
// Currently I did that in callback, so I removed previous code to mark template_host_ref
UsageEventUtils.publishUsageEvent(eventType, account.getId(), sZoneId, templateId, null, null, null);
if ( sZoneId != null ){
UsageEventUtils.publishUsageEvent(eventType, account.getId(), sZoneId, templateId, null, null, null);
}
// get installpath of this template on image store
TemplateDataStoreVO tmplStore = _templateStoreDao.findByStoreTemplate(storeId, templateId);

View File

@ -286,11 +286,10 @@ public class S3ImageStoreDriverImpl implements ImageStoreDriver {
eventType = EventTypes.EVENT_TEMPLATE_DELETE;
}
// TODO: need to understand why we need to mark destroyed in
// template_store_ref table here instead of in callback.
// Currently I did that in callback, so I removed previous code to mark template_host_ref
UsageEventUtils.publishUsageEvent(eventType, account.getId(), sZoneId, templateId, null, null, null);
if ( sZoneId != null ){
//TODO: how to handle region wide usage data where sZoneId == null
UsageEventUtils.publishUsageEvent(eventType, account.getId(), sZoneId, templateId, null, null, null);
}
List<UserVmJoinVO> userVmUsingIso = _userVmJoinDao.listActiveByIsoId(templateId);
// check if there is any VM using this ISO.

View File

@ -281,8 +281,9 @@ public class SwiftImageStoreDriverImpl implements ImageStoreDriver {
// TODO: need to understand why we need to mark destroyed in
// template_store_ref table here instead of in callback.
// Currently I did that in callback, so I removed previous code to mark template_host_ref
UsageEventUtils.publishUsageEvent(eventType, account.getId(), sZoneId, templateId, null, null, null);
if (sZoneId != null){
UsageEventUtils.publishUsageEvent(eventType, account.getId(), sZoneId, templateId, null, null, null);
}
List<UserVmJoinVO> userVmUsingIso = _userVmJoinDao.listActiveByIsoId(templateId);
// check if there is any VM using this ISO.

View File

@ -1535,7 +1535,7 @@ public class NfsSecondaryStorageResource extends ServerResourceBase implements S
final String bucket = s3.getBucketName();
try {
S3Utils.deleteDirectory(s3, bucket, path);
return new Answer(cmd, true, String.format("Deleted template %1%s from bucket %2$s.", path, bucket));
return new Answer(cmd, true, String.format("Deleted template %1$s from bucket %2$s.", path, bucket));
} catch (Exception e) {
final String errorMessage = String.format("Failed to delete template %1$s from bucket %2$s due to the following error: %3$s", path,
bucket, e.getMessage());