[ https://issues.apache.org/jira/browse/CLOUDSTACK-7079?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14055855#comment-14055855 ]
Likitha Shetty edited comment on CLOUDSTACK-7079 at 7/9/14 5:27 AM: -------------------------------------------------------------------- My bad Santhosh, I copy-pasted the wrong file in the comment. The file that I wanted to point to was - _framework/cluster/src/com/cloud/cluster/dao/ManagementServerHostDaoImpl.java_. >From what I can see, MS runId is not updated upon MS restart because DB >transaction that should make the update is always rolled back. {noformat} ManagementServerHostDaoImpl::update(long id, long runid, String name, String version, String serviceIP, int servicePort, Date lastUpdate) {noformat} And since MS doesn't have a right runId in the DB, while trying to update Cluster heartbeat CloudStack throws a 'runid xxx is no longer valid' error . {noformat} ManagementServerHostDaoImpl::update(long id, long runid, Date lastUpdate) {noformat}. was (Author: likithas): My bad Santhosh, I copy-pasted the wrong file in the comment. The file that I wanted to point to was _framework/cluster/src/com/cloud/cluster/dao/ManagementServerHostDaoImpl.java_. > 'update:Exception:Invalid cluster session detected' error thrown after MS > restart > --------------------------------------------------------------------------------- > > Key: CLOUDSTACK-7079 > URL: https://issues.apache.org/jira/browse/CLOUDSTACK-7079 > Project: CloudStack > Issue Type: Bug > Security Level: Public(Anyone can view this level - this is the > default.) > Components: Management Server > Affects Versions: 4.5.0 > Reporter: Likitha Shetty > Assignee: Santhosh Kumar Edukulla > Priority: Critical > Fix For: 4.5.0 > > > After an MS restart the following error is observed in the logs- > {noformat} > 2014-07-08 21:27:54,548 WARN [c.c.c.d.ManagementServerHostDaoImpl] > (Cluster-Heartbeat-1:ctx-d357302f) update:Exception:Invalid cluster session > detected > com.cloud.utils.exception.CloudRuntimeException: Invalid cluster session > detected > at > com.cloud.cluster.dao.ManagementServerHostDaoImpl.update(ManagementServerHostDaoImpl.java:147) > 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 > com.cloud.utils.db.TransactionContextInterceptor.invoke(TransactionContextInterceptor.java:34) > 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.$Proxy160.update(Unknown Source) > at > com.cloud.cluster.ClusterManagerImpl$4.runInContext(ClusterManagerImpl.java:545) > 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 > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) > at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304) > at > java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178) > at > java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) > 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:744) > Caused by: com.cloud.cluster.ClusterInvalidSessionException: runid > 1404835017785 is no longer valid > at > com.cloud.cluster.dao.ManagementServerHostDaoImpl.update(ManagementServerHostDaoImpl.java:147) > ... 26 more > {noformat} > The reason for the above error is that after an MS restart, Management > Server's runId is not updated. The update fails with the below - > {noformat} > 2014-07-08 21:27:52,995 INFO [c.c.c.ClusterManagerImpl] (main:null) > Management server 55528590152550 is being started > 2014-07-08 21:27:52,996 DEBUG [c.c.u.d.T.Transaction] (main:null) Rolling > back the transaction: Time = 3 Name = tx-5; called by > -TransactionLegacy.rollback:905-TransactionLegacy.removeUpTo:848-TransactionLegacy.close:672-TransactionContextInterceptor.invoke:36-ReflectiveMethodInvocation.proceed:161-ExposeInvocationInterceptor.invoke:91-ReflectiveMethodInvocation.proceed:172-JdkDynamicAopProxy.invoke:204-$Proxy160.update:-1-ClusterManagerImpl$6.doInTransaction:970-ClusterManagerImpl$6.doInTransaction:940-Transaction$2.doInTransaction:49 > 2014-07-08 21:27:53,026 WARN [c.c.u.d.T.Transaction] (main:null) txn: Commit > called when it is not a transaction: > -Transaction.execute:38-Transaction.execute:46-ClusterManagerImpl.start:940-CloudStackExtendedLifeCycle$1.with:75-CloudStackExtendedLifeCycle.with:153-CloudStackExtendedLifeCycle.startBeans:72-CloudStackExtendedLifeCycleStart.run:46-DefaultModuleDefinitionSet$1.with:105-DefaultModuleDefinitionSet.withModule:245-DefaultModuleDefinitionSet.withModule:250-DefaultModuleDefinitionSet.withModule:250-DefaultModuleDefinitionSet.withModule:233 > {noformat} -- This message was sent by Atlassian JIRA (v6.2#6252)