Return-Path: X-Original-To: apmail-cloudstack-issues-archive@www.apache.org Delivered-To: apmail-cloudstack-issues-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id CF14210D32 for ; Sat, 17 Aug 2013 01:14:49 +0000 (UTC) Received: (qmail 46631 invoked by uid 500); 17 Aug 2013 01:14:49 -0000 Delivered-To: apmail-cloudstack-issues-archive@cloudstack.apache.org Received: (qmail 46613 invoked by uid 500); 17 Aug 2013 01:14:49 -0000 Mailing-List: contact issues-help@cloudstack.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@cloudstack.apache.org Delivered-To: mailing list issues@cloudstack.apache.org Received: (qmail 46556 invoked by uid 500); 17 Aug 2013 01:14:49 -0000 Delivered-To: apmail-incubator-cloudstack-issues@incubator.apache.org Received: (qmail 46502 invoked by uid 99); 17 Aug 2013 01:14:49 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 17 Aug 2013 01:14:49 +0000 Date: Sat, 17 Aug 2013 01:14:49 +0000 (UTC) From: "Min Chen (JIRA)" To: cloudstack-issues@incubator.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (CLOUDSTACK-3950) [UI] Failed to copy ISO between zones MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ 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