cancel
Showing results for 
Search instead for 
Did you mean: 

Hibernate lock wait timeout exceeded

hbf
Champ on-the-rise
Champ on-the-rise
Hi,

We have problem programmatically creating a new child node. Sometimes this exception occurs:

Exception: JException: JDBC exception on Hibernate data access; nested exception is org.hibernate.exception.GenericJDBCException: could not update: [org.alfresco.repo.domain.hibernate.NodeImpl#28232]org.apache.hivemind.ApplicationRuntimeExceptionJDBC exception on Hibernate data access; nested exception is org.hibernate.exception.GenericJDBCException: could not update: [org.alfresco.repo.domain.hibernate.NodeImpl#28232]component: $CasePage_60@3c1[CasePage]location: context:/WEB-INF/CasePage.page, line 4, column 831 <?xml version="1.0" encoding="UTF-8"?>2 <!DOCTYPE page-specification PUBLIC "-//Apache Software Foundation//Tapestry Specification 4.1//EN"3 "http://jakarta.apache.org/tapestry/dtd/Tapestry_4_1.dtd">4 <page-specification class="org.myorg.tapestry.myapp.pages.CasePage">5 <property name="nodeRef" persist="client" initial-value="ognl:null"/>6 </page-specification>[ +/- ] Exception: JDBC exception on Hibernate data access; nested exception is org.hibernate.exception.GenericJDBCException: could not update: [org.alfresco.repo.domain.hibernate.NodeImpl#28232]org.springframework.orm.hibernate3.HibernateJdbcExceptionJDBC exception on Hibernate data access; nested exception is org.hibernate.exception.GenericJDBCException: could not update: [org.alfresco.repo.domain.hibernate.NodeImpl#28232][ +/- ] Exception: could not update: [org.alfresco.repo.domain.hibernate.NodeImpl#28232]org.hibernate.exception.GenericJDBCExceptioncould not update: [org.alfresco.repo.domain.hibernate.NodeImpl#28232]SQL: update alf_node set version=?, protocol=?, identifier=?, uuid=?, type_qname=?, acl_id=? where id=? and version=?SQLState: 41000errorCode: 1205messages: * could not update: [org.alfresco.repo.domain.hibernate.NodeImpl#28232]* Lock wait timeout exceeded; try restarting transaction throwableCount: 2throwables: * org.hibernate.exception.GenericJDBCException: could not update: [org.alfresco.repo.domain.hibernate.NodeImpl#28232]* java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction [ +/- ] Exception: Lock wait timeout exceeded; try restarting transactionjava.sql.SQLExceptionLock wait timeout exceeded; try restarting transactionSQLState: 41000errorCode: 1205Stack Trace:* com.mysql.jdbc.SQLError.createSQLException(SQLError.java:946)* com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2870)* com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1573)* com.mysql.jdbc.ServerPreparedStatement.serverExecute(ServerPreparedStatement.java:1160)* com.mysql.jdbc.ServerPreparedStatement.executeInternal(ServerPreparedStatement.java:685)* com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1400)* com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1314)* com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1299)* org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:101)* org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2357)* org.hibernate.persister.entity.AbstractEntityPersister.updateOrInsert(AbstractEntityPersister.java:2257)* org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2557)* org.hibernate.action.EntityUpdateAction.execute(EntityUpdateAction.java:92)* org.hibernate.engine.ActionQueue.execute(ActionQueue.java:248)* org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:232)* org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:140)* org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)* org.hibernate.event.def.DefaultAutoFlushEventListener.onAutoFlush(DefaultAutoFlushEventListener.java:41)* org.hibernate.impl.SessionImpl.autoFlushIfRequired(SessionImpl.java:969)* org.hibernate.impl.SessionImpl.list(SessionImpl.java:1114)* org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)* org.alfresco.repo.node.db.hibernate.HibernateNodeDaoServiceImpl$7.doInHibernate(HibernateNodeDaoServiceImpl.java:852)* org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:367)* org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:333)* org.alfresco.repo.node.db.hibernate.HibernateNodeDaoServiceImpl.getChildAssocRefs(HibernateNodeDaoServiceImpl.java:855)* sun.reflect.GeneratedMethodAccessor196.invoke(Unknown Source)* sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)* java.lang.reflect.Method.invoke(Method.java:585)* org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:281)* org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:187)* org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:154)* org.alfresco.repo.transaction.TransactionalDaoInterceptor.invoke(TransactionalDaoInterceptor.java:68)* org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)* org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:210)* $Proxy1.getChildAssocRefs(Unknown Source)* org.alfresco.repo.node.db.DbNodeServiceImpl.getChildAssocs(DbNodeServiceImpl.java:1287)* sun.reflect.GeneratedMethodAccessor191.invoke(Unknown Source)* sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)* java.lang.reflect.Method.invoke(Method.java:585)* org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:281)* org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:187)* org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:154)* org.alfresco.repo.transaction.TransactionResourceInterceptor.invoke(TransactionResourceInterceptor.java:138)* org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)* org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:210)* $Proxy3.getChildAssocs(Unknown Source)* sun.reflect.GeneratedMethodAccessor191.invoke(Unknown Source)* sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)* java.lang.reflect.Method.invoke(Method.java:585)* org.alfresco.repo.service.StoreRedirectorProxyFactory$RedirectorInvocationHandler.invoke(StoreRedirectorProxyFactory.java:221)* $Proxy4.getChildAssocs(Unknown Source)* sun.reflect.GeneratedMethodAccessor191.invoke(Unknown Source)* sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)* java.lang.reflect.Method.invoke(Method.java:585)* org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:281)* org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:187)* org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:154)* org.alfresco.repo.node.MLPropertyInterceptor.invoke(MLPropertyInterceptor.java:241)* org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)* org.alfresco.repo.node.MLPropertyInterceptor.invoke(MLPropertyInterceptor.java:241)* org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)* org.alfresco.repo.node.NodeRefPropertyMethodInterceptor.invoke(NodeRefPropertyMethodInterceptor.java:261)* org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)* org.alfresco.repo.node.NodeRefPropertyMethodInterceptor.invoke(NodeRefPropertyMethodInterceptor.java:261)* org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)* org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:210)* $Proxy3.getChildAssocs(Unknown Source)* sun.reflect.GeneratedMethodAccessor191.invoke(Unknown Source)* sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)* java.lang.reflect.Method.invoke(Method.java:585)* org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:281)* org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:187)* org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:154)* net.sf.acegisecurity.intercept.method.aopalliance.MethodSecurityInterceptor.invoke(MethodSecurityInterceptor.java:80)* org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)* org.alfresco.repo.security.permissions.impl.ExceptionTranslatorMethodInterceptor.invoke(ExceptionTranslatorMethodInterceptor.java:49)* org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)* org.alfresco.repo.audit.AuditComponentImpl.audit(AuditComponentImpl.java:241)* org.alfresco.repo.audit.AuditMethodInterceptor.invoke(AuditMethodInterceptor.java:69)* org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)* org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:107)* org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)* org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:210)* $Proxy3.getChildAssocs(Unknown Source)‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

Any idea what could be the cause of this?

I understand it's a concurrency issue, but that's about it.

Thanks,
Kaspar
2 REPLIES 2

jharrop
Champ in-the-making
Champ in-the-making
Hi

I'm seeing the same thing, with SVN head, which reports version 2.9.0 (B dialogs @build-number@) schema 116 - Installed version 2.9.0 (B dialogs @build-number@) schema 116.

Once this happens, the server has to be restarted.

Here is the exception.  Any ideas?

cheers,

Jason

24.01.2008 16:38:46 *WARN * JDBCExceptionReporter: SQL Error: 1205, SQLState: 41000 (JDBCExceptionReporter.java, line 77)24.01.2008 16:38:46 *ERROR* JDBCExceptionReporter: Lock wait timeout exceeded; try restarting transaction (JDBCExceptionReporter.java, line 78)24.01.2008 16:38:46 *ERROR* AbstractFlushingEventListener: Could not synchronize database state with session (AbstractFlushingEventListener.java, line 301)org.hibernate.exception.GenericJDBCException: could not update: [org.alfresco.repo.domain.hibernate.NodeImpl#10402]        at org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:103)        at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:91)        at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)        at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2375)        at org.hibernate.persister.entity.AbstractEntityPersister.updateOrInsert(AbstractEntityPersister.java:2257)        at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2557)        at org.hibernate.action.EntityUpdateAction.execute(EntityUpdateAction.java:92)        at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:248)        at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:232)        at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:140)        at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)        at org.hibernate.event.def.DefaultAutoFlushEventListener.onAutoFlush(DefaultAutoFlushEventListener.java:41)        at org.hibernate.impl.SessionImpl.autoFlushIfRequired(SessionImpl.java:969)        at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1114)        at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)        at org.alfresco.repo.node.db.hibernate.HibernateNodeDaoServiceImpl$8.doInHibernate(HibernateNodeDaoServiceImpl.java:889)        at org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:367)        at org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:333)        at org.alfresco.repo.node.db.hibernate.HibernateNodeDaoServiceImpl.getChildAssocRefs(HibernateNodeDaoServiceImpl.java:892)        at sun.reflect.GeneratedMethodAccessor254.invoke(Unknown Source)        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)        at java.lang.reflect.Method.invoke(Method.java:597)        at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:281)        at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:187)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:154)        at org.alfresco.repo.transaction.TransactionalDaoInterceptor.invoke(TransactionalDaoInterceptor.java:68)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)        at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:210)        at $Proxy1.getChildAssocRefs(Unknown Source)        at org.alfresco.repo.node.db.DbNodeServiceImpl.getChildAssocs(DbNodeServiceImpl.java:1290)        at sun.reflect.GeneratedMethodAccessor180.invoke(Unknown Source)        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)        at java.lang.reflect.Method.invoke(Method.java:597)        at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:281)        at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:187)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:154)        at org.alfresco.repo.transaction.TransactionResourceInterceptor.invoke(TransactionResourceInterceptor.java:144)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)        at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:210)        at $Proxy3.getChildAssocs(Unknown Source)        at sun.reflect.GeneratedMethodAccessor180.invoke(Unknown Source)        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)        at java.lang.reflect.Method.invoke(Method.java:597)        at org.alfresco.repo.service.StoreRedirectorProxyFactory$RedirectorInvocationHandler.invoke(StoreRedirectorProxyFactory.java:221)        at $Proxy4.getChildAssocs(Unknown Source)        at sun.reflect.GeneratedMethodAccessor180.invoke(Unknown Source)        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)        at java.lang.reflect.Method.invoke(Method.java:597)        at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:281)        at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:187)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:154)        at org.alfresco.repo.node.MLPropertyInterceptor.invoke(MLPropertyInterceptor.java:241)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)        at org.alfresco.repo.node.MLPropertyInterceptor.invoke(MLPropertyInterceptor.java:241)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)        at org.alfresco.repo.node.NodeRefPropertyMethodInterceptor.invoke(NodeRefPropertyMethodInterceptor.java:261)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)        at org.alfresco.repo.node.NodeRefPropertyMethodInterceptor.invoke(NodeRefPropertyMethodInterceptor.java:261)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)        at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:210)        at $Proxy3.getChildAssocs(Unknown Source)        at org.alfresco.repo.rule.RuleServiceImpl.getSavedRuleFolderRef(RuleServiceImpl.java:229)        at org.alfresco.repo.rule.RuleServiceImpl.getRules(RuleServiceImpl.java:375)        at org.alfresco.repo.rule.RuleServiceImpl.getRules(RuleServiceImpl.java:340)        at org.alfresco.repo.rule.RuleServiceImpl.hasRules(RuleServiceImpl.java:332)        at org.alfresco.repo.rule.RuleTypeImpl.triggerRuleType(RuleTypeImpl.java:132)        at org.alfresco.repo.rule.ruletrigger.RuleTriggerAbstractBase.triggerRules(RuleTriggerAbstractBase.java:162)        at org.alfresco.repo.rule.ruletrigger.OnPropertyUpdateRuleTrigger.onUpdateProperties(OnPropertyUpdateRuleTrigger.java:147)        at sun.reflect.GeneratedMethodAccessor377.invoke(Unknown Source)        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)        at java.lang.reflect.Method.invoke(Method.java:597)        at org.alfresco.repo.policy.JavaBehaviour$JavaMethodInvocationHandler.invoke(JavaBehaviour.java:179)        at $Proxy8.onUpdateProperties(Unknown Source)        at sun.reflect.GeneratedMethodAccessor121.invoke(Unknown Source)        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)        at java.lang.reflect.Method.invoke(Method.java:597)        at org.alfresco.repo.policy.PolicyFactory$MultiHandler.invoke(PolicyFactory.java:251)        at org.alfresco.repo.policy.$Proxy81.onUpdateProperties(Unknown Source)        at org.alfresco.repo.node.AbstractNodeServiceImpl.invokeOnUpdateProperties(AbstractNodeServiceImpl.java:341)        at org.alfresco.repo.node.db.DbNodeServiceImpl.setProperty(DbNodeServiceImpl.java:1167)        at sun.reflect.GeneratedMethodAccessor361.invoke(Unknown Source)        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)        at java.lang.reflect.Method.invoke(Method.java:597)        at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:281)        at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:187)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:154)        at org.alfresco.repo.transaction.TransactionResourceInterceptor.invoke(TransactionResourceInterceptor.java:144)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)        at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:210)        at $Proxy3.setProperty(Unknown Source)        at sun.reflect.GeneratedMethodAccessor361.invoke(Unknown Source)        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)        at java.lang.reflect.Method.invoke(Method.java:597)        at org.alfresco.repo.service.StoreRedirectorProxyFactory$RedirectorInvocationHandler.invoke(StoreRedirectorProxyFactory.java:221)        at $Proxy4.setProperty(Unknown Source)        at org.alfresco.repo.node.MLPropertyInterceptor.invoke(MLPropertyInterceptor.java:236)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)        at org.alfresco.repo.node.NodeRefPropertyMethodInterceptor.invoke(NodeRefPropertyMethodInterceptor.java:252)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)        at org.alfresco.repo.node.NodeRefPropertyMethodInterceptor.invoke(NodeRefPropertyMethodInterceptor.java:252)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)        at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:210)        at $Proxy3.setProperty(Unknown Source)        at sun.reflect.GeneratedMethodAccessor361.invoke(Unknown Source)        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)        at java.lang.reflect.Method.invoke(Method.java:597)        at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:281)        at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:187)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:154)        at net.sf.acegisecurity.intercept.method.aopalliance.MethodSecurityInterceptor.invoke(MethodSecurityInterceptor.java:80)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)        at org.alfresco.repo.security.permissions.impl.ExceptionTranslatorMethodInterceptor.invoke(ExceptionTranslatorMethodInterceptor.java:49)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)        at org.alfresco.repo.audit.AuditComponentImpl.auditImpl(AuditComponentImpl.java:264)        at org.alfresco.repo.audit.AuditComponentImpl.audit(AuditComponentImpl.java:194)        at org.alfresco.repo.audit.AuditMethodInterceptor.invoke(AuditMethodInterceptor.java:69)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)        at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:107)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)        at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:210)        at $Proxy3.setProperty(Unknown Source)        at org.alfresco.jcr.item.PropertyImpl.writeValue(PropertyImpl.java:621)        at org.alfresco.jcr.item.PropertyImpl.setPropertyValue(PropertyImpl.java:519)        at org.alfresco.jcr.item.NodeImpl.setProperty(NodeImpl.java:369)        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)        at java.lang.reflect.Method.invoke(Method.java:597)        at org.alfresco.jcr.util.JCRProxyFactory$SessionContextInvocationHandler.invoke(JCRProxyFactory.java:138)        at $Proxy85.setProperty(Unknown Source)        at org.plutext.server.AbstractWebService.checkinWithComment(AbstractWebService.java:952)        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)        at java.lang.reflect.Method.invoke(Method.java:597)        at org.apache.axis.providers.java.RPCProvider.invokeMethod(RPCProvider.java:397)        at org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:186)        at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:323)        at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)        at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)        at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)        at org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:454)        at org.apache.axis.server.AxisServer.invoke(AxisServer.java:281)        at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:699)        at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)        at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)        at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)        at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:542)        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870)        at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)        at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)        at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)        at java.lang.Thread.run(Thread.java:619)Caused by: java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:946)        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2870)        at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1573)        at com.mysql.jdbc.ServerPreparedStatement.serverExecute(ServerPreparedStatement.java:1160)        at com.mysql.jdbc.ServerPreparedStatement.executeInternal(ServerPreparedStatement.java:685)        at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1400)        at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1314)        at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1299)        at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:101)        at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2357)        … 158 moreorg.springframework.orm.hibernate3.HibernateJdbcException: JDBC exception on Hibernate data access; nested exception is org.hibernate.exception.GenericJDBCException: could not update: [org.alfresco.repo.domain.hibernate.NodeImpl#10402]Caused by: org.hibernate.exception.GenericJDBCException: could not update: [org.alfresco.repo.domain.hibernate.NodeImpl#10402]        at org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:103)        at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:91)        at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)        at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2375)        at org.hibernate.persister.entity.AbstractEntityPersister.updateOrInsert(AbstractEntityPersister.java:2257)        at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2557)        at org.hibernate.action.EntityUpdateAction.execute(EntityUpdateAction.java:92)        at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:248)        at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:232)        at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:140)        at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)        at org.hibernate.event.def.DefaultAutoFlushEventListener.onAutoFlush(DefaultAutoFlushEventListener.java:41)        at org.hibernate.impl.SessionImpl.autoFlushIfRequired(SessionImpl.java:969)        at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1114)        at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)        at org.alfresco.repo.node.db.hibernate.HibernateNodeDaoServiceImpl$8.doInHibernate(HibernateNodeDaoServiceImpl.java:889)        at org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:367)        at org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:333)        at org.alfresco.repo.node.db.hibernate.HibernateNodeDaoServiceImpl.getChildAssocRefs(HibernateNodeDaoServiceImpl.java:892)        at sun.reflect.GeneratedMethodAccessor254.invoke(Unknown Source)        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)        at java.lang.reflect.Method.invoke(Method.java:597)        at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:281)        at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:187)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:154)        at org.alfresco.repo.transaction.TransactionalDaoInterceptor.invoke(TransactionalDaoInterceptor.java:68)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)        at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:210)        at $Proxy1.getChildAssocRefs(Unknown Source)        at org.alfresco.repo.node.db.DbNodeServiceImpl.getChildAssocs(DbNodeServiceImpl.java:1290)        at sun.reflect.GeneratedMethodAccessor180.invoke(Unknown Source)        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)        at java.lang.reflect.Method.invoke(Method.java:597)        at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:281)        at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:187)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:154)        at org.alfresco.repo.transaction.TransactionResourceInterceptor.invoke(TransactionResourceInterceptor.java:144)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)        at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:210)        at $Proxy3.getChildAssocs(Unknown Source)        at sun.reflect.GeneratedMethodAccessor180.invoke(Unknown Source)        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)        at java.lang.reflect.Method.invoke(Method.java:597)        at org.alfresco.repo.service.StoreRedirectorProxyFactory$RedirectorInvocationHandler.invoke(StoreRedirectorProxyFactory.java:221)        at $Proxy4.getChildAssocs(Unknown Source)        at sun.reflect.GeneratedMethodAccessor180.invoke(Unknown Source)        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)        at java.lang.reflect.Method.invoke(Method.java:597)        at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:281)        at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:187)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:154)        at org.alfresco.repo.node.MLPropertyInterceptor.invoke(MLPropertyInterceptor.java:241)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)        at org.alfresco.repo.node.MLPropertyInterceptor.invoke(MLPropertyInterceptor.java:241)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)        at org.alfresco.repo.node.NodeRefPropertyMethodInterceptor.invoke(NodeRefPropertyMethodInterceptor.java:261)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)        at org.alfresco.repo.node.NodeRefPropertyMethodInterceptor.invoke(NodeRefPropertyMethodInterceptor.java:261)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)        at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:210)        at $Proxy3.getChildAssocs(Unknown Source)        at org.alfresco.repo.rule.RuleServiceImpl.getSavedRuleFolderRef(RuleServiceImpl.java:229)        at org.alfresco.repo.rule.RuleServiceImpl.getRules(RuleServiceImpl.java:375)        at org.alfresco.repo.rule.RuleServiceImpl.getRules(RuleServiceImpl.java:340)        at org.alfresco.repo.rule.RuleServiceImpl.hasRules(RuleServiceImpl.java:332)        at org.alfresco.repo.rule.RuleTypeImpl.triggerRuleType(RuleTypeImpl.java:132)        at org.alfresco.repo.rule.ruletrigger.RuleTriggerAbstractBase.triggerRules(RuleTriggerAbstractBase.java:162)        at org.alfresco.repo.rule.ruletrigger.OnPropertyUpdateRuleTrigger.onUpdateProperties(OnPropertyUpdateRuleTrigger.java:147)        at sun.reflect.GeneratedMethodAccessor377.invoke(Unknown Source)        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)        at java.lang.reflect.Method.invoke(Method.java:597)        at org.alfresco.repo.policy.JavaBehaviour$JavaMethodInvocationHandler.invoke(JavaBehaviour.java:179)        at $Proxy8.onUpdateProperties(Unknown Source)        at sun.reflect.GeneratedMethodAccessor121.invoke(Unknown Source)        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)        at java.lang.reflect.Method.invoke(Method.java:597)        at org.alfresco.repo.policy.PolicyFactory$MultiHandler.invoke(PolicyFactory.java:251)        at org.alfresco.repo.policy.$Proxy81.onUpdateProperties(Unknown Source)        at org.alfresco.repo.node.AbstractNodeServiceImpl.invokeOnUpdateProperties(AbstractNodeServiceImpl.java:341)        at org.alfresco.repo.node.db.DbNodeServiceImpl.setProperty(DbNodeServiceImpl.java:1167)        at sun.reflect.GeneratedMethodAccessor361.invoke(Unknown Source)        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)        at java.lang.reflect.Method.invoke(Method.java:597)        at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:281)        at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:187)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:154)        at org.alfresco.repo.transaction.TransactionResourceInterceptor.invoke(TransactionResourceInterceptor.java:144)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)        at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:210)        at $Proxy3.setProperty(Unknown Source)        at sun.reflect.GeneratedMethodAccessor361.invoke(Unknown Source)        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)        at java.lang.reflect.Method.invoke(Method.java:597)        at org.alfresco.repo.service.StoreRedirectorProxyFactory$RedirectorInvocationHandler.invoke(StoreRedirectorProxyFactory.java:221)        at $Proxy4.setProperty(Unknown Source)        at org.alfresco.repo.node.MLPropertyInterceptor.invoke(MLPropertyInterceptor.java:236)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)        at org.alfresco.repo.node.NodeRefPropertyMethodInterceptor.invoke(NodeRefPropertyMethodInterceptor.java:252)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)        at org.alfresco.repo.node.NodeRefPropertyMethodInterceptor.invoke(NodeRefPropertyMethodInterceptor.java:252)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)        at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:210)        at $Proxy3.setProperty(Unknown Source)        at sun.reflect.GeneratedMethodAccessor361.invoke(Unknown Source)        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)        at java.lang.reflect.Method.invoke(Method.java:597)        at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:281)        at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:187)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:154)        at net.sf.acegisecurity.intercept.method.aopalliance.MethodSecurityInterceptor.invoke(MethodSecurityInterceptor.java:80)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)        at org.alfresco.repo.security.permissions.impl.ExceptionTranslatorMethodInterceptor.invoke(ExceptionTranslatorMethodInterceptor.java:49)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)        at org.alfresco.repo.audit.AuditComponentImpl.auditImpl(AuditComponentImpl.java:264)        at org.alfresco.repo.audit.AuditComponentImpl.audit(AuditComponentImpl.java:194)        at org.alfresco.repo.audit.AuditMethodInterceptor.invoke(AuditMethodInterceptor.java:69)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)        at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:107)        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)        at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:210)        at $Proxy3.setProperty(Unknown Source)        at org.alfresco.jcr.item.PropertyImpl.writeValue(PropertyImpl.java:621)        at org.alfresco.jcr.item.PropertyImpl.setPropertyValue(PropertyImpl.java:519)        at org.alfresco.jcr.item.NodeImpl.setProperty(NodeImpl.java:369)        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)        at java.lang.reflect.Method.invoke(Method.java:597)        at org.alfresco.jcr.util.JCRProxyFactory$SessionContextInvocationHandler.invoke(JCRProxyFactory.java:138)        at $Proxy85.setProperty(Unknown Source)        at org.plutext.server.AbstractWebService.checkinWithComment(AbstractWebService.java:952)        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)        at java.lang.reflect.Method.invoke(Method.java:597)        at org.apache.axis.providers.java.RPCProvider.invokeMethod(RPCProvider.java:397)        at org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:186)        at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:323)        at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)        at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)        at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)        at org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:454)        at org.apache.axis.server.AxisServer.invoke(AxisServer.java:281)        at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:699)        at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)        at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)        at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)        at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:542)        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870)        at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)        at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)        at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)        at java.lang.Thread.run(Thread.java:619)Caused by: java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:946)        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2870)        at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1573)        at com.mysql.jdbc.ServerPreparedStatement.serverExecute(ServerPreparedStatement.java:1160)        at com.mysql.jdbc.ServerPreparedStatement.executeInternal(ServerPreparedStatement.java:685)        at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1400)        at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1314)        at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1299)        at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:101)        at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2357)        … 158 more‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

jharrop
Champ in-the-making
Champ in-the-making