[ 
https://issues.apache.org/jira/browse/CLOUDSTACK-3950?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13742779#comment-13742779
 ] 

Min Chen commented on CLOUDSTACK-3950:
--------------------------------------

This is not a regression on listIso, actually a new feature regarding S3 object 
store. The iso you are trying to copy is registered on region-wide secondary 
storage (S3). For such iso, its zone id should be null, since it is global to 
all zones. For such ISO, copy should do nothing. We should prompt this from UI 
that no action should be done for this case.
                
> [UI] Failed to copy ISO between zones
> -------------------------------------
>
>                 Key: CLOUDSTACK-3950
>                 URL: https://issues.apache.org/jira/browse/CLOUDSTACK-3950
>             Project: CloudStack
>          Issue Type: Bug
>      Security Level: Public(Anyone can view this level - this is the 
> default.) 
>          Components: API
>    Affects Versions: 4.2.0
>         Environment: Latest build from ACS 4.2 branch
>            Reporter: Sanjeev N
>            Assignee: Min Chen
>            Priority: Critical
>             Fix For: 4.2.0
>
>         Attachments: 2013-08-16-A.jpg, cloud.dmp, cloud.dmp, jessica_1.jpg, 
> jessica_2.jpg, jessica_3.jpg, jessica_4.jpg, management-server.rar
>
>
> Failed to copy ISO between zones
> Steps to Reproduce:
> ================
> 1.Bring up CS with two zones.
> zone1: Advanced with vmware cluster
> zone2: Basic with xen cluster
> 2.Register iso in zone1
> 3.Try to copy iso to zone2
> Result:
> =======
> Copy iso failed with com.cloud.utils.exception.CloudRuntimeException: can't 
> find mapping in ObjectInDataStore table for: 
> org.apache.cloudstack.storage.image.store.TemplateObject@fde83db
> But DownloadProgressCommand shows the downloadstatus as "DOWNLOADED" and 
> "errorString":"Install completed successfully at 7/30/13 12:07 PM"
> Also I see template is copied to secondary storage in zone2. But no entries 
> got created for this copied template in vm_template and template_store_ref.
> Following is the log snippet:
> =======================
> 2013-07-30 08:07:23,216 DEBUG [cloud.api.ApiServlet] (catalina-exec-9:null) 
> ===START===  10.146.0.20 -- GET  
> command=copyIso&id=21c7b14d-e799-4334-b5d6-62f813c2c8fa&sourcezoneid=8605b683-4c48-47d8-941a-b21f28a96b0c&destzoneid=188b12a6-00fe-49b9-b212-931f1d30af1a&response=json&sessionkey=bYZvp3S8yUe%2BpNShiKI3%2BsGhzno%3D&_=1375186043583
> 2013-07-30 08:07:23,248 DEBUG [cloud.async.AsyncJobManagerImpl] 
> (catalina-exec-9:null) submit async job-47 = [ 
> 094edee6-17ce-49ff-89a6-6211ad63f185 ], details: AsyncJobVO {id:47, userId: 
> 2, accountId: 2, sessionKey: null, instanceType: Template, instanceId: 203, 
> cmd: org.apache.cloudstack.api.command.user.iso.CopyIsoCmd, cmdOriginator: 
> null, cmdInfo: 
> {"response":"json","id":"21c7b14d-e799-4334-b5d6-62f813c2c8fa","sessionkey":"bYZvp3S8yUe+pNShiKI3+sGhzno\u003d","destzoneid":"188b12a6-00fe-49b9-b212-931f1d30af1a","cmdEventType":"TEMPLATE.COPY","ctxUserId":"2","httpmethod":"GET","_":"1375186043583","ctxAccountId":"2","sourcezoneid":"8605b683-4c48-47d8-941a-b21f28a96b0c","ctxStartEventId":"173"},
>  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-07-30 08:07:23,251 DEBUG [cloud.api.ApiServlet] (catalina-exec-9:null) 
> ===END===  10.146.0.20 -- GET  
> command=copyIso&id=21c7b14d-e799-4334-b5d6-62f813c2c8fa&sourcezoneid=8605b683-4c48-47d8-941a-b21f28a96b0c&destzoneid=188b12a6-00fe-49b9-b212-931f1d30af1a&response=json&sessionkey=bYZvp3S8yUe%2BpNShiKI3%2BsGhzno%3D&_=1375186043583
> 2013-07-30 08:07:23,255 DEBUG [cloud.async.AsyncJobManagerImpl] 
> (Job-Executor-47:job-47 = [ 094edee6-17ce-49ff-89a6-6211ad63f185 ]) Executing 
> org.apache.cloudstack.api.command.user.iso.CopyIsoCmd for job-47 = [ 
> 094edee6-17ce-49ff-89a6-6211ad63f185 ]
> 2013-07-30 08:07:23,298 DEBUG [storage.image.TemplateDataFactoryImpl] 
> (Job-Executor-47:job-47 = [ 094edee6-17ce-49ff-89a6-6211ad63f185 ]) template 
> 203 is already in store:1, type:Image
> 2013-07-30 08:07:23,308 DEBUG [storage.image.TemplateDataFactoryImpl] 
> (Job-Executor-47:job-47 = [ 094edee6-17ce-49ff-89a6-6211ad63f185 ]) template 
> 203 is not in store:2, type:Image
> 2013-07-30 08:07:23,308 DEBUG [storage.image.TemplateServiceImpl] 
> (Job-Executor-47:job-47 = [ 094edee6-17ce-49ff-89a6-6211ad63f185 ]) Setting 
> source template url to 
> https://10-147-48-3.realhostip.com/copy/SecStorage/21ac712e-6690-39a2-9c7b-cc3d5108db5f/template/tmpl/2/203/203-2-056e10f1-6788-3e3d-85af-f02d2680b8bb.iso
> 2013-07-30 08:07:23,308 DEBUG [storage.image.TemplateServiceImpl] 
> (Job-Executor-47:job-47 = [ 094edee6-17ce-49ff-89a6-6211ad63f185 ]) Mark 
> template_store_ref entry as Creating
> 2013-07-30 08:07:23,318 DEBUG [storage.image.TemplateDataFactoryImpl] 
> (Job-Executor-47:job-47 = [ 094edee6-17ce-49ff-89a6-6211ad63f185 ]) template 
> 203 is already in store:2, type:Image
> 2013-07-30 08:07:23,326 DEBUG [storage.image.TemplateServiceImpl] 
> (Job-Executor-47:job-47 = [ 094edee6-17ce-49ff-89a6-6211ad63f185 ]) Invoke 
> datastore driver createAsync to create template on destination store
> 2013-07-30 08:07:23,340 DEBUG [storage.image.BaseImageStoreDriverImpl] 
> (Job-Executor-47:job-47 = [ 094edee6-17ce-49ff-89a6-6211ad63f185 ]) 
> Downloading template to data store 2
> 2013-07-30 08:07:23,352 DEBUG [storage.image.BaseImageStoreDriverImpl] 
> (Job-Executor-47:job-47 = [ 094edee6-17ce-49ff-89a6-6211ad63f185 ]) 
> Performing image store createTemplate async callback
> 2013-07-30 08:07:23,363 INFO  [storage.download.DownloadMonitorImpl] 
> (Job-Executor-47:job-47 = [ 094edee6-17ce-49ff-89a6-6211ad63f185 ]) abandon 
> obsolete download listener
> 2013-07-30 08:07:23,365 DEBUG [storage.image.BaseImageStoreDriverImpl] 
> (Job-Executor-47:job-47 = [ 094edee6-17ce-49ff-89a6-6211ad63f185 ]) 
> Performing image store createTemplate async callback
> 2013-07-30 08:07:23,377 DEBUG [storage.image.TemplateServiceImpl] 
> (Job-Executor-47:job-47 = [ 094edee6-17ce-49ff-89a6-6211ad63f185 ]) 
> Performing copy template cross zone callback after completion
> 2013-07-30 08:07:23,391 DEBUG [cloudstack.storage.RemoteHostEndPoint] 
> (Job-Executor-47:job-47 = [ 094edee6-17ce-49ff-89a6-6211ad63f185 ]) Sending 
> command org.apache.cloudstack.storage.command.DownloadProgressCommand to 
> host: 5
> 2013-07-30 08:07:57,279 DEBUG [image.store.TemplateObject] 
> (RemoteHostEndPoint-1:null) failed to process event and answer
> com.cloud.utils.exception.CloudRuntimeException: can't find mapping in 
> ObjectInDataStore table for: 
> org.apache.cloudstack.storage.image.store.TemplateObject@fde83db
>         at 
> org.apache.cloudstack.storage.datastore.ObjectInDataStoreManagerImpl.update(ObjectInDataStoreManagerImpl.java:239)
>         at 
> org.apache.cloudstack.storage.image.store.TemplateObject.processEvent(TemplateObject.java:210)
>         at 
> org.apache.cloudstack.storage.image.TemplateServiceImpl.copyTemplateCrossZoneCallBack(TemplateServiceImpl.java:677)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>         at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>         at java.lang.reflect.Method.invoke(Method.java:616)
>         at 
> org.apache.cloudstack.framework.async.AsyncCallbackDispatcher.dispatch(AsyncCallbackDispatcher.java:142)
>         at 
> org.apache.cloudstack.framework.async.InplaceAsyncCallbackDriver.performCompletionCallback(InplaceAsyncCallbackDriver.java:26)
>         at 
> org.apache.cloudstack.framework.async.AsyncCallbackDispatcher.complete(AsyncCallbackDispatcher.java:120)
>         at 
> org.apache.cloudstack.storage.image.BaseImageStoreDriverImpl.createTemplateAsyncCallback(BaseImageStoreDriverImpl.java:175)
>         at sun.reflect.GeneratedMethodAccessor111.invoke(Unknown Source)
>         at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>         at java.lang.reflect.Method.invoke(Method.java:616)
>         at 
> org.apache.cloudstack.framework.async.AsyncCallbackDispatcher.dispatch(AsyncCallbackDispatcher.java:142)
>         at 
> org.apache.cloudstack.framework.async.InplaceAsyncCallbackDriver.performCompletionCallback(InplaceAsyncCallbackDriver.java:26)
>         at 
> org.apache.cloudstack.framework.async.AsyncCallbackDispatcher.complete(AsyncCallbackDispatcher.java:120)
>         at 
> com.cloud.storage.download.DownloadListener.callback(DownloadListener.java:263)
>         at 
> com.cloud.storage.download.DownloadState.onEntry(DownloadState.java:65)
>         at 
> com.cloud.storage.download.DownloadCompleteState.onEntry(DownloadCompleteState.java:38)
>         at 
> com.cloud.storage.download.DownloadListener.transition(DownloadListener.java:252)
>         at 
> com.cloud.storage.download.DownloadListener.processAnswers(DownloadListener.java:236)
>         at 
> com.cloud.storage.upload.UploadListener$Callback.complete(UploadListener.java:477)
>         at 
> com.cloud.storage.upload.UploadListener$Callback.complete(UploadListener.java:466)
>         at 
> org.apache.cloudstack.storage.RemoteHostEndPoint$CmdRunner.run(RemoteHostEndPoint.java:166)
>         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.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:165)
>         at 
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:266)
>         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-07-30 08:07:57,283 WARN  
> [storage.datastore.ObjectInDataStoreManagerImpl] (RemoteHostEndPoint-1:null) 
> Template 203 is not found on image store 2, so no need to delete

--
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