cloudstack-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CLOUDSTACK-9180) Optimize concurrent VM deployment operation on same network
Date Wed, 16 Dec 2015 12:32:46 GMT

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

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

Github user koushik-das commented on the pull request:

    https://github.com/apache/cloudstack/pull/1251#issuecomment-165092578
  
    Simulator test results for basic zone. Failure is for NiciraNvp which can be ignored.
    -------------------------------------------------------------------------------------------------------------------------
    
    test DeployVM in anti-affinity groups ... === TestName: test_DeployVmAntiAffinityGroup
| Status : SUCCESS ===
    ok
    Test to deploy vm with a first fit offering ... === TestName: test_deployvm_firstfit |
Status : SUCCESS ===
    ok
    Test deploy VMs using user concentrated planner ... === TestName: test_deployvm_userconcentrated
| Status : SUCCESS ===
    ok
    Test deploy VMs using user dispersion planner ... === TestName: test_deployvm_userdispersing
| Status : SUCCESS ===
    ok
    Test to create disk offering ... === TestName: test_01_create_disk_offering | Status :
SUCCESS ===
    ok
    Test to create  a sparse type disk offering ... === TestName: test_02_create_sparse_type_disk_offering
| Status : SUCCESS ===
    ok
    Test to create  a sparse type disk offering ... === TestName: test_04_create_fat_type_disk_offering
| Status : SUCCESS ===
    ok
    Test to update existing disk offering ... === TestName: test_02_edit_disk_offering | Status
: SUCCESS ===
    ok
    Test to delete disk offering ... === TestName: test_03_delete_disk_offering | Status :
SUCCESS ===
    ok
    test update configuration setting at zone level scope ... === TestName: test_UpdateConfigParamWithScope
| Status : SUCCESS ===
    ok
    test_nic_secondaryip_add_remove (integration.smoke.test_multipleips_per_nic.TestDeployVM)
... === TestName: test_nic_secondaryip_add_remove | Status : SUCCESS ===
    ok
    Failure: ImportError (cannot import name NiciraNvp) ... === TestName: Failure: | Status
: EXCEPTION ===
    ERROR
    Test to create a portable public ip range ... === TestName: test_createPortablePublicIPRange
| Status : SUCCESS ===
    ok
    Test primary storage pools - XEN, KVM, VMWare. Not Supported for hyperv ... === TestName:
test_01_primary_storage_nfs | Status : SUCCESS ===
    ok
    Test reset virtual machine on reboot ... === TestName: test_01_reset_vm_on_reboot | Status
: SUCCESS ===
    ok
    Test system VM start ... === TestName: test_01_sys_vm_start | Status : SUCCESS ===
    ok
    Test system templates are ready ... === TestName: test_02_sys_template_ready | Status
: SUCCESS ===
    ok
    Test to create service offering ... === TestName: test_01_create_service_offering | Status
: SUCCESS ===
    ok
    Test to update existing service offering ... === TestName: test_02_edit_service_offering
| Status : SUCCESS ===
    ok
    Test to delete service offering ... === TestName: test_03_delete_service_offering | Status
: SUCCESS ===
    ok
    Test Edit template ... === TestName: test_02_edit_template | Status : SUCCESS ===
    ok
    Test delete template ... === TestName: test_03_delete_template | Status : SUCCESS ===
    ok
    Update & Test for template permissions ... === TestName: test_05_template_permissions
| Status : SUCCESS ===
    ok
    Test only public templates are visible to normal user ... === TestName: test_07_list_public_templates
| Status : SUCCESS ===
    ok
    Test System templates are not visible to normal user ... === TestName: test_08_list_system_templates
| 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
    Delete a Volume unattached to an VM ... === TestName: test_09_delete_detached_volume |
Status : SUCCESS ===
    ok
    
    Ran 29 tests in 462.825s
    
    FAILED (errors=1)
    -----------------------------------------------------------------------------------------------
    
    
    Selective advanced zone tests on simulator
    -------------------------------------------------------
    
    test_vm_life_cycle.py
    
    Test advanced zone virtual router ... === TestName: test_advZoneVirtualRouter | Status
: SUCCESS ===
    ok
    Test Deploy Virtual Machine ... === TestName: test_deploy_vm | Status : SUCCESS ===
    ok
    Test Multiple Deploy Virtual Machine ... === TestName: test_deploy_vm_multiple | Status
: SUCCESS ===
    ok
    Test Stop Virtual Machine ... === TestName: test_01_stop_vm | Status : SUCCESS ===
    ok
    Test Start Virtual Machine ... === TestName: test_02_start_vm | Status : SUCCESS ===
    ok
    Test Reboot Virtual Machine ... === TestName: test_03_reboot_vm | Status : SUCCESS ===
    ok
    Test destroy Virtual Machine ... === TestName: test_06_destroy_vm | Status : SUCCESS ===
    ok
    Test recover Virtual Machine ... === TestName: test_07_restore_vm | Status : SUCCESS ===
    ok
    Test migrate VM ... === TestName: test_08_migrate_vm | Status : SUCCESS ===
    ok
    Test destroy(expunge) Virtual Machine ... === TestName: test_09_expunge_vm | Status :
SUCCESS ===
    ok
    
    ----------------------------------------------------------------------
    Ran 10 tests in 306.163s
    
    OK
    
    test_network.py
    
    Test for delete account ... === TestName: test_delete_account | Status : SUCCESS ===
    ok
    Test for Associate/Disassociate public IP address for admin account ... === TestName:
test_public_ip_admin_account | Status : SUCCESS ===
    ok
    Test for Associate/Disassociate public IP address for user account ... === TestName: test_public_ip_user_account
| Status : SUCCESS ===
    ok
    Test for release public IP address ... === TestName: test_releaseIP | Status : SUCCESS
===
    ok
    
    ----------------------------------------------------------------------
    Ran 4 tests in 779.509s
    
    OK
    
    test_routers.py
    
    Test router internal advanced zone ... SKIP: Marvin configuration has no host credentials
                           to check router services
    Test restart network ... === TestName: test_03_restart_network_cleanup | Status : SUCCESS
===
    ok
    Test router basic setup ... === TestName: test_05_router_basic | Status : SUCCESS ===
    ok
    Test router advanced setup ... === TestName: test_06_router_advanced | Status : SUCCESS
===
    ok
    Test stop router ... === TestName: test_07_stop_router | Status : SUCCESS ===
    ok
    Test start router ... === TestName: test_08_start_router | Status : SUCCESS ===
    ok
    Test reboot router ... === TestName: test_09_reboot_router | Status : SUCCESS ===
    ok
    
    ----------------------------------------------------------------------
    Ran 7 tests in 41.786s
    
    OK (SKIP=1)
    
    test_multipleips_per_nic.py
    
    test_nic_secondaryip_add_remove (integration.smoke.test_multipleips_per_nic.TestDeployVM)
... === TestName: test_nic_secondaryip_add_remove | Status : SUCCESS ===
    ok
    
    ----------------------------------------------------------------------
    Ran 1 test in 25.983s
    
    OK
    
    test_portable_publicip.py
    
    Test to acquire a provisioned public ip range ... === TestName: test_createPortablePublicIPAcquire
| Status : SUCCESS ===
    ok
    Test to create a portable public ip range ... === TestName: test_createPortablePublicIPRange
| Status : SUCCESS ===
    ok
    
    ----------------------------------------------------------------------
    Ran 2 tests in 61.391s
    
    OK
    
    test_privategw_acl.py
    
    test_privategw_acl (integration.smoke.test_privategw_acl.TestPrivateGwACL) ... === TestName:
test_privategw_acl | Status : SUCCESS ===
    ok
    
    ----------------------------------------------------------------------
    Ran 1 test in 46.513s
    
    OK
    
    test_public_ip_range.py
    
    Test public IP range dedication ... === TestName: test_dedicatePublicIpRange | Status
: SUCCESS ===
    ok
    
    ----------------------------------------------------------------------
    Ran 1 test in 5.557s
    
    OK


> Optimize concurrent VM deployment operation on same network
> -----------------------------------------------------------
>
>                 Key: CLOUDSTACK-9180
>                 URL: https://issues.apache.org/jira/browse/CLOUDSTACK-9180
>             Project: CloudStack
>          Issue Type: Bug
>      Security Level: Public(Anyone can view this level - this is the default.) 
>          Components: Management Server
>    Affects Versions: 4.6.0
>            Reporter: Koushik Das
>            Assignee: Koushik Das
>             Fix For: 4.7.0
>
>
> During VM deployment a check is performed to see if VR exists or not. If not it is created
- first an entry is allocated in DB for VR and then it is deployed. The allocation logic is
placed in a lock (based on network id) so that only one thread does the allocation. But the
locking is implemented in a way such that all threads wait on that lock even when VR is already
allocated. The correct approach would be to check if VR is allocated or not and acquire lock
only when needed.
> This issue is more frequently seen when concurrently deploying VMs in basic zone as all
threads try to acquire lock using the same network id. In advanced zone operations are spread
across multiple networks and so less frequent.
> Refer to findOrDeployVirtualRouter() in RouterDeploymentDefinition.java.



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

Mime
View raw message