You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cloudstack.apache.org by "venkata swamybabu budumuru (JIRA)" <ji...@apache.org> on 2013/04/22 09:17:15 UTC

[jira] [Created] (CLOUDSTACK-2131) [Performance][Enhancement] Avoid checking for providers that are not enabled while creating network.

venkata swamybabu budumuru created CLOUDSTACK-2131:
------------------------------------------------------

             Summary: [Performance][Enhancement] Avoid checking for providers that are not enabled while creating network.
                 Key: CLOUDSTACK-2131
                 URL: https://issues.apache.org/jira/browse/CLOUDSTACK-2131
             Project: CloudStack
          Issue Type: Bug
      Security Level: Public (Anyone can view this level - this is the default.)
          Components: Network Controller
    Affects Versions: 4.2.0
         Environment: commit 81e1ba3bb406f9546f0d46ccbfa3fbbb35b762e2
            Reporter: venkata swamybabu budumuru
             Fix For: 4.2.0


1. Have an advanced zone with VR as provider configured.
2. create a Network using the default isolated network offering (which uses VR as provider)
3. deploy a VM using the above network.

Observations:

(i) Currently, as part of prepare NIC, it is checking every provider that cloudstack supports irrespective of what is enabled/configured for the network.

2013-04-22 08:16:07,302 DEBUG [cloud.network.NetworkManagerImpl] (Job-Executor-12:job-19) Asking JuniperSRX to prepare for Nic[19-7-6cca3e52-9faf-4e57-93f3-91bbd45f1d56-10.1.1.127]
2013-04-22 08:16:07,308 DEBUG [cloud.network.NetworkManagerImpl] (Job-Executor-12:job-19) Asking Netscaler to prepare for Nic[19-7-6cca3e52-9faf-4e57-93f3-91bbd45f1d56-10.1.1.127]
2013-04-22 08:16:07,313 DEBUG [cloud.network.NetworkManagerImpl] (Job-Executor-12:job-19) Asking F5BigIP to prepare for Nic[19-7-6cca3e52-9faf-4e57-93f3-91bbd45f1d56-10.1.1.127]
2013-04-22 08:16:07,318 DEBUG [cloud.network.NetworkManagerImpl] (Job-Executor-12:job-19) Asking CiscoNexus1000vVSM to prepare for Nic[19-7-6cca3e52-9faf-4e57-93f3-91bbd45f1d56-10.1.1.127]
2013-04-22 08:16:07,318 DEBUG [cloud.network.NetworkManagerImpl] (Job-Executor-12:job-19) Asking CiscoVNMC to prepare for Nic[19-7-6cca3e52-9faf-4e57-93f3-91bbd45f1d56-10.1.1.127]
2013-04-22 08:16:07,324 DEBUG [cloud.network.NetworkManagerImpl] (Job-Executor-12:job-19) Asking NiciraNvp to prepare for Nic[19-7-6cca3e52-9faf-4e57-93f3-91bbd45f1d56-10.1.1.127]
2013-04-22 08:16:07,328 DEBUG [cloud.network.NetworkManagerImpl] (Job-Executor-12:job-19) Asking MidoNetElement to prepare for Nic[19-7-6cca3e52-9faf-4e57-93f3-91bbd45f1d56-10.1.1.127]
2013-04-22 08:16:07,334 DEBUG [cloud.network.NetworkManagerImpl] (Job-Executor-12:job-19) Asking BigSwitchVnsElement to prepare for Nic[19-7-6cca3e52-9faf-4e57-93f3-91bbd45f1d56-10.1.1.127]
2013-04-22 08:16:07,339 DEBUG [cloud.network.NetworkManagerImpl] (Job-Executor-12:job-19) Asking VirtualRouter to prepare for Nic[19-7-6cca3e52-9faf-4e57-93f3-91bbd45f1d56-10.1.1.127]
2013-04-22 08:16:21,131 DEBUG [cloud.network.NetworkManagerImpl] (Job-Executor-12:job-19) Asking Ovs to prepare for Nic[19-7-6cca3e52-9faf-4e57-93f3-91bbd45f1d56-10.1.1.127]
2013-04-22 08:16:21,131 DEBUG [cloud.network.NetworkManagerImpl] (Job-Executor-12:job-19) Asking SecurityGroupProvider to prepare for Nic[19-7-6cca3e52-9faf-4e57-93f3-91bbd45f1d56-10.1.1.127]
2013-04-22 08:16:21,141 DEBUG [cloud.network.NetworkManagerImpl] (Job-Executor-12:job-19) Asking VpcVirtualRouter to prepare for Nic[19-7-6cca3e52-9faf-4e57-93f3-91bbd45f1d56-10.1.1.127]

(ii) In the latest release of cloudstack no. of such network providers list has grown big and it is better to optimize this area of code to minimize time in deploying/ addNicTo virtual machine.

(iii) Did a quick test by removing the following tables and then deploying a VM and it failed though the network is not using ASA service

external_cisco_asa1000v_devices
external_cisco_vnmc_devices
network_asa1000v_map

Caused by: com.cloud.utils.exception.CloudRuntimeException: DB Exception on: com.mysql.jdbc.PreparedStatement@72c4f1e9: SELECT network_asa1000v_map.id, network_asa1000v_map.network_id, network_asa1000v_map.asa1000v_id FROM network_asa1000v_map WHERE network_asa1000v_map.network_id = 210  ORDER BY RAND() LIMIT 1
        at com.cloud.utils.db.GenericDaoBase.searchIncludingRemoved(GenericDaoBase.java:415)
        at com.cloud.utils.component.ComponentInstantiationPostProcessor$InterceptorDispatcher.intercept(ComponentInstantiationPostProcessor.java:125)
        at com.cloud.utils.db.GenericDaoBase.searchIncludingRemoved(GenericDaoBase.java:350)
        at com.cloud.utils.component.ComponentInstantiationPostProcessor$InterceptorDispatcher.intercept(ComponentInstantiationPostProcessor.java:125)
        at com.cloud.utils.db.GenericDaoBase.findOneIncludingRemovedBy(GenericDaoBase.java:860)
        at com.cloud.utils.component.ComponentInstantiationPostProcessor$InterceptorDispatcher.intercept(ComponentInstantiationPostProcessor.java:125)
        at com.cloud.utils.db.GenericDaoBase.findOneBy(GenericDaoBase.java:871)
        at com.cloud.utils.component.ComponentInstantiationPostProcessor$InterceptorDispatcher.intercept(ComponentInstantiationPostProcessor.java:125)
        at com.cloud.network.dao.NetworkAsa1000vMapDaoImpl.findByNetworkId(NetworkAsa1000vMapDaoImpl.java:51)
        at com.cloud.utils.component.ComponentInstantiationPostProcessor$InterceptorDispatcher.intercept(ComponentInstantiationPostProcessor.java:125)
        at com.cloud.network.element.CiscoVnmcElement.prepare(CiscoVnmcElement.java:394)
        at com.cloud.network.NetworkManagerImpl.prepareElement(NetworkManagerImpl.java:1589)
        at com.cloud.network.NetworkManagerImpl.prepareNic(NetworkManagerImpl.java:1706)
        at com.cloud.network.NetworkManagerImpl.prepare(NetworkManagerImpl.java:1647)
        at com.cloud.vm.VirtualMachineManagerImpl.advanceStart(VirtualMachineManagerImpl.java:748)
        ... 20 more
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'cloud.network_asa1000v_map' doesn't exist
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:532)
        at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
        at com.mysql.jdbc.Util.getInstance(Util.java:386)
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1053)
        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4074)
        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4006)
        at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2468)
        at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2629)
        at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2719)
        at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2155)
        at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:2318)
        at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:96)
        at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:96)
        at com.cloud.utils.db.GenericDaoBase.searchIncludingRemoved(GenericDaoBase.java:409)
        ... 54 more
2013-04-22 07:53:17,109 DEBUG [cloud.async.AsyncJobManagerImpl] (Job-Executor-11:job-18) Complete async job-18, jobStatus: 2, resultCode: 530, result: Error Code: 534 Error text: Resource [Host:5] is unreachable: Host 5: Unable to start instance due to DB Exception on: com.mysql.jdbc.PreparedStatement@72c4f1e9: SELECT network_asa1000v_map.id, network_asa1000v_map.network_id, network_asa1000v_map.asa1000v_id FROM network_asa1000v_map WHERE network_asa1000v_map.network_id = 210  ORDER BY RAND() LIMIT 1


Attaching the vmops and api.log to bug.



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