[
https://issues.apache.org/jira/browse/CLOUDSTACK-5455?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13845191#comment-13845191
]
Abhinav Roy commented on CLOUDSTACK-5455:
-----------------------------------------
Also, Detach ISO succeeds when the VM is in stopped state.
> [Hyper-V] Detach ISO from VM is failing
> ---------------------------------------
>
> Key: CLOUDSTACK-5455
> URL: https://issues.apache.org/jira/browse/CLOUDSTACK-5455
> Project: CloudStack
> Issue Type: Bug
> Security Level: Public(Anyone can view this level - this is the
> default.)
> Components: Hypervisor Controller, ISO, Management Server
> Affects Versions: 4.3.0
> Environment: 4.3, Hyper-V
> Reporter: Abhinav Roy
> Priority: Critical
> Labels: hyper-V,, hyperv
> Fix For: 4.3.0
>
>
> Steps :
> ====================
> 1. Create an advanced zone setup with hyper-v as the host hypervisor type and
> shared CIFS storage for primary storage
> 2. Deploy a VM
> 3. Register an ISO
> 4. Attach the ISO registered in step 3 to the VM deployed in step 2.
> 5. Detach the ISO from VM
> Expected behaviour :
> =====================
> The ISO should be successfully attached and detached from the VM .
> Observed behaviour :
> =====================
> Attach ISO is successful, but detach fails with the following error.
> 2013-12-11 13:32:21,380 DEBUG [c.c.h.h.r.HypervDirectConnectResource]
> (DirectAgent-346:ctx-95733955) POST response
> is[{"org.apache.cloudstack.storage.command.DettachAnswer":{"result":false,"details":"org.apache.cloudstack.storage.command.DettachCommand
> failed due to Failed to remove disk image
> \\\\10.102.192.19\\HYPERV-SMB\\abhinav-sec2\\template\\tmpl\\2\\205\\205-2-e890b586-1903-352b-a461-f8269531e405.iso
> from VM i-2-23-VM (GUID 126FF663-2E97-49B1-AC72-A9C564CDB40F): the disk
> image is not attached.","contextMap":{}}}]
> 2013-12-11 13:32:21,381 DEBUG [c.c.h.h.r.HypervDirectConnectResource]
> (DirectAgent-346:ctx-95733955) executeRequest received response
> [{"org.apache.cloudstack.storage.command.DettachAnswer":{"result":false,"details":"org.apache.cloudstack.storage.command.DettachCommand
> failed due to Failed to remove disk image
> \\\\10.102.192.19\\HYPERV-SMB\\abhinav-sec2\\template\\tmpl\\2\\205\\205-2-e890b586-1903-352b-a461-f8269531e405.iso
> from VM i-2-23-VM (GUID 126FF663-2E97-49B1-AC72-A9C564CDB40F): the disk
> image is not attached.","contextMap":{},"wait":0}}]
> 2013-12-11 13:32:21,381 DEBUG [c.c.a.m.DirectAgentAttache]
> (DirectAgent-346:ctx-95733955) Seq 1-985236700: Response Received:
> 2013-12-11 13:32:21,381 DEBUG [c.c.a.t.Request]
> (DirectAgent-346:ctx-95733955) Seq 1-985236700: Processing: { Ans: , MgmtId:
> 280320865129348, via: 1, Ver: v1, Flags: 10,
> [{"org.apache.cloudstack.storage.command.DettachAnswer":{"result":false,"details":"org.apache.cloudstack.storage.command.DettachCommand
> failed due to Failed to remove disk image
> \\\\10.102.192.19\\HYPERV-SMB\\abhinav-sec2\\template\\tmpl\\2\\205\\205-2-e890b586-1903-352b-a461-f8269531e405.iso
> from VM i-2-23-VM (GUID 126FF663-2E97-49B1-AC72-A9C564CDB40F): the disk
> image is not attached.","wait":0}}] }
> 2013-12-11 13:32:21,381 DEBUG [c.c.a.t.Request] (Job-Executor-25:ctx-fc430a28
> ctx-bd66f6be) Seq 1-985236700: Received: { Ans: , MgmtId: 280320865129348,
> via: 1, Ver: v1, Flags: 10, { DettachAnswer } }
> 2013-12-11 13:32:21,381 DEBUG [c.c.a.m.AgentManagerImpl]
> (Job-Executor-25:ctx-fc430a28 ctx-bd66f6be) Details from executing class
> org.apache.cloudstack.storage.command.DettachCommand:
> org.apache.cloudstack.storage.command.DettachCommand failed due to Failed to
> remove disk image
> \\10.102.192.19\HYPERV-SMB\abhinav-sec2\template\tmpl\2\205\205-2-e890b586-1903-352b-a461-f8269531e405.iso
> from VM i-2-23-VM (GUID 126FF663-2E97-49B1-AC72-A9C564CDB40F): the disk
> image is not attached.
> 2013-12-11 13:32:21,387 ERROR [c.c.a.ApiAsyncJobDispatcher]
> (Job-Executor-25:ctx-fc430a28) Unexpected exception while executing
> org.apache.cloudstack.api.command.user.iso.DetachIsoCmd
> com.cloud.utils.exception.CloudRuntimeException: Failed to detach iso
> at
> com.cloud.template.TemplateManagerImpl.detachIso(TemplateManagerImpl.java:945)
> 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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
> at
> org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
> at
> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
> at
> com.cloud.event.ActionEventInterceptor.invoke(ActionEventInterceptor.java:50)
> at
> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:161)
> at
> org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:91)
> at
> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
> at
> org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
> at $Proxy159.detachIso(Unknown Source)
> at
> org.apache.cloudstack.api.command.user.iso.DetachIsoCmd.execute(DetachIsoCmd.java:87)
> at com.cloud.api.ApiDispatcher.dispatch(ApiDispatcher.java:161)
> at
> com.cloud.api.ApiAsyncJobDispatcher.runJobInContext(ApiAsyncJobDispatcher.java:109)
> at
> com.cloud.api.ApiAsyncJobDispatcher$1.run(ApiAsyncJobDispatcher.java:66)
> at
> org.apache.cloudstack.managed.context.impl.DefaultManagedContext$1.call(DefaultManagedContext.java:56)
> at
> org.apache.cloudstack.managed.context.impl.DefaultManagedContext.callWithContext(DefaultManagedContext.java:103)
> at
> org.apache.cloudstack.managed.context.impl.DefaultManagedContext.runWithContext(DefaultManagedContext.java:53)
> at
> com.cloud.api.ApiAsyncJobDispatcher.runJob(ApiAsyncJobDispatcher.java:63)
> at
> org.apache.cloudstack.framework.jobs.impl.AsyncJobManagerImpl$5.runInContext(AsyncJobManagerImpl.java:520)
> at
> org.apache.cloudstack.managed.context.ManagedContextRunnable$1.run(ManagedContextRunnable.java:49)
> at
> org.apache.cloudstack.managed.context.impl.DefaultManagedContext$1.call(DefaultManagedContext.java:56)
> at
> org.apache.cloudstack.managed.context.impl.DefaultManagedContext.callWithContext(DefaultManagedContext.java:103)
> at
> org.apache.cloudstack.managed.context.impl.DefaultManagedContext.runWithContext(DefaultManagedContext.java:53)
> at
> org.apache.cloudstack.managed.context.ManagedContextRunnable.run(ManagedContextRunnable.java:46)
> 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-12-11 13:32:21,395 DEBUG [o.a.c.f.j.i.AsyncJobManagerImpl]
> (Job-Executor-25:ctx-fc430a28) Complete async job-64, jobStatus: FAILED,
> resultCode: 530, result:
> org.apache.cloudstack.api.response.ExceptionResponse/null/{"uuidList":[],"errorcode":530,"errortext":"Failed
> to detach iso"}
> 2013-12-11 13:32:21,407 DEBUG [o.a.c.f
> Error seen in Hyper-V agent logs :
> 2013-12-11 05:35:55,181 [29] ERROR HypervResource.HypervResourceController
> [904dd841-8504-42db-a883-e7b7cfeb8d95] -
> com.cloud.agent.api.GetStorageStatsCommand failed on exceptionIllegal
> characters in path.
> System.ArgumentException: Illegal characters in path.
> at System.IO.Path.CheckInvalidPathChars(String path, Boolean
> checkAdditional)
> at
> System.Security.Permissions.FileIOPermission.CheckIllegalCharacters(String[]
> str)
> at
> System.Security.Permissions.FileIOPermission.AddPathList(FileIOPermissionAccess
> access, AccessControlActions control, String[] pathListOrig, Boolean
> checkForDuplicates, Boolean needFullPath, Boolean copyPathList)
> at
> System.Security.Permissions.FileIOPermission..ctor(FileIOPermissionAccess
> access, String[] pathList, Boolean checkForDuplicates, Boolean needFullPath)
> at System.IO.Path.GetFullPath(String path)
> at HypervResource.HypervResourceController.GetCapacityForLocalPath(String
> localStoragePath, Int64& capacityBytes, Int64& availableBytes) in
> c:\source_code\cloudstack\plugins\hypervisors\hyperv\DotNet\ServerResource\HypervResource\HypervResourceController.cs:line
> 1726
> at HypervResource.HypervResourceController.GetStorageStatsCommand(Object
> cmd) in
> c:\source_code\cloudstack\plugins\hypervisors\hyperv\DotNet\ServerResource\HypervResource\HypervResourceController.cs:line
> 1444
> 2013-12-11 05:35:55,181 [29] INFO HypervResource.HypervResourceController
> [904dd841-8504-42db-a883-e7b7cfeb8d95] - {
> "com.cloud.agent.api.GetStorageStatsAnswer": {
> "result": false,
> "details": "com.cloud.agent.api.GetStorageStatsCommand failed on
> exceptionIllegal characters in path.",
> "capacity": 0,
> "used": 0,
> "contextMap": {}
> }
> }
> 2013-12-11 05:35:55,197 [41] INFO HypervResource.HypervResourceController
> [397a3569-f63d-4874-9826-dba57e03cc35] -
> com.cloud.agent.api.GetStorageStatsCommand{
> "id": "f6869306-f861-3984-9612-2ca64d560604",
> "localPath":
> "/HYPERV-SMB/abhinav-primary1?user=abhinav&password=freebsd@123&domain=BLR",
> "pooltype": "NetworkFilesystem",
> "contextMap": {},
> "wait": 0
> }
> 2013-12-11 05:35:55,228 [41] ERROR HypervResource.HypervResourceController
> [397a3569-f63d-4874-9826-dba57e03cc35] -
> com.cloud.agent.api.GetStorageStatsCommand failed on exceptionIllegal
> characters in path.
> System.ArgumentException: Illegal characters in path.
> at System.IO.Path.CheckInvalidPathChars(String path, Boolean
> checkAdditional)
> at
> System.Security.Permissions.FileIOPermission.CheckIllegalCharacters(String[]
> str)
> at
> System.Security.Permissions.FileIOPermission.AddPathList(FileIOPermissionAccess
> access, AccessControlActions control, String[] pathListOrig, Boolean
> checkForDuplicates, Boolean needFullPath, Boolean copyPathList)
> at
> System.Security.Permissions.FileIOPermission..ctor(FileIOPermissionAccess
> access, String[] pathList, Boolean checkForDuplicates, Boolean needFullPath)
> at System.IO.Path.GetFullPath(String path)
> at HypervResource.HypervResourceController.GetCapacityForLocalPath(String
> localStoragePath, Int64& capacityBytes, Int64& availableBytes) in
> c:\source_code\cloudstack\plugins\hypervisors\hyperv\DotNet\ServerResource\HypervResource\HypervResourceController.cs:line
> 1726
> at HypervResource.HypervResourceController.GetStorageStatsCommand(Object
> cmd) in
> c:\source_code\cloudstack\plugins\hypervisors\hyperv\DotNet\ServerResource\HypervResource\HypervResourceController.cs:line
> 1444
> 2013-12-11 05:35:55,228 [41] INFO HypervResource.HypervResourceController
> [397a3569-f63d-4874-9826-dba57e03cc35] - {
> "com.cloud.agent.api.GetStorageStatsAnswer": {
> "result": false,
> "details": "com.cloud.agent.api.GetStorageStatsCommand failed on
> exceptionIllegal characters in path.",
> "capacity": 0,
> "used": 0,
> "contextMap": {}
> }
> }
--
This message was sent by Atlassian JIRA
(v6.1.4#6159)