You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Emmanuel Venisse (JIRA)" <ji...@codehaus.org> on 2007/08/01 00:00:13 UTC
[jira] Closed: (CONTINUUM-721) JDO Deadlock stack whilst removing a
POM
[ http://jira.codehaus.org/browse/CONTINUUM-721?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Emmanuel Venisse closed CONTINUUM-721.
--------------------------------------
Assignee: Emmanuel Venisse
Resolution: Won't Fix
Fix Version/s: (was: Future)
out of date
> JDO Deadlock stack whilst removing a POM
> ----------------------------------------
>
> Key: CONTINUUM-721
> URL: http://jira.codehaus.org/browse/CONTINUUM-721
> Project: Continuum
> Issue Type: Bug
> Components: Core system, Database
> Affects Versions: 1.0.3
> Environment: linux amd64
> Reporter: Andy Brook
> Assignee: Emmanuel Venisse
>
> ognl.MethodFailedException: Method "removeProject" failed for object org.apache.maven.continuum.DefaultContinuum@663c0737 [javax.jdo.JDODataStoreException: Update request failed: UPDATE PROJECT SET CHECKOUT_RESULT_SCMRESULT_ID_OID=? WHERE ID=?
> NestedThrowables:
> SQL Exception: A lock could not be obtained due to a deadlock, cycle of locks and waiters is:
> Lock : ROW, PROJECT, (3,17)
> Waiting XID : {64696941, X} , SA, UPDATE PROJECT SET CHECKOUT_RESULT_SCMRESULT_ID_OID=? WHERE ID=?
> Granted XID : {64696933, X}
> Lock : ROW, BUILDDEFINITION, (3,28)
> Waiting XID : {64696933, X} , SA, INSERT INTO BUILDDEFINITION (SCHEDULE_ID_OID,LATEST_BUILD_ID,MODEL_ENCODING,BUILD_FILE,GOALS,DEFAULT_FOR_PROJECT,PROFILE_ID_OID,ARGUMENTS,ID) VALUES (?,?,?,?,?,?,?,?,?)
> Granted XID : {64696941, X}
> . The selected victim is XID : 64696941.]
> at ognl.OgnlRuntime.callAppropriateMethod(OgnlRuntime.java:796)
> at ognl.ObjectMethodAccessor.callMethod(ObjectMethodAccessor.java:61)
> at ognl.OgnlRuntime.callMethod(OgnlRuntime.java:819)
> at ognl.ASTMethod.getValueBody(ASTMethod.java:75)
> at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
> at ognl.SimpleNode.getValue(SimpleNode.java:210)
> at ognl.Ognl.getValue(Ognl.java:333)
> at ognl.Ognl.getValue(Ognl.java:378)
> at ognl.Ognl.getValue(Ognl.java:357)
> at org.codehaus.plexus.formica.action.DeleteEntity.uponSuccessfulValidation(DeleteEntity.java:57)
> at org.codehaus.plexus.formica.action.DeleteEntity.execute(DeleteEntity.java:47)
> at org.codehaus.plexus.summit.pipeline.valve.ActionValve.invoke(ActionValve.java:68)
> at org.codehaus.plexus.summit.pipeline.AbstractPipeline.invoke(AbstractPipeline.java:70)
> at org.codehaus.plexus.summit.Summit.doGet(Summit.java:54)
> at org.codehaus.plexus.summit.Summit.doPost(Summit.java:108)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:615)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:688)
> at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:358)
> at org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler.java:294)
> at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:567)
> at org.mortbay.http.HttpContext.handle(HttpContext.java:1807)
> at org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.java:525)
> at org.mortbay.http.HttpContext.handle(HttpContext.java:1757)
> at org.mortbay.http.HttpServer.service(HttpServer.java:879)
> at org.mortbay.http.HttpConnection.service(HttpConnection.java:789)
> at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:960)
> at org.mortbay.http.HttpConnection.handle(HttpConnection.java:806)
> at org.mortbay.http.SocketListener.handleConnection(SocketListener.java:218)
> at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:331)
> at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:520)
> /-- Encapsulated exception ------------\
> javax.jdo.JDODataStoreException: Update request failed: UPDATE PROJECT SET CHECKOUT_RESULT_SCMRESULT_ID_OID=? WHERE ID=?
> at org.jpox.store.rdbms.request.UpdateRequest.execute(UpdateRequest.java:267)
> at org.jpox.store.rdbms.table.ClassTable.update(ClassTable.java:2200)
> at org.jpox.store.StoreManager.update(StoreManager.java:786)
> at org.jpox.state.StateManagerImpl.flush(StateManagerImpl.java:4596)
> at org.jpox.AbstractPersistenceManager.flush(AbstractPersistenceManager.java:3167)
> at org.jpox.NonmanagedTransaction.getConnection(NonmanagedTransaction.java:235)
> at org.jpox.NonmanagedTransaction.getConnection(NonmanagedTransaction.java:204)
> at org.jpox.AbstractPersistenceManager.getConnection(AbstractPersistenceManager.java:370)
> at org.jpox.store.rdbms.scostore.InverseListStore.clear(InverseListStore.java:986)
> at org.jpox.store.mapping.CollectionMapping.preDelete(CollectionMapping.java:304)
> at org.jpox.store.mapping.CollectionMapping.deleteDependent(CollectionMapping.java:332)
> at org.jpox.store.rdbms.table.ClassTable.deleteDependent(ClassTable.java:2280)
> at org.jpox.store.StoreManager.deleteDependent(StoreManager.java:838)
> at org.jpox.state.StateManagerImpl.deletePersistent(StateManagerImpl.java:4049)
> at org.jpox.AbstractPersistenceManager.internalDeletePersistent(AbstractPersistenceManager.java:1391)
> at org.jpox.AbstractPersistenceManager.deletePersistent(AbstractPersistenceManager.java:1402)
> at org.jpox.store.rdbms.table.ClassTable.deleteDependent(ClassTable.java:2324)
> at org.jpox.store.StoreManager.deleteDependent(StoreManager.java:838)
> at org.jpox.state.StateManagerImpl.deletePersistent(StateManagerImpl.java:4049)
> at org.jpox.AbstractPersistenceManager.internalDeletePersistent(AbstractPersistenceManager.java:1391)
> at org.jpox.AbstractPersistenceManager.deletePersistent(AbstractPersistenceManager.java:1402)
> at org.codehaus.plexus.jdo.PlexusJdoUtils.removeObject(PlexusJdoUtils.java:53)
> at org.apache.maven.continuum.store.JdoContinuumStore.removeObject(JdoContinuumStore.java:969)
> at org.apache.maven.continuum.store.JdoContinuumStore.removeProject(JdoContinuumStore.java:901)
> at org.apache.maven.continuum.DefaultContinuum.removeProject(DefaultContinuum.java:328)
> 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 ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:491)
> at ognl.OgnlRuntime.callAppropriateMethod(OgnlRuntime.java:785)
> at ognl.ObjectMethodAccessor.callMethod(ObjectMethodAccessor.java:61)
> at ognl.OgnlRuntime.callMethod(OgnlRuntime.java:819)
> at ognl.ASTMethod.getValueBody(ASTMethod.java:75)
> at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
> at ognl.SimpleNode.getValue(SimpleNode.java:210)
> at ognl.Ognl.getValue(Ognl.java:333)
> at ognl.Ognl.getValue(Ognl.java:378)
> at ognl.Ognl.getValue(Ognl.java:357)
> at org.codehaus.plexus.formica.action.DeleteEntity.uponSuccessfulValidation(DeleteEntity.java:57)
> at org.codehaus.plexus.formica.action.DeleteEntity.execute(DeleteEntity.java:47)
> at org.codehaus.plexus.summit.pipeline.valve.ActionValve.invoke(ActionValve.java:68)
> at org.codehaus.plexus.summit.pipeline.AbstractPipeline.invoke(AbstractPipeline.java:70)
> at org.codehaus.plexus.summit.Summit.doGet(Summit.java:54)
> at org.codehaus.plexus.summit.Summit.doPost(Summit.java:108)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:615)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:688)
> at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:358)
> at org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler.java:294)
> at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:567)
> at org.mortbay.http.HttpContext.handle(HttpContext.java:1807)
> at org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.java:525)
> at org.mortbay.http.HttpContext.handle(HttpContext.java:1757)
> at org.mortbay.http.HttpServer.service(HttpServer.java:879)
> at org.mortbay.http.HttpConnection.service(HttpConnection.java:789)
> at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:960)
> at org.mortbay.http.HttpConnection.handle(HttpConnection.java:806)
> at org.mortbay.http.SocketListener.handleConnection(SocketListener.java:218)
> at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:331)
> at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:520)
> NestedThrowablesStackTrace:
> ERROR 40001: A lock could not be obtained due to a deadlock, cycle of locks and waiters is:
> Lock : ROW, PROJECT, (3,17)
> Waiting XID : {64696941, X} , SA, UPDATE PROJECT SET CHECKOUT_RESULT_SCMRESULT_ID_OID=? WHERE ID=?
> Granted XID : {64696933, X}
> Lock : ROW, BUILDDEFINITION, (3,28)
> Waiting XID : {64696933, X} , SA, INSERT INTO BUILDDEFINITION (SCHEDULE_ID_OID,LATEST_BUILD_ID,MODEL_ENCODING,BUILD_FILE,GOALS,DEFAULT_FOR_PROJECT,PROFILE_ID_OID,ARGUMENTS,ID) VALUES (?,?,?,?,?,?,?,?,?)
> Granted XID : {64696941, X}
> . The selected victim is XID : 64696941.
> at org.apache.derby.iapi.error.StandardException.newException(Unknown Source)
> at org.apache.derby.impl.services.locks.Deadlock.buildException(Unknown Source)
> at org.apache.derby.impl.services.locks.LockSet.lockObject(Unknown Source)
> at org.apache.derby.impl.services.locks.SinglePool.lockAnObject(Unknown Source)
> at org.apache.derby.impl.services.locks.SinglePool.lockObject(Unknown Source)
> at org.apache.derby.impl.store.raw.xact.RowLocking3.lockRecordForWrite(Unknown Source)
> at org.apache.derby.impl.store.access.heap.HeapController.lockRow(Unknown Source)
> at org.apache.derby.impl.store.access.heap.HeapController.lockRow(Unknown Source)
> at org.apache.derby.impl.store.access.btree.index.B2IRowLocking3.lockRowOnPage(Unknown Source)
> at org.apache.derby.impl.store.access.btree.index.B2IRowLocking3._lockScanRow(Unknown Source)
> at org.apache.derby.impl.store.access.btree.index.B2IRowLocking1.lockScanRow(Unknown Source)
> at org.apache.derby.impl.store.access.btree.BTreeForwardScan.fetchRows(Unknown Source)
> at org.apache.derby.impl.store.access.btree.BTreeScan.fetchNext(Unknown Source)
> at org.apache.derby.impl.sql.execute.TableScanResultSet.getNextRowCore(Unknown Source)
> at org.apache.derby.impl.sql.execute.IndexRowToBaseRowResultSet.getNextRowCore(Unknown Source)
> at org.apache.derby.impl.sql.execute.ProjectRestrictResultSet.getNextRowCore(Unknown Source)
> at org.apache.derby.impl.sql.execute.NormalizeResultSet.getNextRowCore(Unknown Source)
> at org.apache.derby.impl.sql.execute.DMLWriteResultSet.getNextRowCore(Unknown Source)
> at org.apache.derby.impl.sql.execute.UpdateResultSet.collectAffectedRows(Unknown Source)
> at org.apache.derby.impl.sql.execute.UpdateResultSet.open(Unknown Source)
> at org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unknown Source)
> at org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(Unknown Source)
> at org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeStatement(Unknown Source)
> at org.apache.derby.impl.jdbc.EmbedPreparedStatement.execute(Unknown Source)
> at org.jpox.store.rdbms.request.Request.executeUpdate(Request.java:78)
> at org.jpox.store.rdbms.request.UpdateRequest.execute(UpdateRequest.java:253)
> at org.jpox.store.rdbms.table.ClassTable.update(ClassTable.java:2200)
> at org.jpox.store.StoreManager.update(StoreManager.java:786)
> at org.jpox.state.StateManagerImpl.flush(StateManagerImpl.java:4596)
> at org.jpox.AbstractPersistenceManager.flush(AbstractPersistenceManager.java:3167)
> at org.jpox.NonmanagedTransaction.getConnection(NonmanagedTransaction.java:235)
> at org.jpox.NonmanagedTransaction.getConnection(NonmanagedTransaction.java:204)
> at org.jpox.AbstractPersistenceManager.getConnection(AbstractPersistenceManager.java:370)
> at org.jpox.store.rdbms.scostore.InverseListStore.clear(InverseListStore.java:986)
> at org.jpox.store.mapping.CollectionMapping.preDelete(CollectionMapping.java:304)
> at org.jpox.store.mapping.CollectionMapping.deleteDependent(CollectionMapping.java:332)
> at org.jpox.store.rdbms.table.ClassTable.deleteDependent(ClassTable.java:2280)
> at org.jpox.store.StoreManager.deleteDependent(StoreManager.java:838)
> at org.jpox.state.StateManagerImpl.deletePersistent(StateManagerImpl.java:4049)
> at org.jpox.AbstractPersistenceManager.internalDeletePersistent(AbstractPersistenceManager.java:1391)
> at org.jpox.AbstractPersistenceManager.deletePersistent(AbstractPersistenceManager.java:1402)
> at org.jpox.store.rdbms.table.ClassTable.deleteDependent(ClassTable.java:2324)
> at org.jpox.store.StoreManager.deleteDependent(StoreManager.java:838)
> at org.jpox.state.StateManagerImpl.deletePersistent(StateManagerImpl.java:4049)
> at org.jpox.AbstractPersistenceManager.internalDeletePersistent(AbstractPersistenceManager.java:1391)
> at org.jpox.AbstractPersistenceManager.deletePersistent(AbstractPersistenceManager.java:1402)
> at org.codehaus.plexus.jdo.PlexusJdoUtils.removeObject(PlexusJdoUtils.java:53)
> at org.apache.maven.continuum.store.JdoContinuumStore.removeObject(JdoContinuumStore.java:969)
> at org.apache.maven.continuum.store.JdoContinuumStore.removeProject(JdoContinuumStore.java:901)
> at org.apache.maven.continuum.DefaultContinuum.removeProject(DefaultContinuum.java:328)
> 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 ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:491)
> at ognl.OgnlRuntime.callAppropriateMethod(OgnlRuntime.java:785)
> at ognl.ObjectMethodAccessor.callMethod(ObjectMethodAccessor.java:61)
> at ognl.OgnlRuntime.callMethod(OgnlRuntime.java:819)
> at ognl.ASTMethod.getValueBody(ASTMethod.java:75)
> at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
> at ognl.SimpleNode.getValue(SimpleNode.java:210)
> at ognl.Ognl.getValue(Ognl.java:333)
> at ognl.Ognl.getValue(Ognl.java:378)
> at ognl.Ognl.getValue(Ognl.java:357)
> at org.codehaus.plexus.formica.action.DeleteEntity.uponSuccessfulValidation(DeleteEntity.java:57)
> at org.codehaus.plexus.formica.action.DeleteEntity.execute(DeleteEntity.java:47)
> at org.codehaus.plexus.summit.pipeline.valve.ActionValve.invoke(ActionValve.java:68)
> at org.codehaus.plexus.summit.pipeline.AbstractPipeline.invoke(AbstractPipeline.java:70)
> at org.codehaus.plexus.summit.Summit.doGet(Summit.java:54)
> at org.codehaus.plexus.summit.Summit.doPost(Summit.java:108)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:615)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:688)
> at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:358)
> at org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler.java:294)
> at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:567)
> at org.mortbay.http.HttpContext.handle(HttpContext.java:1807)
> at org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.java:525)
> at org.mortbay.http.HttpContext.handle(HttpContext.java:1757)
> at org.mortbay.http.HttpServer.service(HttpServer.java:879)
> at org.mortbay.http.HttpConnection.service(HttpConnection.java:789)
> at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:960)
> at org.mortbay.http.HttpConnection.handle(HttpConnection.java:806)
> at org.mortbay.http.SocketListener.handleConnection(SocketListener.java:218)
> at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:331)
> at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:520)
> \--------------------------------------/
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira