Sanjeev N created CLOUDSTACK-4076:
-------------------------------------

             Summary: [Object_Store_Refactor] Failed to upload volume when 
there are multiple image stores in a Region
                 Key: CLOUDSTACK-4076
                 URL: https://issues.apache.org/jira/browse/CLOUDSTACK-4076
             Project: CloudStack
          Issue Type: Bug
      Security Level: Public (Anyone can view this level - this is the default.)
          Components: Storage Controller, Volumes
    Affects Versions: 4.2.0
         Environment: Latest build from ACS 4.2 branch
Storage: S3 for secondary storage and NFS for Staging and primary storage
            Reporter: Sanjeev N
            Priority: Critical
             Fix For: 4.2.0


Failed to upload volume when there are multiple image stores in a Region

Steps to Reproduce:
================
1.Bring up CS with Xen Cluster 
2.Use s3 as the secondary storage and NFS for both primary and staging storage
3.Add another S3 storage in the same region
4.Try to upload volume using following API:
http://10.147.59.126:8096/client/api?command=uploadVolume&format=VHD&name=cent62&url=http://10.147.28.7/templates/CentOS62-64bit/280c2a70-e37f-4863-bff8-d318122fd61b.vhd&zoneid=a36bf9a9-1e1f-4216-878b-5feb3f8695de&account=admin&domainid=1

Result:
======
Upload volume failed with error: "multiple image stores, don't know which one 
to use"

Following is the log snippet:
2013-08-05 07:18:39,786 DEBUG [cloud.async.AsyncJobManagerImpl] 
(ApiServer-5:null) submit async job-55 = [ c3113b1b-32c2-43ff-a3fa-5946c48ceaf4 
], details: AsyncJobVO {id:55, userId: 1, accountId: 1, sessionKey: null, 
instanceType: None, instanceId: null, cmd: 
org.apache.cloudstack.api.command.user.volume.UploadVolumeCmd, cmdOriginator: 
null, cmdInfo: 
{"cmdEventType":"VOLUME.UPLOAD","ctxUserId":"1","zoneid":"a36bf9a9-1e1f-4216-878b-5feb3f8695de","name":"cent62","account":"admin","httpmethod":"GET","domainid":"1","ctxAccountId":"1","format":"VHD","ctxStartEventId":"233","url":"http://10.147.28.7/templates/CentOS62-64bit/280c2a70-e37f-4863-bff8-d318122fd61b.vhd"},
 cmdVersion: 0, callbackType: 0, callbackAddress: null, status: 0, 
processStatus: 0, resultCode: 0, result: null, initMsid: 6615759585382, 
completeMsid: null, lastUpdated: null, lastPolled: null, created: null}
2013-08-05 07:18:39,794 DEBUG [cloud.async.AsyncJobManagerImpl] 
(Job-Executor-56:job-55 = [ c3113b1b-32c2-43ff-a3fa-5946c48ceaf4 ]) Executing 
org.apache.cloudstack.api.command.user.volume.UploadVolumeCmd for job-55 = [ 
c3113b1b-32c2-43ff-a3fa-5946c48ceaf4 ]
2013-08-05 07:18:39,842 ERROR [cloud.async.AsyncJobManagerImpl] 
(Job-Executor-56:job-55 = [ c3113b1b-32c2-43ff-a3fa-5946c48ceaf4 ]) Unexpected 
exception while executing 
org.apache.cloudstack.api.command.user.volume.UploadVolumeCmd
com.cloud.utils.exception.CloudRuntimeException: multiple image stores, don't 
know which one to use
        at 
com.cloud.template.TemplateManagerImpl.getImageStore(TemplateManagerImpl.java:354)
        at 
com.cloud.storage.VolumeManagerImpl.uploadVolume(VolumeManagerImpl.java:386)
        at 
com.cloud.utils.component.ComponentInstantiationPostProcessor$InterceptorDispatcher.intercept(ComponentInstantiationPostProcessor.java:125)
        at 
com.cloud.storage.VolumeManagerImpl.uploadVolume(VolumeManagerImpl.java:183)
        at 
org.apache.cloudstack.api.command.user.volume.UploadVolumeCmd.execute(UploadVolumeCmd.java:127)
        at com.cloud.api.ApiDispatcher.dispatch(ApiDispatcher.java:158)
        at 
com.cloud.async.AsyncJobManagerImpl$1.run(AsyncJobManagerImpl.java:531)
        at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
        at java.util.concurrent.FutureTask.run(FutureTask.java:166)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
        at java.lang.Thread.run(Thread.java:679)
2013-08-05 07:18:39,883 DEBUG [cloud.async.AsyncJobManagerImpl] 
(Job-Executor-56:job-55 = [ c3113b1b-32c2-43ff-a3fa-5946c48ceaf4 ]) Complete 
async job-55 = [ c3113b1b-32c2-43ff-a3fa-5946c48ceaf4 ], jobStatus: 2, 
resultCode: 530, result: Error Code: 530 Error text: multiple image stores, 
don't know which one to use


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to