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