[ 
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

Reply via email to