You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cloudstack.apache.org by "Wido den Hollander (JIRA)" <ji...@apache.org> on 2015/08/05 15:44:04 UTC
[jira] [Resolved] (CLOUDSTACK-8648) "Unable to get storage
implementation" when copying template from NFS to S3
[ https://issues.apache.org/jira/browse/CLOUDSTACK-8648?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Wido den Hollander resolved CLOUDSTACK-8648.
--------------------------------------------
Resolution: Fixed
Assignee: Wido den Hollander
Merged into master
> "Unable to get storage implementation" when copying template from NFS to S3
> ---------------------------------------------------------------------------
>
> Key: CLOUDSTACK-8648
> URL: https://issues.apache.org/jira/browse/CLOUDSTACK-8648
> Project: CloudStack
> Issue Type: Bug
> Security Level: Public(Anyone can view this level - this is the default.)
> Components: Secondary Storage
> Affects Versions: Future, 4.5.2
> Reporter: Wido den Hollander
> Assignee: Wido den Hollander
> Labels: qcow2, s3, secondary_storage
> Fix For: Future
>
>
> In the SSVM this can be observed:
> 2015-07-17 12:12:56,675 WARN [storage.resource.NfsSecondaryStorageResource] (agentRequest-Handler-11:null) Failed to get virtual size, returning file size instead:
> javax.naming.ConfigurationException: Unable to get storage implementation
> at com.cloud.storage.template.QCOW2Processor.configure(QCOW2Processor.java:95)
> at org.apache.cloudstack.storage.resource.NfsSecondaryStorageResource.getVirtualSize(NfsSecondaryStorageResource.java:828)
> at org.apache.cloudstack.storage.resource.NfsSecondaryStorageResource.copyFromNfsToS3(NfsSecondaryStorageResource.java:886)
> at org.apache.cloudstack.storage.resource.NfsSecondaryStorageResource.copyFromNfsToImage(NfsSecondaryStorageResource.java:618)
> at org.apache.cloudstack.storage.resource.NfsSecondaryStorageResource.execute(NfsSecondaryStorageResource.java:645)
> at org.apache.cloudstack.storage.resource.NfsSecondaryStorageResource.executeRequest(NfsSecondaryStorageResource.java:233)
> at com.cloud.agent.Agent.processRequest(Agent.java:503)
> at com.cloud.agent.Agent$AgentRequestHandler.doTask(Agent.java:808)
> at com.cloud.utils.nio.Task.run(Task.java:84)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> at java.lang.Thread.run(Thread.java:745)
> The problem is this:
> processor.configure("template processor", new HashMap<String, Object>());
> return processor.getVirtualSize(file);
> It confitures the processor with a empty HashMap, but the check in the processor is:
> public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
> _storage = (StorageLayer)params.get(StorageLayer.InstanceConfigKey);
> if (_storage == null) {
> throw new ConfigurationException("Unable to get storage implementation");
> }
> Since the HashMap is empty null is returned and this exception is thrown.
> No need to configure the Processor as far as I can see.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)