You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cloudstack.apache.org by "Sheng Yang (JIRA)" <ji...@apache.org> on 2014/09/23 03:33:33 UTC

[jira] [Commented] (CLOUDSTACK-7605) [Basic zone] Restart network with clean up set to true in a zone with multiple pods leave routers in stopped state

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

Sheng Yang commented on CLOUDSTACK-7605:
----------------------------------------

There are two issues with it:
1. getRouters() mentioned above in the log, doesn't handle RestartNetwork with cleanup=true for basic zone, because pod wouldn't be specific at the time.
2. There is one bug introduced by Rohit, overrided the variable "routers" with some local values, result in only one of the routers in multiple pods would return, thus only one router would be started.

commit 6dd5c3fd42c70855d75156243dddc4933436baaf
Author: Rohit Yadav <bh...@apache.org>
Date:   Thu Oct 11 18:30:00 2012 +0530

    CLOUDSTACK-70: Improve restart network behaviour for basic network
    
    If cleanup=true, network elements and resources are shutdown and
    reimplemented. Else, shutdown/reimplementation is skipped. Enabled
    cleanup checkbox in CS UI.
    
    For both cases, VRs are only deployed for Pods with no running
    or starting VRs and Pods having running or starting user vms.
    
    New DAO helpers introduced:
    HostPodDao: listByDataCenterIdVMTypeAndStates
    DomainRouterDao: listByPodId and listByPodIdAndStates
    VMInstanceDao: listByPodId and corrected definition of listByTypeAndState
    
    Signed-off-by: Rohit Yadav <bh...@apache.org>



> [Basic zone] Restart network with clean up set to true in a zone with multiple pods leave routers in stopped state
> ------------------------------------------------------------------------------------------------------------------
>
>                 Key: CLOUDSTACK-7605
>                 URL: https://issues.apache.org/jira/browse/CLOUDSTACK-7605
>             Project: CloudStack
>          Issue Type: Bug
>      Security Level: Public(Anyone can view this level - this is the default.) 
>            Reporter: Sheng Yang
>            Assignee: Sheng Yang
>            Priority: Critical
>
> In a basic zone with more than one pod, if network is restarted with clean up set to true, routers in all Pods get recreated but remain in Stopped state. Only one router gets started up.
> Exception like this:
> 2014-09-22 15:42:21,583 DEBUG [o.a.c.f.j.i.AsyncJobManagerImpl] (Work-Job-Executor-14:ctx-51d3b3f9 job-25/job-32 ctx-79fd1959) Wake up jobs joined with job- 32 and disjoin all subjobs created from job- 32
> 2014-09-22 15:42:21,587 DEBUG [c.c.v.VmWorkJobDispatcher] (Work-Job-Executor-14:ctx-51d3b3f9 job-25/job-32) Done with run of VM work job: com.cloud.vm.VmWorkStart for VM 13, job origin: 25
> 2014-09-22 15:42:21,587 DEBUG [o.a.c.f.j.i.AsyncJobManagerImpl] (Work-Job-Executor-14:ctx-51d3b3f9 job-25/job-32) Done executing com.cloud.vm.VmWorkStart for job-32
> 2014-09-22 15:42:21,594 DEBUG [o.a.c.e.o.NetworkOrchestrator] (API-Job-Executor-13:ctx-693acbb4 job-25 ctx-5a20d246) Asking SecurityGroupProvider to implemenet Ntwk[204|Guest|6]
> 2014-09-22 15:42:21,595 WARN  [o.a.c.e.o.NetworkOrchestrator] (API-Job-Executor-13:ctx-693acbb4 job-25 ctx-5a20d246) Failed to implement network Ntwk[204|Guest|6] elements and resources as a part of network restart due to 
> java.lang.NullPointerException
>         at com.cloud.network.element.VirtualRouterElement.getRouters(VirtualRouterElement.java:971)
>         at com.cloud.network.element.VirtualRouterElement.prepareAggregatedExecution(VirtualRouterElement.java:1118)
>         at org.apache.cloudstack.engine.orchestration.NetworkOrchestrator.implementNetworkElementsAndResources(NetworkOrchestrator.java:1120)
>         at org.apache.cloudstack.engine.orchestration.NetworkOrchestrator.restartNetwork(NetworkOrchestrator.java:2484)
>         at com.cloud.network.NetworkServiceImpl.restartNetwork(NetworkServiceImpl.java:1873)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>         at java.lang.reflect.Method.invoke(Method.java:606)
>         at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
>         at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
>         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
>         at org.apache.cloudstack.network.contrail.management.EventUtils$EventInterceptor.invoke(EventUtils.java:106)
>         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:161)
>         at com.cloud.event.ActionEventInterceptor.invoke(ActionEventInterceptor.java:51)
>         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:161)
>         at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:91)
>         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
>         at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
>         at com.sun.proxy.$Proxy173.restartNetwork(Unknown Source)
>         at org.apache.cloudstack.api.command.user.network.RestartNetworkCmd.execute(RestartNetworkCmd.java:95)
>         at com.cloud.api.ApiDispatcher.dispatch(ApiDispatcher.java:141)
>         at com.cloud.api.ApiAsyncJobDispatcher.runJob(ApiAsyncJobDispatcher.java:108)
>         at org.apache.cloudstack.framework.jobs.impl.AsyncJobManagerImpl$5.runInContext(AsyncJobManagerImpl.java:513)
>         at org.apache.cloudstack.managed.context.ManagedContextRunnable$1.run(ManagedContextRunnable.java:49)
>         at org.apache.cloudstack.managed.context.impl.DefaultManagedContext$1.call(DefaultManagedContext.java:56)
>         at org.apache.cloudstack.managed.context.impl.DefaultManagedContext.callWithContext(DefaultManagedContext.java:103)
>         at org.apache.cloudstack.managed.context.impl.DefaultManagedContext.runWithContext(DefaultManagedContext.java:53)
>         at org.apache.cloudstack.managed.context.ManagedContextRunnable.run(ManagedContextRunnable.java:46)
>         at org.apache.cloudstack.framework.jobs.impl.AsyncJobManagerImpl$5.run(AsyncJobManagerImpl.java:470)
>         at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
>         at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
>         at java.util.concurrent.FutureTask.run(FutureTask.java:166)
>         at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>         at java.lang.Thread.run(Thread.java:724)



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