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

ASF GitHub Bot commented on CLOUDSTACK-8826:
--------------------------------------------

GitHub user koushik-das opened a pull request:

    https://github.com/apache/cloudstack/pull/792

    CLOUDSTACK-8826: XenServer - Use device id passed as part of attach v…

    …olume API properly
    
    If device id passed as part of API and available then use it otherwise 
fallback on XS to automatically assign one.
    For ISO device id used is 3 and it is processed before any other entry to 
avoid conflict.
    
    This is only specific to XS, ran the following tests:
    
    BVT: test/integration/smoke/test_volumes.py
    
    Test Volume creation for all Disk Offerings (incl. custom) ... === 
TestName: test_01_create_volume | Status : SUCCESS ===
    ok
    Attach a created Volume to a Running VM ... === TestName: 
test_02_attach_volume | Status : SUCCESS ===
    ok
    Download a Volume attached to a VM ... === TestName: 
test_03_download_attached_volume | Status : SUCCESS ===
    ok
    Delete a Volume attached to a VM ... === TestName: 
test_04_delete_attached_volume | Status : SUCCESS ===
    ok
    Detach a Volume attached to a VM ... === TestName: test_05_detach_volume | 
Status : SUCCESS ===
    ok
    Download a Volume unattached to an VM ... === TestName: 
test_06_download_detached_volume | Status : SUCCESS ===
    ok
    Test resize (negative) non-existent volume ... === TestName: 
test_07_resize_fail | Status : SUCCESS ===
    ok
    Test resize a volume ... === TestName: test_08_resize_volume | Status : 
SUCCESS ===
    ok
    Delete a Volume unattached to an VM ... === TestName: 
test_09_delete_detached_volume | Status : SUCCESS ===
    ok
    
    ----------------------------------------------------------------------
    Ran 9 tests in 1116.972s
    
    OK
    
    
    
    Regression: test/integration/component/test_volumes.py
    
    Test Volume attach/detach to VM (5 data volumes) ... === TestName: 
test_01_volume_attach_detach | Status : SUCCESS ===
    ok
    Test Attach volumes (max capacity) ... === TestName: test_01_volume_attach 
| Status : SUCCESS ===
    ok
    Test attach volumes (more than max) to an instance ... === TestName: 
test_02_volume_attach_max | Status : SUCCESS ===
    ok
    Test Volumes and ISO attach ... === TestName: test_01_volume_iso_attach | 
Status : SUCCESS ===
    ok
    Test custom disk sizes beyond range ... === TestName: 
test_deployVmWithCustomDisk | Status : SUCCESS ===
    ok
    @Desc:Volume is not retaining same uuid when migrating from one ... SKIP: 
No suitable storage pools found for volume migration.                        
Skipping
    Attach a created Volume to a Running VM ... === TestName: 
test_01_attach_volume | Status : SUCCESS ===
    ok
    Detach a Volume attached to a VM ... === TestName: test_02_detach_volume | 
Status : SUCCESS ===
    ok
    Delete a Volume unattached to an VM ... === TestName: 
test_03_delete_detached_volume | Status : SUCCESS ===
    ok
    Create a volume under a non-root domain as non-root-domain user ... === 
TestName: test_create_volume_under_domain | Status : SUCCESS ===
    ok
    
    ----------------------------------------------------------------------
    Ran 10 tests in 1750.686s
    
    OK (SKIP=1)


You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/koushik-das/cloudstack CLOUDSTACK-8826

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/cloudstack/pull/792.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #792
    
----
commit 1dd27bd449a8e3d70b011e66af431e866c7627c2
Author: Koushik Das <kous...@apache.org>
Date:   2015-09-09T07:30:17Z

    CLOUDSTACK-8826: XenServer - Use device id passed as part of attach volume 
API properly
    If device id passed as part of API and available then use it otherwise 
fallback on XS to automatically assign one.
    For ISO device id used is 3 and it is processed before any other entry to 
avoid conflict.

----


> XenServer - Use device id passed as part of attach volume API properly
> ----------------------------------------------------------------------
>
>                 Key: CLOUDSTACK-8826
>                 URL: https://issues.apache.org/jira/browse/CLOUDSTACK-8826
>             Project: CloudStack
>          Issue Type: Bug
>      Security Level: Public(Anyone can view this level - this is the 
> default.) 
>          Components: XenServer
>    Affects Versions: 4.6.0
>            Reporter: Koushik Das
>            Assignee: Koushik Das
>             Fix For: 4.6.0
>
>
> Random failures were seen in XS attach/detach volume test scenarios (many 
> attach/detach were performed on the same VM over a span of 24 hrs).
> The failures happened as the device id for attaching volume wasn't available 
> in HV. Some detached volume didn't got cleaned up properly and so the device 
> id wasn't released.
> The fix would be clean up stale volumes before attaching new ones so the 
> device slots are released. Also using the device id should be best effort and 
> if that particular id is not available in XS, it should fallback on using an 
> id that is available and automatically assigned.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to