This is an automated email from the ASF dual-hosted git repository.

sureshanaparti pushed a commit to branch 4.19
in repository https://gitbox.apache.org/repos/asf/cloudstack.git


The following commit(s) were added to refs/heads/4.19 by this push:
     new 3134efb971d plugin-swift: handle null cache store (#11380)
3134efb971d is described below

commit 3134efb971da306bab87f2bee3686e308454c534
Author: Abhishek Kumar <abhishek.mr...@gmail.com>
AuthorDate: Mon Aug 4 16:21:20 2025 +0530

    plugin-swift: handle null cache store (#11380)
    
    Fixes 
https://github.com/apache/cloudstack/pull/11315#pullrequestreview-3074036751
    
    Signed-off-by: Abhishek Kumar <abhishek.mr...@gmail.com>
---
 .../datastore/driver/SwiftImageStoreDriverImpl.java     | 17 ++++++++++-------
 1 file changed, 10 insertions(+), 7 deletions(-)

diff --git 
a/plugins/storage/image/swift/src/main/java/org/apache/cloudstack/storage/datastore/driver/SwiftImageStoreDriverImpl.java
 
b/plugins/storage/image/swift/src/main/java/org/apache/cloudstack/storage/datastore/driver/SwiftImageStoreDriverImpl.java
index 7e1486214bc..44f321f9543 100644
--- 
a/plugins/storage/image/swift/src/main/java/org/apache/cloudstack/storage/datastore/driver/SwiftImageStoreDriverImpl.java
+++ 
b/plugins/storage/image/swift/src/main/java/org/apache/cloudstack/storage/datastore/driver/SwiftImageStoreDriverImpl.java
@@ -24,11 +24,6 @@ import java.util.UUID;
 
 import javax.inject.Inject;
 
-import com.cloud.configuration.Config;
-import com.cloud.utils.SwiftUtil;
-import org.apache.cloudstack.framework.config.dao.ConfigurationDao;
-import org.apache.log4j.Logger;
-
 import org.apache.cloudstack.api.ApiConstants;
 import org.apache.cloudstack.engine.subsystem.api.storage.CreateCmdResult;
 import org.apache.cloudstack.engine.subsystem.api.storage.DataObject;
@@ -38,18 +33,21 @@ import 
org.apache.cloudstack.engine.subsystem.api.storage.EndPointSelector;
 import org.apache.cloudstack.engine.subsystem.api.storage.StorageCacheManager;
 import org.apache.cloudstack.framework.async.AsyncCallbackDispatcher;
 import org.apache.cloudstack.framework.async.AsyncCompletionCallback;
+import org.apache.cloudstack.framework.config.dao.ConfigurationDao;
 import org.apache.cloudstack.storage.command.DownloadCommand;
 import org.apache.cloudstack.storage.datastore.db.ImageStoreDetailsDao;
 import org.apache.cloudstack.storage.image.BaseImageStoreDriverImpl;
 import org.apache.cloudstack.storage.image.store.ImageStoreImpl;
 import org.apache.cloudstack.storage.to.TemplateObjectTO;
+import org.apache.log4j.Logger;
 
 import com.cloud.agent.api.storage.DownloadAnswer;
 import com.cloud.agent.api.to.DataObjectType;
 import com.cloud.agent.api.to.DataStoreTO;
 import com.cloud.agent.api.to.SwiftTO;
+import com.cloud.configuration.Config;
 import com.cloud.storage.Storage.ImageFormat;
-import com.cloud.template.VirtualMachineTemplate;
+import com.cloud.utils.SwiftUtil;
 import com.cloud.utils.exception.CloudRuntimeException;
 
 public class SwiftImageStoreDriverImpl extends BaseImageStoreDriverImpl {
@@ -101,8 +99,13 @@ public class SwiftImageStoreDriverImpl extends 
BaseImageStoreDriverImpl {
     @Override
     public void createAsync(DataStore dataStore, DataObject data, 
AsyncCompletionCallback<CreateCmdResult> callback) {
         Long maxTemplateSizeInBytes = getMaxTemplateSizeInBytes();
-        VirtualMachineTemplate tmpl = _templateDao.findById(data.getId());
         DataStore cacheStore = 
cacheManager.getCacheStorage(dataStore.getScope());
+        if (cacheStore == null) {
+            String errMsg = String.format("No cache store found for scope: %s",
+                    dataStore.getScope().getScopeType().name());
+            s_logger.error(errMsg);
+            throw new CloudRuntimeException(errMsg);
+        }
         DownloadCommand dcmd = new 
DownloadCommand((TemplateObjectTO)(data.getTO()), maxTemplateSizeInBytes);
         dcmd.setCacheStore(cacheStore.getTO());
         dcmd.setProxy(getHttpProxy());

Reply via email to