You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cloudstack.apache.org by "ASF subversion and git services (JIRA)" <ji...@apache.org> on 2013/05/20 02:59:16 UTC

[jira] [Commented] (CLOUDSTACK-1871) domainId parameter to uploadVolume not working

    [ https://issues.apache.org/jira/browse/CLOUDSTACK-1871?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13661698#comment-13661698 ] 

ASF subversion and git services commented on CLOUDSTACK-1871:
-------------------------------------------------------------

Commit 63e92a4ea6766212d4450cde3cf205d661a6419d in branch refs/heads/master from [~isaacchiang@gmail.com]
[ https://git-wip-us.apache.org/repos/asf?p=cloudstack.git;h=63e92a4 ]

CLOUDSTACK-1871 : domainId parameter to uploadVolume not working

1. Remove duplicated lines for setting domainId.
2. Set domainId with owner's domain if the owner is specified.

                
> domainId parameter to uploadVolume not working
> ----------------------------------------------
>
>                 Key: CLOUDSTACK-1871
>                 URL: https://issues.apache.org/jira/browse/CLOUDSTACK-1871
>             Project: CloudStack
>          Issue Type: Bug
>      Security Level: Public(Anyone can view this level - this is the default.) 
>          Components: API, Management Server
>    Affects Versions: 4.0.1
>            Reporter: Kirk Kosinski
>            Assignee: Isaac Chiang
>
> If a root admin wants to upload a volume to a particular account and domain and includes the account and domainId parameters to uploadVolume, only the account is applied to the resulting volume, and the domain will be ROOT. The volume will not be usable by or visible to the desired account since it is in the wrong domain, and most likely won't be usable by any account at all (unless there happens to be an account with the same name in the ROOT domain).
> To reproduce:
> 1) Use root admin credentials to call uploadVolume with account and domainId parameters with valid values.
> 2) Check whether or not the domain on the resulting volume is what you specified in 1).
> Example from api-server.log:
> 2013-04-01 14:33:29,872 INFO  [cloud.api.ApiServer] (catalina-exec-10:null) (userId=2 accountId=2 sessionId=null) 172.20.0.59 -- GET account=devuser&apiKey=<snip>&command=uploadVolume&domainid=84828cc6-89b0-4d71-8451-a0919525df22&format=QCOW2&name=blankdisk1&response=json&url=http%3A%2F%2Fserver%2Fblankdisk.qcow2.bz2&zoneid=08a17e4e-df55-45e8-a318-0fc62ffae559&signature=<snip> 200 { "uploadvolumeresponse" : {"jobid":"0281081e-aed7-4b39-8d32-47824b88ae66"} }
> Matching entry in management-server.log:
> 2013-04-01 14:33:29,866 DEBUG [cloud.async.AsyncJobManagerImpl] (catalina-exec-10:null) submit async job-35, details: AsyncJobVO {id:35, userId: 2, accountId: 2, sessionKey: null, instanceType: None, instanceId: null, cmd: com.cloud.api.commands.UploadVolumeCmd, cmdOriginator: null, cmdInfo: {"response":"json","ctxUserId":"2","zoneid":"08a17e4e-df55-45e8-a318-0fc62ffae559","name":"blankdisk1","account":"devuser","domainid":"84828cc6-89b0-4d71-8451-a0919525df22","ctxAccountId":"2","format":"QCOW2","ctxStartEventId":"210","apiKey":"<snip>","signature":"<snip>","url":"http://server/blankdisk.qcow2.bz2"}, cmdVersion: 0, callbackType: 0, callbackAddress: null, status: 0, processStatus: 0, resultCode: 0, result: null, initMsid: 4993812620, completeMsid: null, lastUpdated: null, lastPolled: null, created: null}
> Resulting volume in the database (note domain_id = 1, the ROOT domain).
> mysql> select * from volumes where id = 10\G
> *************************** 1. row ***************************
>                         id: 10
>                 account_id: 3
>                  domain_id: 1
>                    pool_id: NULL
>               last_pool_id: NULL
>                instance_id: NULL
>                  device_id: NULL
>                       name: blankdisk1
>                       uuid: b63e00b9-cf09-4b0a-b8a8-8056ae89abf6
>                       size: 0
>                     folder: NULL
>                       path: NULL
>                     pod_id: NULL
>             data_center_id: 1
>                 iscsi_name: NULL
>                    host_ip: NULL
>                volume_type: DATADISK
>                  pool_type: NULL
>           disk_offering_id: 6
>                template_id: NULL
> first_snapshot_backup_uuid: NULL
>                recreatable: 0
>                    created: 2013-04-01 21:33:29
>                   attached: NULL
>                    updated: 2013-04-01 21:33:29
>                    removed: NULL
>                      state: UploadOp
>                 chain_info: NULL
>               update_count: 1
> 1 row in set (0.00 sec)
> mysql> select id,uuid,name,path from domain;
> +----+--------------------------------------+------+-------+
> | id | uuid                                 | name | path  |
> +----+--------------------------------------+------+-------+
> |  1 | 4cf6bf74-6dc9-453e-95b6-7f3483192aa9 | ROOT | /     |
> |  2 | 84828cc6-89b0-4d71-8451-a0919525df22 | dev  | /dev/ |
> +----+--------------------------------------+------+-------+
> 2 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