[JIRA-OS] Commented: (WF-197) Deadlocks on multiple (concurrent) calls to EJBWorkflow.initialize()
| Newsgroups | gmane.comp.java.open-symphony.cvs |
|---|---|
| Message-ID | <[email protected]> |
The following comment has been added to this issue:
Author: Hani Suleiman
Created: Wed, 10 Sep 2003 1:28 PM
Body:
Are you sure this isn't an issue with your DB? Have you tried another DB to see if it still happens?
---------------------------------------------------------------------
View the issue:
http://jira.opensymphony.com/secure/ViewIssue.jspa?key=WF-197
Here is an overview of the issue:
---------------------------------------------------------------------
Key: WF-197
Summary: Deadlocks on multiple (concurrent) calls to EJBWorkflow.initialize()
Type: Bug
Status: Assigned
Priority: Major
Project: OSWorkflow
Assignee: Patrick Lightbody
Reporter: Jan Naude
Created: Wed, 20 Aug 2003 12:29 PM
Updated: Wed, 20 Aug 2003 12:29 PM
Environment: Win 2000 / IBM Websphere 5.0 / IBM DB2 7.2
Description:
Hi
I have OSWorkflow 2.5 invokes by a Message driven Bean, with 2 threads on the MDB listener
I am trying to invoke the same workflow concurrently (using grinder 3.7) via 2 threads simultaneously, and having each thread put a message on the MDB's queue. I get the following exception :
COM.ibm.db2.jdbc.DB2Exception: [IBM][CLI Driver][DB2/NT] SQL0913N Unsuccessful execution caused by deadlock or timeout. Reason code "2". SQLSTATE=57033
at COM.ibm.db2.jdbc.app.SQLExceptionGenerator.throw_SQLException(SQLExceptionGenerator.java:270)
at COM.ibm.db2.jdbc.app.SQLExceptionGenerator.throw_SQLException(SQLExceptionGenerator.java:207)
at COM.ibm.db2.jdbc.app.SQLExceptionGenerator.check_return_code(SQLExceptionGenerator.java:458)
at COM.ibm.db2.jdbc.app.DB2PreparedStatement.execute2(DB2PreparedStatement.java:2110)
at COM.ibm.db2.jdbc.app.DB2PreparedStatement.executeQuery(DB2PreparedStatement.java:1596)
at com.ibm.ejs.cm.cache.CachedStatement.executeQuery(CachedStatement.java:288)
at com.ibm.ejs.cm.proxy.StatementProxy.executeQueryCommon(StatementProxy.java:303)
at com.ibm.ejs.cm.proxy.PreparedStatementProxy.executeQuery(PreparedStatementProxy.java:54)
at com.opensymphony.module.propertyset.ejb.types.EJSJDBCPersisterCMPPropertyEntryCMP_a7b60b31.findByNameAndId(EJSJDBCPersisterCMPPropertyEntryCMP_a7b60b31.java:241)
at com.opensymphony.module.propertyset.ejb.types.EJSCMPPropertyEntryHomeBean_a7b60b31.findByNameAndId(EJSCMPPropertyEntryHomeBean_a7b60b31.java:35)
at com.opensymphony.module.propertyset.ejb.types.EJSRemoteCMPPropertyEntryHome_a7b60b31.findByNameAndId(EJSRemoteCMPPropertyEntryHome_a7b60b31.java:181)
at com.opensymphony.module.propertyset.ejb.types._PropertyEntryHome_Stub.findByNameAndId(_PropertyEntryHome_Stub.java:332)
at com.opensymphony.module.propertyset.ejb.PropertyStoreEJB.getKeys(PropertyStoreEJB.java:247)
at com.opensymphony.module.propertyset.ejb.EJSRemoteStatelessPropertyStore_5f1019fa.getKeys(EJSRemoteStatelessPropertyStore_5f1019fa.java:114)
at com.opensymphony.module.propertyset.ejb._PropertyStore_Stub.getKeys(_PropertyStore_Stub.java:343)
at com.opensymphony.module.propertyset.ejb.EJBPropertySet.getKeys(EJBPropertySet.java:201)
at com.opensymphony.module.propertyset.AbstractPropertySet.getKeys(AbstractPropertySet.java:314)
at com.opensymphony.workflow.AbstractWorkflow.createVariableMap(AbstractWorkflow.java:120)
at com.opensymphony.workflow.AbstractWorkflow.verifyInputs(AbstractWorkflow.java:960)
at com.opensymphony.workflow.AbstractWorkflow.transitionWorkflow(AbstractWorkflow.java:437)
at com.opensymphony.workflow.AbstractWorkflow.initialize(AbstractWorkflow.java:380)
at com.opensymphony.workflow.ejb.EJSRemoteStatelessWorkflowRemote_48dddd26.initialize(EJSRemoteStatelessWorkflowRemote_48dddd26.java:335)
at com.opensymphony.workflow.ejb._WorkflowRemote_Stub.initialize(_WorkflowRemote_Stub.java:709)
at com.opensymphony.workflow.ejb.EJBWorkflow.initialize(EJBWorkflow.java:70)
at za.co.payworks.workflow.broker.WorkflowBrokerBean.executeAction(WorkflowBrokerBean.java:641)
at za.co.payworks.workflow.broker.WorkflowBrokerBean.onMessage(WorkflowBrokerBean.java:198)
at com.ibm.ejs.jms.listener.MDBWrapper$PriviledgedOnMessage.run(MDBWrapper.java:205)
at java.security.AccessController.doPrivileged(Native Method)
at com.ibm.ejs.jms.listener.MDBWrapper.callOnMessage(MDBWrapper.java:194)
at com.ibm.ejs.jms.listener.MDBWrapper.onMessage(MDBWrapper.java:172)
at com.ibm.mq.jms.MQSession.run(MQSession.java:1136)
at com.ibm.ejs.jms.JMSSessionHandle.run(JMSSessionHandle.java:905)
at com.ibm.ejs.jms.listener.ServerSession.connectionConsumerOnMessage(ServerSession.java:696)
at com.ibm.ejs.jms.listener.ServerSession.onMessage(ServerSession.java:481)
at com.ibm.ejs.jms.listener.ServerSession.dispatch(ServerSession.java:448)
at java.lang.reflect.Method.invoke(Native Method)
at com.ibm.ejs.jms.listener.ServerSessionDispatcher.dispatch(ServerSessionDispatcher.java:37)
at com.ibm.ejs.container.MDBWrapper.onMessage(MDBWrapper.java:90)
at com.ibm.ejs.container.MDBWrapper.onMessage(MDBWrapper.java:120)
at com.ibm.ejs.jms.listener.ServerSession.run(ServerSession.java:372)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:592)
How can I have multiple workflow executing at the same tiume
without getting these deadlocks?
---------------------------------------------------------------------
JIRA INFORMATION:
This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
http://jira.opensymphony.com/secure/Administrators.jspa
If you want more information on JIRA, or have a bug to report see:
http://www.atlassian.com/software/jira
-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf