[ https://issues.apache.org/jira/browse/JUDDI-969?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Alex O'Ree resolved JUDDI-969. ------------------------------ Resolution: Fixed haven't seen this in quite a while, still not sure what the root cause is. if anyone runs into it, reopen or comment back > Derby dead lock > --------------- > > Key: JUDDI-969 > URL: https://issues.apache.org/jira/browse/JUDDI-969 > Project: jUDDI > Issue Type: Bug > Affects Versions: 3.3.3 > Reporter: Alex O'Ree > Priority: Minor > > Not super sure what caused this, but it's not consistently reproducible. > Logging as informational only > eb 11, 2017 3:41:04 AM org.apache.cxf.phase.PhaseInterceptorChain > doDefaultLogging > WARNING: Application > {urn:uddi-org:api_v3_portType}UDDIInquiryService#{urn:uddi-org:api_v3_portType}get_bindingDetail > has thrown exception, unwinding now > org.apache.cxf.interceptor.Fault: Unable to obtain an object lock on "null". > at > org.apache.cxf.service.invoker.AbstractInvoker.createFault(AbstractInvoker.java:170) > at > org.apache.cxf.jaxws.AbstractJAXWSMethodInvoker.createFault(AbstractJAXWSMethodInvoker.java:272) > at > org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:136) > at > org.apache.cxf.jaxws.AbstractJAXWSMethodInvoker.invoke(AbstractJAXWSMethodInvoker.java:237) > at > org.apache.cxf.jaxws.JAXWSMethodInvoker.invoke(JAXWSMethodInvoker.java:69) > at > org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:75) > at > org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:58) > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) > at java.util.concurrent.FutureTask.run(FutureTask.java:262) > at > org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37) > at > org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:107) > at > org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:272) > at > org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121) > at > org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:249) > at > org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:248) > at > org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:222) > at > org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:153) > at > org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:171) > at > org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:286) > at > org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:206) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:650) > at > org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:262) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) > at > org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) > at > org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) > at > org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:956) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423) > at > org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079) > at > org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:625) > at > org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at > org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) > at java.lang.Thread.run(Thread.java:745) > Caused by: <openjpa-2.3.0-r422266:1540826 nonfatal store error> > org.apache.openjpa.persistence.OptimisticLockException: Unable to obtain an > object lock on "null". > at > org.apache.openjpa.jdbc.sql.DBDictionary.narrow(DBDictionary.java:4956) > at > org.apache.openjpa.jdbc.sql.DBDictionary.newStoreException(DBDictionary.java:4934) > at > org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:134) > at > org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:116) > at > org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:68) > at > org.apache.openjpa.jdbc.kernel.JDBCStoreManager.load(JDBCStoreManager.java:688) > at > org.apache.openjpa.kernel.DelegatingStoreManager.load(DelegatingStoreManager.java:117) > at > org.apache.openjpa.kernel.ROPStoreManager.load(ROPStoreManager.java:78) > at > org.apache.openjpa.kernel.StateManagerImpl.loadFields(StateManagerImpl.java:3108) > at > org.apache.openjpa.kernel.StateManagerImpl.loadField(StateManagerImpl.java:3188) > at > org.apache.openjpa.kernel.StateManagerImpl.beforeAccessField(StateManagerImpl.java:1653) > at > org.apache.openjpa.kernel.StateManagerImpl.accessingField(StateManagerImpl.java:1586) > at > org.apache.juddi.model.BindingTemplate.getBusinessService(BindingTemplate.java) > at > org.apache.juddi.mapping.MappingModelToApi.mapBindingTemplate(MappingModelToApi.java:691) > at > org.apache.juddi.api.impl.UDDIInquiryImpl.getBindingDetail(UDDIInquiryImpl.java:397) > at sun.reflect.GeneratedMethodAccessor155.invoke(Unknown Source) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:606) > at > org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:188) > at > org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:104) > ... 39 more > Caused by: java.sql.SQLTransactionRollbackException: A lock could not be > obtained due to a deadlock, cycle of locks and waiters is: > Lock : ROW, J3_UDDI_ENTITY, (9,14) > Waiting XID : {6379, S} , APP, SELECT t2.entity_key, t1.entity_key, > t2.authorized_name, t2.created, t2.xfer, t2.modified, > t2.modified_including_children, t2.node_id, t1.business_key FROM > j3_binding_template t0 INNER JOIN j3_business_service t1 ON t0.service_key = > t1.entity_key INNER JOIN j3_uddi_entity t2 ON t1.entity_key = t2.entity_key > WHERE t0.entity_key = ? > Granted XID : {6372, X} > Lock : ROW, J3_BINDING_TEMPLATE, (1,34) > Waiting XID : {6372, X} , APP, DELETE FROM j3_binding_template WHERE > entity_key = ? > Granted XID : {6379, S} > . The selected victim is XID : 6379. > at > org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(Unknown > Source) > at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Unknown > Source) > at > org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unknown > Source) > at > org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(Unknown > Source) > at org.apache.derby.impl.jdbc.EmbedConnection.handleException(Unknown > Source) > at org.apache.derby.impl.jdbc.ConnectionChild.handleException(Unknown > Source) > at > org.apache.derby.impl.jdbc.EmbedResultSet.closeOnTransactionError(Unknown > Source) > at org.apache.derby.impl.jdbc.EmbedResultSet.movePosition(Unknown > Source) > at org.apache.derby.impl.jdbc.EmbedResultSet.next(Unknown Source) > at > org.apache.tomcat.dbcp.dbcp.DelegatingResultSet.next(DelegatingResultSet.java:207) > at > org.apache.tomcat.dbcp.dbcp.DelegatingResultSet.next(DelegatingResultSet.java:207) > at > org.apache.openjpa.lib.jdbc.DelegatingResultSet.next(DelegatingResultSet.java:109) > at > org.apache.openjpa.jdbc.sql.ResultSetResult.nextInternal(ResultSetResult.java:222) > at > org.apache.openjpa.jdbc.sql.SelectImpl$SelectResult.nextInternal(SelectImpl.java:2447) > at > org.apache.openjpa.jdbc.sql.AbstractResult.next(AbstractResult.java:175) > at > org.apache.openjpa.jdbc.meta.strats.RelationFieldStrategy.load(RelationFieldStrategy.java:838) > at org.apache.openjpa.jdbc.meta.FieldMapping.load(FieldMapping.java:934) > at > org.apache.openjpa.jdbc.kernel.JDBCStoreManager.load(JDBCStoreManager.java:681) > ... 53 more > Caused by: java.sql.SQLException: A lock could not be obtained due to a > deadlock, cycle of locks and waiters is: > Lock : ROW, J3_UDDI_ENTITY, (9,14) > Waiting XID : {6379, S} , APP, SELECT t2.entity_key, t1.entity_key, > t2.authorized_name, t2.created, t2.xfer, t2.modified, > t2.modified_including_children, t2.node_id, t1.business_key FROM > j3_binding_template t0 INNER JOIN j3_business_service t1 ON t0.service_key = > t1.entity_key INNER JOIN j3_uddi_entity t2 ON t1.entity_key = t2.entity_key > WHERE t0.entity_key = ? > Granted XID : {6372, X} > Lock : ROW, J3_BINDING_TEMPLATE, (1,34) > Waiting XID : {6372, X} , APP, DELETE FROM j3_binding_template WHERE > entity_key = ? > Granted XID : {6379, S} > . The selected victim is XID : 6379. > at > org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source) > at > org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcrossDRDA(Unknown > Source) > ... 71 more > Caused by: ERROR 40001: A lock could not be obtained due to a deadlock, cycle > of locks and waiters is: > Lock : ROW, J3_UDDI_ENTITY, (9,14) > Waiting XID : {6379, S} , APP, SELECT t2.entity_key, t1.entity_key, > t2.authorized_name, t2.created, t2.xfer, t2.modified, > t2.modified_including_children, t2.node_id, t1.business_key FROM > j3_binding_template t0 INNER JOIN j3_business_service t1 ON t0.service_key = > t1.entity_key INNER JOIN j3_uddi_entity t2 ON t1.entity_key = t2.entity_key > WHERE t0.entity_key = ? > Granted XID : {6372, X} > Lock : ROW, J3_BINDING_TEMPLATE, (1,34) > Waiting XID : {6372, X} , APP, DELETE FROM j3_binding_template WHERE > entity_key = ? > Granted XID : {6379, S} > . The selected victim is XID : 6379. > 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.ConcurrentLockSet.lockObject(Unknown > Source) > at org.apache.derby.impl.services.locks.AbstractPool.lockObject(Unknown > Source) > at > org.apache.derby.impl.store.raw.xact.RowLocking2.lockRecordForRead(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.B2IRowLockingRR.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.NestedLoopJoinResultSet.getNextRowCore(Unknown > Source) > at > org.apache.derby.impl.sql.execute.ProjectRestrictResultSet.getNextRowCore(Unknown > Source) > at > org.apache.derby.impl.sql.execute.BasicNoPutResultSetImpl.getNextRow(Unknown > Source) > ... 64 more -- This message was sent by Atlassian Jira (v8.3.4#803005)