Dave Garbus created CLOUDSTACK-4630:
---------------------------------------

             Summary: Cannot apply userdata unless all NICs support userdata
                 Key: CLOUDSTACK-4630
                 URL: https://issues.apache.org/jira/browse/CLOUDSTACK-4630
             Project: CloudStack
          Issue Type: Bug
      Security Level: Public (Anyone can view this level - this is the default.)
          Components: Network Devices
    Affects Versions: 4.1.1
         Environment: CentOS 6.4 x86_64
            Reporter: Dave Garbus


To reproduce this issue, follow the steps below:

1. Create two network offerings, one with UserData service (virtual router) and 
one without.
2. Add two NICs to the virtual machine with networks corresponding to each 
network offering above.
3. Call updateVirtualMachine on the VM, specifying userdata.

The update will fail with the following error:

: Service UserData is not supported in the network id=217

If the NIC without UserData support is removed, the update will go through 
without issue. In my opinion, this should not cause the whole update to fail, 
but only update UserData for the relevant NICs.


Full trace below:
2013-09-09 14:40:21,316 ERROR [cloud.api.ApiServer] (http-6443-exec-3:null) 
unhandled exception executing api command: updateVirtualMachine
com.cloud.exception.UnsupportedServiceException: Service UserData is not 
supported in the network id=217
        at 
com.cloud.network.dao.NetworkServiceMapDaoImpl.getProviderForServiceInNetwork(NetworkServiceMapDaoImpl.java:126)
        at 
com.cloud.utils.component.ComponentInstantiationPostProcessor$InterceptorDispatcher.intercept(ComponentInstantiationPostProcessor.java:125)
        at 
com.cloud.network.NetworkModelImpl.getUserDataUpdateProvider(NetworkModelImpl.java:824)
        at 
com.cloud.vm.UserVmManagerImpl.updateUserDataInternal(UserVmManagerImpl.java:2561)
        at 
com.cloud.vm.UserVmManagerImpl.updateVirtualMachine(UserVmManagerImpl.java:2532)
        at 
com.cloud.utils.component.ComponentInstantiationPostProcessor$InterceptorDispatcher.intercept(ComponentInstantiationPostProcessor.java:125)
        at 
org.apache.cloudstack.api.command.user.vm.UpdateVMCmd.execute(UpdateVMCmd.java:123)
        at com.cloud.api.ApiDispatcher.dispatch(ApiDispatcher.java:162)
        at com.cloud.api.ApiServer.queueCommand(ApiServer.java:505)
        at com.cloud.api.ApiServer.handleRequest(ApiServer.java:355)
        at com.cloud.api.ApiServlet.processRequest(ApiServlet.java:302)
        at com.cloud.api.ApiServlet.doGet(ApiServlet.java:66)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
        at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
        at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
        at 
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:555)
        at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
        at 
org.apache.coyote.http11.Http11NioProcessor.process(Http11NioProcessor.java:889)
        at 
org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:721)
        at 
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:2274)
        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)

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