Details
-
Bug
-
Resolution: Unresolved
-
Major
-
None
-
7.0.0.Final
-
None
-
NEW
-
NEW
-
Description
Hello, we are using drools-flow with JPA, using Hibernate and Oracle RDBMS.
We do have multiple concurrent stateful sessions.
We are getting Deadlock error when we try processing heavy load.
There is a deadlock which is happening on correlationkey info table when the load is high.
I have created the index on event types table for instance id column as suggested in the other thread . but still we are facing the same issue.
Hibernate: delete from CorrelationPropertyInfo where propertyId=? and OPTLOCK=?
Hibernate: delete from CorrelationKeyInfo where keyId=? and OPTLOCK=?
<04-Jun-2019, 12:19:31,513 PM BST> <Warning> <org.drools.persistence.PersistableRunner> <BEA-000000> <Could not commit session
org.jbpm.workflow.instance.WorkflowRuntimeException: [MDAProcess2:123,225 - No Device for Rollback:28] – org.hibernate.exception.LockAcquisitionException: could not execute statement
at org.jbpm.workflow.instance.impl.NodeInstanceImpl.trigger(NodeInstanceImpl.java:180)
at org.jbpm.workflow.instance.impl.NodeInstanceImpl.triggerNodeInstance(NodeInstanceImpl.java:367)
at org.jbpm.workflow.instance.impl.NodeInstanceImpl.triggerCompleted(NodeInstanceImpl.java:326)
at org.jbpm.workflow.instance.node.ActionNodeInstance.triggerCompleted(ActionNodeInstance.java:60)
at org.jbpm.workflow.instance.node.ActionNodeInstance.internalTrigger(ActionNodeInstance.java:56)
Truncated. see log file for complete stacktrace
Caused By: javax.persistence.PersistenceException: org.hibernate.exception.LockAcquisitionException: could not execute statement
at org.hibernate.jpa.spi.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1692)
at org.hibernate.jpa.spi.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1602)
at org.hibernate.jpa.internal.QueryImpl.getResultList(QueryImpl.java:492)
at org.jbpm.persistence.JpaProcessPersistenceContext.remove(JpaProcessPersistenceContext.java:76)
at org.jbpm.persistence.processinstance.JPAProcessInstanceManager.removeProcessInstance(JPAProcessInstanceManager.java:176)
Truncated. see log file for complete stacktrace
Caused By: org.hibernate.exception.LockAcquisitionException: could not execute statement
at org.hibernate.dialect.Oracle8iDialect$3.convert(Oracle8iDialect.java:520)
at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:42)
at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:111)
at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:97)
at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:207)
Truncated. see log file for complete stacktrace
Caused By: java.sql.SQLException: ORA-00060: deadlock detected while waiting for resource
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:450)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:399)
at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:1059)
at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:522)
at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:257)
Truncated. see log file for complete stacktrace