Re: deadlocks with castor
David Darras <[email protected]>
| Newsgroups | gmane.comp.cms.infoglue.devel |
|---|---|
| Message-ID | <[email protected]> |
Hi, Thanks for your answer Mattias. Mysqldump was locking the database to save it every 6 hours, so castor couldn't acquire locks during this time. As we had a big increase of users a few days ago, we didn't have the problem before. Best regards, David Darras Bogeblad Mattias a écrit : > Hi, > > Strange - no recent updates of the system or your own additions? Can you see if there are any locks still in the database after a restart? Could any other servers aquire the locks? > > Regards > Mattias Bogeblad > > -----Original Message----- > From: David Darras [mailto:[email protected]] > Sent: den 9 februari 2009 12:50 > To: [email protected] > Subject: [Infoglue-developer] deadlocks with castor > > Hello, > > We're having problems with infoglue's backend for a few days now. > Sometimes, the backend hangs for a short period when trying to update a > content. Here is the log: > > 09 févr. 2009 12:06:05.922 [ERROR] [TP-Processor9] > [org.infoglue.cms.controllers.kernel.impl.simple.ContentVersionController] > - An error occurred so we should not completes the > transaction:org.exolab.castor.jdo.LockNotGrantedException: Deadlock has > been detected while attempting to acquire a lock > org.exolab.castor.jdo.LockNotGrantedException: Deadlock has been > detected while attempting to acquire a lock > at > org.exolab.castor.persist.ObjectLock.detectDeadlock(ObjectLock.java:983) > at org.exolab.castor.persist.ObjectLock.upgrade(ObjectLock.java:770) > at > org.exolab.castor.persist.LockEngine$TypeInfo.upgrade(LockEngine.java:1324) > at > org.exolab.castor.persist.LockEngine$TypeInfo.access$600(LockEngine.java:1055) > at > org.exolab.castor.persist.LockEngine.softLock(LockEngine.java:832) > at > org.exolab.castor.persist.TransactionContext.delete(TransactionContext.java:1269) > at > org.exolab.castor.jdo.engine.DatabaseImpl.remove(DatabaseImpl.java:420) > at > org.infoglue.cms.controllers.kernel.impl.simple.RegistryController.clearRegistryVOList(RegistryController.java:1338) > at > org.infoglue.cms.controllers.kernel.impl.simple.RegistryController.updateContentVersion(RegistryController.java:224) > at > org.infoglue.cms.controllers.kernel.impl.simple.ContentVersionController.update(ContentVersionController.java:1034) > at > org.infoglue.cms.controllers.kernel.impl.simple.ContentVersionController.updateAttributeValue(ContentVersionController.java:1537) > at > org.infoglue.cms.applications.contenttool.actions.ViewRelationEditorAction.updateAttributeValue(ViewRelationEditorAction.java:359) > at > org.infoglue.cms.applications.contenttool.actions.ViewRelationEditorAction.doUpdateQualifyer(ViewRelationEditorAction.java:271) > 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:585) > at > org.infoglue.cms.applications.common.actions.WebworkAbstractAction.invokeCommand(WebworkAbstractAction.java:284) > at > org.infoglue.cms.applications.common.actions.WebworkAbstractAction.execute(WebworkAbstractAction.java:113) > at > webwork.dispatcher.GenericDispatcher.executeAction(GenericDispatcher.java:131) > at > webwork.dispatcher.ServletDispatcher.service(ServletDispatcher.java:174) > at > org.infoglue.deliver.portal.dispatcher.DeliveryServletDispatcher.service(DeliveryServletDispatcher.java:66) > at > org.infoglue.deliver.portal.dispatcher.PortalServletDispatcher.service(PortalServletDispatcher.java:176) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) > at > org.infoglue.cms.security.InfoGlueAuthenticationFilter.doFilter(InfoGlueAuthenticationFilter.java:185) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) > at > org.infoglue.cms.util.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:129) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) > at > org.infoglue.deliver.applications.filters.CacheEvictionFilter.doFilter(CacheEvictionFilter.java:92) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) > at > org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) > at > org.jstripe.tomcat.probe.Tomcat55AgentValve.invoke(Tomcat55AgentValve.java:20) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) > at > org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:199) > at > org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:282) > at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:767) > at > org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:697) > at > org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:889) > at > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) > at java.lang.Thread.run(Thread.java:595) > org.infoglue.cms.exception.SystemException: Deadlock has been detected > while attempting to acquire a lock > at > org.infoglue.cms.controllers.kernel.impl.simple.ContentVersionController.update(ContentVersionController.java:1050) > at > org.infoglue.cms.controllers.kernel.impl.simple.ContentVersionController.updateAttributeValue(ContentVersionController.java:1537) > at > org.infoglue.cms.applications.contenttool.actions.ViewRelationEditorAction.updateAttributeValue(ViewRelationEditorAction.java:359) > at > org.infoglue.cms.applications.contenttool.actions.ViewRelationEditorAction.doUpdateQualifyer(ViewRelationEditorAction.java:271) > 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:585) > at > org.infoglue.cms.applications.common.actions.WebworkAbstractAction.invokeCommand(WebworkAbstractAction.java:284) > at > org.infoglue.cms.applications.common.actions.WebworkAbstractAction.execute(WebworkAbstractAction.java:113) > at > webwork.dispatcher.GenericDispatcher.executeAction(GenericDispatcher.java:131) > at > webwork.dispatcher.ServletDispatcher.service(ServletDispatcher.java:174) > at > org.infoglue.deliver.portal.dispatcher.DeliveryServletDispatcher.service(DeliveryServletDispatcher.java:66) > at > org.infoglue.deliver.portal.dispatcher.PortalServletDispatcher.service(PortalServletDispatcher.java:176) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) > at > org.infoglue.cms.security.InfoGlueAuthenticationFilter.doFilter(InfoGlueAuthenticationFilter.java:185) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) > at > org.infoglue.cms.util.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:129) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) > at > org.infoglue.deliver.applications.filters.CacheEvictionFilter.doFilter(CacheEvictionFilter.java:92) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) > at > org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) > at > org.jstripe.tomcat.probe.Tomcat55AgentValve.invoke(Tomcat55AgentValve.java:20) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) > at > org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:199) > at > org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:282) > at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:767) > at > org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:697) > at > org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:889) > at > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) > at java.lang.Thread.run(Thread.java:595) > > We're using IG 2.8 with MySQL > Thanks, > David > > -- David DARRAS CRI - Université de Lille 1 ------------------------------------------------------------------------------ Create and Deploy Rich Internet Apps outside the browser with Adobe(R)AIR(TM) software. With Adobe AIR, Ajax developers can use existing skills and code to build responsive, highly engaging applications that combine the power of local resources and data with the reach of the web. Download the Adobe AIR SDK and Ajax docs to start building applications today-http://p.sf.net/sfu/adobe-com