You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cloudstack.apache.org by "Mice Xia (JIRA)" <ji...@apache.org> on 2013/04/24 05:19:17 UTC

[jira] [Resolved] (CLOUDSTACK-2149) restoreVirtualMachine api fired second time on a vm with root disk fails with Execption.

     [ https://issues.apache.org/jira/browse/CLOUDSTACK-2149?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Mice Xia resolved CLOUDSTACK-2149.
----------------------------------

    Resolution: Fixed

[root cause]
the implementation of restoreVMInternal() uses _volsDao.findByInstance() to list volumes, which also includes datavolume, but dataVolume is not associated with any templateId, thus an exception is thrown.

[change]
use _volsDao.findByInstanceAndType 
update related unittest

                
> restoreVirtualMachine api fired second time on a vm with root disk fails with Execption.
> ----------------------------------------------------------------------------------------
>
>                 Key: CLOUDSTACK-2149
>                 URL: https://issues.apache.org/jira/browse/CLOUDSTACK-2149
>             Project: CloudStack
>          Issue Type: Bug
>      Security Level: Public(Anyone can view this level - this is the default.) 
>          Components: API
>    Affects Versions: 4.2.0
>            Reporter: Kiran Koneti
>            Assignee: Mice Xia
>            Priority: Critical
>             Fix For: 4.2.0
>
>
> When a VM is created with a root disk and data disk and the restoreVirtualMachine api is fired for the first time it works fine.But when you fire the API second time it fails with an execption saying Currently there is no support to reset a vm that is deployed using ISO.
> The error message is as below:
> "2013-04-23 11:42:08,219 DEBUG [cloud.async.AsyncJobManagerImpl] (ApiServer-5:null) submit async job-105, details: AsyncJobVO {id:105, userId: 1, accountId: 1, sessionKey: null, instanceType: null, instanceId: null, cmd: org.apache.cloudstack.api.command.user.vm.RestoreVMCmd, cmdOriginator: null, cmdInfo: {"virtualmachineid":"1e8fc378-bbc1-4794-bd8d-dfa21d36d8a7","ctxUserId":"1","templateid":"63cefeac-964f-4c10-842a-89991d420be0","ctxAccountId":"1","ctxStartEventId":"404"}, cmdVersion: 0, callbackType: 0, callbackAddress: null, status: 0, processStatus: 0, resultCode: 0, result: null, initMsid: 7280707764394, completeMsid: null, lastUpdated: null, lastPolled: null, created: null}
> 2013-04-23 11:42:08,228 DEBUG [cloud.async.AsyncJobManagerImpl] (Job-Executor-28:job-105) Executing org.apache.cloudstack.api.command.user.vm.RestoreVMCmd for job-105
> 2013-04-23 11:42:08,256 INFO  [cloud.utils.AnnotationHelper] (Job-Executor-28:job-105)
> class java.lang.Stringdoes not have a Table annotation
> 2013-04-23 11:42:08,256 ERROR [cloud.async.AsyncJobManagerImpl] (Job-Executor-28:job-105) Unexpected exception while executing org.apache.cloudstack.api.command.user.vm.RestoreVMCmd
> com.cloud.exception.InvalidParameterValueException: Currently there is no support to reset a vm that is deployed using ISO 1e8fc378-bbc1-4794-bd8d-dfa21d36d8a7
>         at com.cloud.vm.UserVmManagerImpl.restoreVMInternal(UserVmManagerImpl.java:3987)
>         at com.cloud.vm.UserVmManagerImpl.restoreVM(UserVmManagerImpl.java:3940)
>         at org.apache.cloudstack.api.command.user.vm.RestoreVMCmd.execute(RestoreVMCmd.java:65)
>         at com.cloud.api.ApiDispatcher.dispatch(ApiDispatcher.java:164)
>         at com.cloud.async.AsyncJobManagerImpl$1.run(AsyncJobManagerImpl.java:437)
>         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:1146)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>         at java.lang.Thread.run(Thread.java:679)
> 2013-04-23 11:42:08,258 DEBUG [cloud.async.AsyncJobManagerImpl] (Job-Executor-28:job-105) Complete async job-105, jobStatus: 2, resultCode: 530, result: Error Code: 530 Error text: Currently there is no support to reset a vm that is deployed using ISO 1e8fc378-bbc1-4794-bd8d-dfa21d36d8a7".

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