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

Sanjeev N reopened CLOUDSTACK-2593:
-----------------------------------


Verified on latest build from object_store branch and observer following 
exception while migrating volume:

API Fired:
http://10.147.59.119:8096/client/api?command=migrateVolume&storageid=05820c30-2a0e-33f7-b358-cc9c08864e10&volumeid=1a4eb56e-4050-4688-b5d7-d721ce4439a2

Response:

2013-05-24 12:20:22,001 DEBUG [cloud.async.AsyncJobManagerImpl] 
(ApiServer-2:null) submit async job-25, details: AsyncJobVO {id:25, userId: 1, 
accountId: 1, sessionKey: null, instanceType: None, instanceId: null, cmd: 
org.apache.cloudstack.api.command.user.volume.MigrateVolumeCmd, cmdOriginator: 
null, cmdInfo: 
{"ctxUserId":"1","storageid":"05820c30-2a0e-33f7-b358-cc9c08864e10","httpmethod":"GET","volumeid":"1a4eb56e-4050-4688-b5d7-d721ce4439a2","ctxAccountId":"1","ctxStartEventId":"90"},
 cmdVersion: 0, callbackType: 0, callbackAddress: null, status: 0, 
processStatus: 0, resultCode: 0, result: null, initMsid: 7332683579487, 
completeMsid: null, lastUpdated: null, lastPolled: null, created: null}
2013-05-24 12:20:22,009 DEBUG [cloud.async.AsyncJobManagerImpl] 
(Job-Executor-25:job-25) Executing 
org.apache.cloudstack.api.command.user.volume.MigrateVolumeCmd for job-25
2013-05-24 12:20:22,039 ERROR [cloud.async.AsyncJobManagerImpl] 
(Job-Executor-25:job-25) Unexpected exception while executing 
org.apache.cloudstack.api.command.user.volume.MigrateVolumeCmd
com.cloud.exception.InvalidParameterValueException: Volume needs to be detached 
from VM
        at 
com.cloud.storage.VolumeManagerImpl.migrateVolume(VolumeManagerImpl.java:2062)
        at 
com.cloud.utils.component.ComponentInstantiationPostProcessor$InterceptorDispatcher.intercept(ComponentInstantiationPostProcessor.java:125)
        at 
org.apache.cloudstack.api.command.user.volume.MigrateVolumeCmd.execute(MigrateVolumeCmd.java:103)
        at com.cloud.api.ApiDispatcher.dispatch(ApiDispatcher.java:155)
        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-05-24 12:20:22,040 DEBUG [cloud.async.AsyncJobManagerImpl] 
(Job-Executor-25:job-25) Complete async job-25, jobStatus: 2, resultCode: 530, 
result: Error Code: 530 Error text: Volume needs to be detached from VM
^C

volume id being passed to the API is root volume id.
Looks like migrate volume cmd expecting the VM ID to be set to "detached" for 
migrating the volume. But in case of root volume it will always be the VM ID. 
Only in case data disk volumes VM ID will be set to "detached" if the volume is 
detached from the VM.

mysql> select * from storage_pool\G;
*************************** 1. row ***************************
                   id: 1
                 name: pri_xen_os
                 uuid: c65a038a-750c-3b4f-bf26-7ce3b74e1c85
            pool_type: NetworkFilesystem
                 port: 2049
       data_center_id: 1
               pod_id: 1
           cluster_id: 1
      available_bytes: 2815279431680
       capacity_bytes: 5902284816384
         host_address: 10.147.28.7
            user_info: NULL
                 path: /export/home/sanjeev/pri_xen_os
              created: 2013-05-24 12:09:14
              removed: NULL
          update_time: NULL
               status: Up
storage_provider_name: DefaultPrimary
                scope: CLUSTER
*************************** 2. row ***************************
                   id: 2
                 name: pri_xen_os2
                 uuid: 05820c30-2a0e-33f7-b358-cc9c08864e10
            pool_type: NetworkFilesystem
                 port: 2049
       data_center_id: 1
               pod_id: 1
           cluster_id: 1
      available_bytes: 2776974163968
       capacity_bytes: 5902284816384
         host_address: 10.147.28.7
            user_info: NULL
                 path: /export/home/sanjeev/pri_xen_os2
              created: 2013-05-24 15:36:43
              removed: NULL
          update_time: NULL
               status: Up
storage_provider_name: DefaultPrimary
                scope: CLUSTER
2 rows in set (0.00 sec)

ERROR:
No query specified


                
> Object_Store_Refactor - Not able to migrate volumes between primary storages 
> with in the same cluster.
> ------------------------------------------------------------------------------------------------------
>
>                 Key: CLOUDSTACK-2593
>                 URL: https://issues.apache.org/jira/browse/CLOUDSTACK-2593
>             Project: CloudStack
>          Issue Type: Bug
>      Security Level: Public(Anyone can view this level - this is the 
> default.) 
>    Affects Versions: 4.2.0
>         Environment: Build from object_store
>            Reporter: Sangeetha Hariharan
>            Assignee: edison su
>            Priority: Critical
>             Fix For: 4.2.0
>
>
> Steps to reproduce the problem:
> Set up:
> Advanced zone with NFS secondary storage and 1 primary storage ps1 for 
> cluster1.
> Deploy a VM.
> Add 1 more primary storage ps3 for cluster1.
> Stop the Vm.
> Migrate volume from ps1 to ps2.
> This action reports success.
> But the volume did not success fully migrate to ps3.
> Logs indicates java.lang.NullPointerException being encountered.
> management serve logs:
> 2013-05-20 15:34:00,197 DEBUG [cloud.api.ApiServlet] (catalina-exec-25:null) 
> ===START===  10.217.252.128 -- GET  command=migrateVirtualMac
> hine&storageid=dbf7203e-d359-3179-a464-9900e126cdb0&virtualmachineid=d38d76a2-4a31-484b-9b43-7f11dbc78dde&response=json&sessionkey=Obc59D67KcZYrCEk35NLgMNbhoI%3D&_=1369092666403
> 2013-05-20 15:34:00,279 DEBUG [cloud.async.AsyncJobManagerImpl] 
> (catalina-exec-25:null) submit async job-18, details: AsyncJobVO {id:18, 
> userId: 2, accountId: 2, sessionKey: null, instanceType: None, instanceId: 
> null, cmd: org.apache.cloudstack.api.command.admin.vm.MigrateVMCmd, 
> cmdOriginator: null, cmdInfo: 
> {"response":"json","sessionkey":"Obc59D67KcZYrCEk35NLgMNbhoI\u003d","virtualmachineid":"d38d76a2-4a31-484b-9b43-7f11dbc78dde","ctxUserId":"2","storageid":"dbf7203e-d359-3179-a464-9900e126cdb0","httpmethod":"GET","_":"1369092666403","ctxAccountId":"2","ctxStartEventId":"62"},
>  cmdVersion: 0, callbackType: 0, callbackAddress: null, status: 0, 
> processStatus: 0, resultCode: 0, result: null, initMsid: 206915885079359, 
> completeMsid: null, lastUpdated: null, lastPolled: null, created: null}
> 2013-05-20 15:34:00,280 DEBUG [cloud.async.AsyncJobManagerImpl] 
> (Job-Executor-18:job-18) Executing 
> org.apache.cloudstack.api.command.admin.vm.MigrateVMCmd for job-18
> 2013-05-20 15:34:00,282 DEBUG [cloud.api.ApiServlet] (catalina-exec-25:null) 
> ===END===  10.217.252.128 -- GET  
> command=migrateVirtualMachine&storageid=dbf7203e-d359-3179-a464-9900e126cdb0&virtualmachineid=d38d76a2-4a31-484b-9b43-7f11dbc78dde&response=json&sessionkey=Obc59D67KcZYrCEk35NLgMNbhoI%3D&_=1369092666403
> 2013-05-20 15:34:00,303 DEBUG [cloud.capacity.CapacityManagerImpl] 
> (Job-Executor-18:job-18) VM state transitted from :Stopped to Migrating with 
> event: StorageMigrationRequestedvm's original host id: 1 new host id: null 
> host id before state transition: null
> 2013-05-20 15:34:00,317 DEBUG [cloud.storage.VolumeManagerImpl] 
> (Job-Executor-18:job-18) migrate volume failed:java.lang.NullPointerException
> 2013-05-20 15:34:00,317 DEBUG [cloud.vm.VirtualMachineManagerImpl] 
> (Job-Executor-18:job-18) Storage migration failed
> 2013-05-20 15:34:00,328 DEBUG [cloud.capacity.CapacityManagerImpl] 
> (Job-Executor-18:job-18) VM state transitted from :Migrating to Stopped with 
> event: AgentReportStoppedvm's original host id: 1 new host id: null host id 
> before state transition: null
> 2013-05-20 15:34:00,334 DEBUG [cloud.capacity.CapacityManagerImpl] 
> (Job-Executor-18:job-18) Hosts's actual total CPU: 9044 and CPU after 
> applying overprovisioning: 9044
> 2013-05-20 15:34:00,334 DEBUG [cloud.capacity.CapacityManagerImpl] 
> (Job-Executor-18:job-18) Hosts's actual total RAM: 16190149248 and RAM after 
> applying overprovisioning: 16190149632
> 2013-05-20 15:34:00,334 DEBUG [cloud.capacity.CapacityManagerImpl] 
> (Job-Executor-18:job-18) release cpu from host: 1, old used: 1500,reserved: 
> 500, actual total: 9044, total with overprovisioning: 9044; new used: 
> 1000,reserved:500; movedfromreserved: false,moveToReserveredfalse
> 2013-05-20 15:34:00,334 DEBUG [cloud.capacity.CapacityManagerImpl] 
> (Job-Executor-18:job-18) release mem from host: 1, old used: 
> 1476395008,reserved: 536870912, total: 16190149632; new used: 
> 939524096,reserved:536870912; movedfromreserved: false,moveToReserveredfalse
> 2013-05-20 15:34:00,358 DEBUG [cloud.async.AsyncJobManagerImpl] 
> (Job-Executor-18:job-18) Complete async job-18, jobStatus: 1, resultCode: 0, 
> result: org.apache.cloudstack.api.response.UserVmResponse@125e633f
> 2013-05-20 15:34:00,370 DEBUG [cloud.async.AsyncJobManagerImpl] 
> (Job-Executor-18:job-18) Done executing 
> org.apache.cloudstack.api.command.admin.vm.MigrateVMCmd for job-18
> 2013-05-20 15:34:01,272 DEBUG [cloud.network.NetworkManagerImpl] 
> (Network-Scavenger-1:null) We found network 204 to be free for the first 
> time.  Adding it to the list: 1337001212
> 2013-05-20 15:34:01,633 DEBUG [agent.manager.DirectAgentAttache] 
> (DirectAgent-213:null) Ping from 1
> 2013-05-20 15:34:03,362 DEBUG [cloud.api.ApiServlet] (catalina-exec-20:null) 
> ===START===  10.217.252.128 -- GET  
> command=queryAsyncJobResult&jobId=35ff84de-f061-4aae-9dac-93fb9cc59f08&response=json&sessionkey=Obc59D67KcZYrCEk35NLgMNbhoI%3D&_=1369092669786
> 2013-05-20 15:34:03,373 DEBUG [cloud.async.AsyncJobManagerImpl] 
> (catalina-exec-20:null) Async job-18 completed
> mysql> select * from storage_pool;
> +----+------+--------------------------------------+-------------------+------+----------------+--------+------------+-----------------+----------------+----------------+-----------+-------------------------------------------------+---------------------+---------+-------------+--------+-----------------------+---------+
> | id | name | uuid                                 | pool_type         | port 
> | data_center_id | pod_id | cluster_id | available_bytes | capacity_bytes | 
> host_address   | user_info | path                                            
> | created             | removed | update_time | status | 
> storage_provider_name | scope   |
> +----+------+--------------------------------------+-------------------+------+----------------+--------+------------+-----------------+----------------+----------------+-----------+-------------------------------------------------+---------------------+---------+-------------+--------+-----------------------+---------+
> |  1 | ps1  | e97b5727-d157-3dc1-b32c-065b99806623 | NetworkFilesystem | 2049 
> |              1 |      1 |          1 |   3018555588608 | 11810778316800 | 
> 10.223.110.232 | NULL      | /export/home/sangeetha/campo-systemp-1/primary  
> | 2013-05-20 21:35:08 | NULL    | NULL        | Up     | DefaultPrimary       
>  | CLUSTER |
> |  2 | ps2  | 3f302dc0-452a-30a0-9115-69c5c1e2b39d | NetworkFilesystem | 2049 
> |              1 |   NULL |       NULL |               0 |              0 | 
> 10.223.110.232 | NULL      | /export/home/sangeetha/campo-systemp-1/primary1 
> | 2013-05-20 21:46:10 | NULL    | NULL        | Up     | DefaultPrimary       
>  | ZONE    |
> |  3 | ps3  | dbf7203e-d359-3179-a464-9900e126cdb0 | NetworkFilesystem | 2049 
> |              1 |      1 |          1 |   3006100733952 | 11810778316800 | 
> 10.223.110.232 | NULL      | /export/home/sangeetha/campo-systemp-1/primary2 
> | 2013-05-20 22:30:03 | NULL    | NULL        | Up     | DefaultPrimary       
>  | CLUSTER |
> +----+------+--------------------------------------+-------------------+------+----------------+--------+------------+-----------------+----------------+----------------+-----------+-------------------------------------------------+---------------------+---------+-------------+--------+-----------------------+---------+
> 3 rows in set (0.00 sec)

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