exceptions when multiple threads invoke create on the bean
nishantv Sep 17, 2001 6:26 PMHi all,
I have run into the following problem:
My client program starts multiple thread each creating
'n' number of components. Each thread invokes create method on the bean. However I get exceptions. I guess i need to make some configurational changes in my jboss.jcml where I am creating connection pool.
However I do not know what?
Any pointers?
BTW, when I run with single thread, it works just fine. When no. of threads is 2 or more exceptions are thrown.
I am including the stack trace below:
[StateComponentBean] XAException: tx=XidImpl [FormatId=257, GlobalId=cassini//5,
BranchQual=] errorCode=XAER_NOTA
[StateComponentBean] javax.transaction.xa.XAException
[StateComponentBean] at org.opentools.minerva.jdbc.xa.wrapper.XAResourceImpl.
start(XAResourceImpl.java:258)
[StateComponentBean] at org.jboss.tm.TxCapsule.startResource(TxCapsule.java:1
087)
[StateComponentBean] at org.jboss.tm.TxCapsule.enlistResource(TxCapsule.java:
614)
[StateComponentBean] at org.jboss.tm.TransactionImpl.enlistResource(Transacti
onImpl.java:111)
[StateComponentBean] at org.jboss.pool.jdbc.xa.XAConnectionFactory.prepareObj
ect(XAConnectionFactory.java:290)
[StateComponentBean] at org.jboss.pool.ObjectPool.getObject(ObjectPool.java:5
66)
[StateComponentBean] at org.jboss.pool.ObjectPool.getObject(ObjectPool.java:5
38)
[StateComponentBean] at org.jboss.pool.jdbc.xa.XAPoolDataSource.getConnection
(XAPoolDataSource.java:178)
[StateComponentBean] at org.jboss.ejb.plugins.jaws.jdbc.JDBCCommand.getConnec
tion(JDBCCommand.java:680)
[StateComponentBean] at org.jboss.ejb.plugins.jaws.jdbc.JDBCCommand.jdbcExecu
te(JDBCCommand.java:152)
[StateComponentBean] at org.jboss.ejb.plugins.jaws.jdbc.JDBCStoreEntityComman
d.execute(JDBCStoreEntityCommand.java:97)
[StateComponentBean] at org.jboss.ejb.plugins.jaws.JAWSPersistenceManager.sto
reEntity(JAWSPersistenceManager.java:168)
[StateComponentBean] at org.jboss.ejb.plugins.CMPPersistenceManager.storeEnti
ty(CMPPersistenceManager.java:397)
[StateComponentBean] at org.jboss.ejb.EntityContainer.storeEntity(EntityConta
iner.java:252)
[StateComponentBean] at org.jboss.ejb.plugins.EntitySynchronizationIntercepto
r$InstanceSynchronization.beforeCompletion(EntitySynchronizationInterceptor.java
:400)
[StateComponentBean] at org.jboss.tm.TxCapsule.doBeforeCompletion(TxCapsule.j
ava:1210)
[StateComponentBean] at org.jboss.tm.TxCapsule.commit(TxCapsule.java:304)
[StateComponentBean] at org.jboss.tm.TransactionImpl.commit(TransactionImpl.j
ava:76)
[StateComponentBean] at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransac
tions(TxInterceptorCMT.java:364)
[StateComponentBean] at org.jboss.ejb.plugins.TxInterceptorCMT.invokeHome(TxI
nterceptorCMT.java:86)
[StateComponentBean] at org.jboss.ejb.plugins.SecurityInterceptor.invokeHome(
SecurityInterceptor.java:103)
[StateComponentBean] at org.jboss.ejb.plugins.LogInterceptor.invokeHome(LogIn
terceptor.java:106)
[StateComponentBean] at org.jboss.ejb.EntityContainer.invokeHome(EntityContai
ner.java:420)
[StateComponentBean] at org.jboss.ejb.plugins.jrmp.server.JRMPContainerInvoke
r.invokeHome(JRMPContainerInvoker.java:370)
[StateComponentBean] at java.lang.reflect.Method.invoke(Native Method)
[StateComponentBean] at sun.rmi.server.UnicastServerRef.dispatch(Unknown Sour
ce)
[StateComponentBean] at sun.rmi.transport.Transport$1.run(Unknown Source)
[StateComponentBean] at java.security.AccessController.doPrivileged(Native Me
thod)
[StateComponentBean] at sun.rmi.transport.Transport.serviceCall(Unknown Sourc
e)
[StateComponentBean] at sun.rmi.transport.tcp.TCPTransport.handleMessages(Unk
nown Source)
[StateComponentBean] at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.
run(Unknown Source)
[StateComponentBean] at java.lang.Thread.run(Unknown Source)
[StateComponentBean] XAException: tx=XidImpl [FormatId=257, GlobalId=cassini//4,
BranchQual=] errorCode=XAER_NOTA
[StateComponentBean] javax.transaction.xa.XAException
[StateComponentBean] at org.opentools.minerva.jdbc.xa.wrapper.XAResourceImpl.
start(XAResourceImpl.java:258)
[StateComponentBean] at org.jboss.tm.TxCapsule.startResource(TxCapsule.java:1
087)
[StateComponentBean] at org.jboss.tm.TxCapsule.enlistResource(TxCapsule.java:
614)
[StateComponentBean] at org.jboss.tm.TransactionImpl.enlistResource(Transacti
onImpl.java:111)
[StateComponentBean] at org.jboss.pool.jdbc.xa.XAConnectionFactory.prepareObj
ect(XAConnectionFactory.java:290)
[StateComponentBean] at org.jboss.pool.ObjectPool.getObject(ObjectPool.java:5
66)
[StateComponentBean] at org.jboss.pool.ObjectPool.getObject(ObjectPool.java:5
38)
[StateComponentBean] at org.jboss.pool.jdbc.xa.XAPoolDataSource.getConnection
(XAPoolDataSource.java:178)
[StateComponentBean] at org.jboss.ejb.plugins.jaws.jdbc.JDBCCommand.getConnec
tion(JDBCCommand.java:680)
[StateComponentBean] at org.jboss.ejb.plugins.jaws.jdbc.JDBCCommand.jdbcExecu
te(JDBCCommand.java:152)
[StateComponentBean] at org.jboss.ejb.plugins.jaws.jdbc.JDBCStoreEntityComman
d.execute(JDBCStoreEntityCommand.java:97)
[StateComponentBean] at org.jboss.ejb.plugins.jaws.JAWSPersistenceManager.sto
reEntity(JAWSPersistenceManager.java:168)
[StateComponentBean] at org.jboss.ejb.plugins.CMPPersistenceManager.storeEnti
ty(CMPPersistenceManager.java:397)
[StateComponentBean] at org.jboss.ejb.EntityContainer.storeEntity(EntityConta
iner.java:252)
[StateComponentBean] at org.jboss.ejb.plugins.EntitySynchronizationIntercepto
r$InstanceSynchronization.beforeCompletion(EntitySynchronizationInterceptor.java
:400)
[StateComponentBean] at org.jboss.tm.TxCapsule.doBeforeCompletion(TxCapsule.j
ava:1210)
[StateComponentBean] at org.jboss.tm.TxCapsule.commit(TxCapsule.java:304)
[StateComponentBean] at org.jboss.tm.TransactionImpl.commit(TransactionImpl.j
ava:76)
[StateComponentBean] at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransac
tions(TxInterceptorCMT.java:364)
[StateComponentBean] at org.jboss.ejb.plugins.TxInterceptorCMT.invokeHome(TxI
nterceptorCMT.java:86)
[StateComponentBean] at org.jboss.ejb.plugins.SecurityInterceptor.invokeHome(
SecurityInterceptor.java:103)
[StateComponentBean] at org.jboss.ejb.plugins.LogInterceptor.invokeHome(LogIn
terceptor.java:106)
[StateComponentBean] at org.jboss.ejb.EntityContainer.invokeHome(EntityContai
ner.java:420)
[StateComponentBean] at org.jboss.ejb.plugins.jrmp.server.JRMPContainerInvoke
r.invokeHome(JRMPContainerInvoker.java:370)
[StateComponentBean] at java.lang.reflect.Method.invoke(Native Method)
[StateComponentBean] at sun.rmi.server.UnicastServerRef.dispatch(Unknown Sour
ce)
[StateComponentBean] at sun.rmi.transport.Transport$1.run(Unknown Source)
[StateComponentBean] at java.security.AccessController.doPrivileged(Native Me
thod)
[StateComponentBean] at sun.rmi.transport.Transport.serviceCall(Unknown Sourc
e)
[StateComponentBean] at sun.rmi.transport.tcp.TCPTransport.handleMessages(Unk
nown Source)
[StateComponentBean] at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.
run(Unknown Source)
[StateComponentBean] at java.lang.Thread.run(Unknown Source)
[StateComponentBean] XAException: tx=XidImpl [FormatId=257, GlobalId=cassini//4,
BranchQual=] errorCode=XAER_PROTO
[StateComponentBean] javax.transaction.xa.XAException
[StateComponentBean] at org.opentools.minerva.jdbc.xa.wrapper.XAResourceImpl.
end(XAResourceImpl.java:124)
[StateComponentBean] at org.jboss.tm.TxCapsule.endResource(TxCapsule.java:112
9)
[StateComponentBean] at org.jboss.tm.TxCapsule.delistResource(TxCapsule.java:
523)
[StateComponentBean] at org.jboss.tm.TransactionImpl.delistResource(Transacti
onImpl.java:99)
[StateComponentBean] at org.jboss.pool.jdbc.xa.XAConnectionFactory$2.closeCon
nection(XAConnectionFactory.java:104)
[StateComponentBean] at org.jboss.pool.jdbc.xa.XAConnectionFactory$2.connecti
onClosed(XAConnectionFactory.java:89)
[StateComponentBean] at org.opentools.minerva.jdbc.xa.wrapper.XAConnectionImp
l.clientConnectionClosed(XAConnectionImpl.java:126)
[StateComponentBean] at org.opentools.minerva.jdbc.xa.wrapper.XAClientConnect
ion.close(XAClientConnection.java:250)
[StateComponentBean] at org.jboss.ejb.plugins.jaws.jdbc.JDBCCommand.jdbcExecu
te(JDBCCommand.java:180)
[StateComponentBean] at org.jboss.ejb.plugins.jaws.jdbc.JDBCStoreEntityComman
d.execute(JDBCStoreEntityCommand.java:97)
[StateComponentBean] at org.jboss.ejb.plugins.jaws.JAWSPersistenceManager.sto
reEntity(JAWSPersistenceManager.java:168)
[StateComponentBean] at org.jboss.ejb.plugins.CMPPersistenceManager.storeEnti
ty(CMPPersistenceManager.java:397)
[StateComponentBean] at org.jboss.ejb.EntityContainer.storeEntity(EntityConta
iner.java:252)
[StateComponentBean] at org.jboss.ejb.plugins.EntitySynchronizationIntercepto
r$InstanceSynchronization.beforeCompletion(EntitySynchronizationInterceptor.java
:400)
[StateComponentBean] at org.jboss.tm.TxCapsule.doBeforeCompletion(TxCapsule.j
ava:1210)
[StateComponentBean] at org.jboss.tm.TxCapsule.commit(TxCapsule.java:304)
[StateComponentBean] at org.jboss.tm.TransactionImpl.commit(TransactionImpl.j
ava:76)
[StateComponentBean] at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransac
tions(TxInterceptorCMT.java:364)
[StateComponentBean] at org.jboss.ejb.plugins.TxInterceptorCMT.invokeHome(TxI
nterceptorCMT.java:86)
[StateComponentBean] at org.jboss.ejb.plugins.SecurityInterceptor.invokeHome(
SecurityInterceptor.java:103)
[StateComponentBean] at org.jboss.ejb.plugins.LogInterceptor.invokeHome(LogIn
terceptor.java:106)
[StateComponentBean] at org.jboss.ejb.EntityContainer.invokeHome(EntityContai
ner.java:420)
[StateComponentBean] at org.jboss.ejb.plugins.jrmp.server.JRMPContainerInvoke
r.invokeHome(JRMPContainerInvoker.java:370)
[StateComponentBean] at java.lang.reflect.Method.invoke(Native Method)
[StateComponentBean] at sun.rmi.server.UnicastServerRef.dispatch(Unknown Sour
ce)
[StateComponentBean] at sun.rmi.transport.Transport$1.run(Unknown Source)
[StateComponentBean] at java.security.AccessController.doPrivileged(Native Me
thod)
[StateComponentBean] at sun.rmi.transport.Transport.serviceCall(Unknown Sourc
e)
[StateComponentBean] at sun.rmi.transport.tcp.TCPTransport.handleMessages(Unk
nown Source)
[StateComponentBean] at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.
run(Unknown Source)
[StateComponentBean] at java.lang.Thread.run(Unknown Source)
[StateComponentBean] XAException: tx=XidImpl [FormatId=257, GlobalId=cassini//5,
BranchQual=] errorCode=XAER_PROTO
[StateComponentBean] javax.transaction.xa.XAException
[StateComponentBean] at org.opentools.minerva.jdbc.xa.wrapper.XAResourceImpl.
end(XAResourceImpl.java:124)
[StateComponentBean] at org.jboss.tm.TxCapsule.endResource(TxCapsule.java:112
9)
[StateComponentBean] at org.jboss.tm.TxCapsule.delistResource(TxCapsule.java:
523)
[StateComponentBean] at org.jboss.tm.TransactionImpl.delistResource(Transacti
onImpl.java:99)
[StateComponentBean] at org.jboss.pool.jdbc.xa.XAConnectionFactory$2.closeCon
nection(XAConnectionFactory.java:104)
[StateComponentBean] at org.jboss.pool.jdbc.xa.XAConnectionFactory$2.connecti
onClosed(XAConnectionFactory.java:89)
[StateComponentBean] at org.opentools.minerva.jdbc.xa.wrapper.XAConnectionImp
l.clientConnectionClosed(XAConnectionImpl.java:126)
[StateComponentBean] at org.opentools.minerva.jdbc.xa.wrapper.XAClientConnect
ion.close(XAClientConnection.java:250)
[StateComponentBean] at org.jboss.ejb.plugins.jaws.jdbc.JDBCCommand.jdbcExecu
te(JDBCCommand.java:180)
[StateComponentBean] at org.jboss.ejb.plugins.jaws.jdbc.JDBCStoreEntityComman
d.execute(JDBCStoreEntityCommand.java:97)
[StateComponentBean] at org.jboss.ejb.plugins.jaws.JAWSPersistenceManager.sto
reEntity(JAWSPersistenceManager.java:168)
[StateComponentBean] at org.jboss.ejb.plugins.CMPPersistenceManager.storeEnti
ty(CMPPersistenceManager.java:397)
[StateComponentBean] at org.jboss.ejb.EntityContainer.storeEntity(EntityConta
iner.java:252)
[StateComponentBean] at org.jboss.ejb.plugins.EntitySynchronizationIntercepto
r$InstanceSynchronization.beforeCompletion(EntitySynchronizationInterceptor.java
:400)
[StateComponentBean] at org.jboss.tm.TxCapsule.doBeforeCompletion(TxCapsule.j
ava:1210)
[StateComponentBean] at org.jboss.tm.TxCapsule.commit(TxCapsule.java:304)
[StateComponentBean] at org.jboss.tm.TransactionImpl.commit(TransactionImpl.j
ava:76)
[StateComponentBean] at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransac
tions(TxInterceptorCMT.java:364)
[StateComponentBean] at org.jboss.ejb.plugins.TxInterceptorCMT.invokeHome(TxI
nterceptorCMT.java:86)
[StateComponentBean] at org.jboss.ejb.plugins.SecurityInterceptor.invokeHome(
SecurityInterceptor.java:103)
[StateComponentBean] at org.jboss.ejb.plugins.LogInterceptor.invokeHome(LogIn
terceptor.java:106)
[StateComponentBean] at org.jboss.ejb.EntityContainer.invokeHome(EntityContai
ner.java:420)
[StateComponentBean] at org.jboss.ejb.plugins.jrmp.server.JRMPContainerInvoke
r.invokeHome(JRMPContainerInvoker.java:370)
[StateComponentBean] at java.lang.reflect.Method.invoke(Native Method)
[StateComponentBean] at sun.rmi.server.UnicastServerRef.dispatch(Unknown Sour
ce)
[StateComponentBean] at sun.rmi.transport.Transport$1.run(Unknown Source)
[StateComponentBean] at java.security.AccessController.doPrivileged(Native Me
thod)
[StateComponentBean] at sun.rmi.transport.Transport.serviceCall(Unknown Sourc
e)
[StateComponentBean] at sun.rmi.transport.tcp.TCPTransport.handleMessages(Unk
nown Source)
[StateComponentBean] at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.
run(Unknown Source)
[StateComponentBean] at java.lang.Thread.run(Unknown Source)
[StateComponentBean] XAException: tx=XidImpl [FormatId=257, GlobalId=cassini//5,
BranchQual=] errorCode=XAER_NOTA
[StateComponentBean] javax.transaction.xa.XAException
[StateComponentBean] at org.opentools.minerva.jdbc.xa.wrapper.XAResourceImpl.
rollback(XAResourceImpl.java:210)
[StateComponentBean] at org.jboss.tm.TxCapsule.rollbackResources(TxCapsule.ja
va:1539)
[StateComponentBean] at org.jboss.tm.TxCapsule.commit(TxCapsule.java:346)
[StateComponentBean] at org.jboss.tm.TransactionImpl.commit(TransactionImpl.j
ava:76)
[StateComponentBean] at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransac
tions(TxInterceptorCMT.java:364)
[StateComponentBean] at org.jboss.ejb.plugins.TxInterceptorCMT.invokeHome(TxI
nterceptorCMT.java:86)
[StateComponentBean] at org.jboss.ejb.plugins.SecurityInterceptor.invokeHome(
SecurityInterceptor.java:103)
[StateComponentBean] at org.jboss.ejb.plugins.LogInterceptor.invokeHome(LogIn
terceptor.java:106)
[StateComponentBean] at org.jboss.ejb.EntityContainer.invokeHome(EntityContai
ner.java:420)
[StateComponentBean] at org.jboss.ejb.plugins.jrmp.server.JRMPContainerInvoke
r.invokeHome(JRMPContainerInvoker.java:370)
[StateComponentBean] at java.lang.reflect.Method.invoke(Native Method)
[StateComponentBean] at sun.rmi.server.UnicastServerRef.dispatch(Unknown Sour
ce)
[StateComponentBean] at sun.rmi.transport.Transport$1.run(Unknown Source)
[StateComponentBean] at java.security.AccessController.doPrivileged(Native Me
thod)
[StateComponentBean] at sun.rmi.transport.Transport.serviceCall(Unknown Sourc
e)
[StateComponentBean] at sun.rmi.transport.tcp.TCPTransport.handleMessages(Unk
nown Source)
[StateComponentBean] at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.
run(Unknown Source)
[StateComponentBean] at java.lang.Thread.run(Unknown Source)
[EntitySynchronizationInterceptor] Store failed
java.rmi.ServerException: Store failed; nested exception is:
java.sql.SQLException: [ARES]Your transaction (process ID #7) was deadlo
cked with another process and has been chosen as the deadlock victim. Rerun your
transaction.
java.sql.SQLException: [ARES]Your transaction (process ID #7) was deadlocked wit
h another process and has been chosen as the deadlock victim. Rerun your transac
tion.
at com.inet.tds.a.a(Unknown Source)
at com.inet.tds.b.for(Unknown Source)
at com.inet.tds.b.executeUpdate(Unknown Source)
at org.opentools.minerva.jdbc.PreparedStatementInPool.executeUpdate(Prep
aredStatementInPool.java:82)
at org.jboss.ejb.plugins.jaws.jdbc.JDBCUpdateCommand.executeStatementAnd
HandleResult(JDBCUpdateCommand.java:49)
at org.jboss.ejb.plugins.jaws.jdbc.JDBCCommand.jdbcExecute(JDBCCommand.j
ava:160)
at org.jboss.ejb.plugins.jaws.jdbc.JDBCStoreEntityCommand.execute(JDBCSt
oreEntityCommand.java:97)
at org.jboss.ejb.plugins.jaws.JAWSPersistenceManager.storeEntity(JAWSPer
sistenceManager.java:168)
at org.jboss.ejb.plugins.CMPPersistenceManager.storeEntity(CMPPersistenc
eManager.java:397)
at org.jboss.ejb.EntityContainer.storeEntity(EntityContainer.java:252)
at org.jboss.ejb.plugins.EntitySynchronizationInterceptor$InstanceSynchr
onization.beforeCompletion(EntitySynchronizationInterceptor.java:400)
at org.jboss.tm.TxCapsule.doBeforeCompletion(TxCapsule.java:1210)
at org.jboss.tm.TxCapsule.commit(TxCapsule.java:304)
at org.jboss.tm.TransactionImpl.commit(TransactionImpl.java:76)
at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxIntercep
torCMT.java:364)
at org.jboss.ejb.plugins.TxInterceptorCMT.invokeHome(TxInterceptorCMT.ja
va:86)
at org.jboss.ejb.plugins.SecurityInterceptor.invokeHome(SecurityIntercep
tor.java:103)
at org.jboss.ejb.plugins.LogInterceptor.invokeHome(LogInterceptor.java:1
06)
at org.jboss.ejb.EntityContainer.invokeHome(EntityContainer.java:420)
at org.jboss.ejb.plugins.jrmp.server.JRMPContainerInvoker.invokeHome(JRM
PContainerInvoker.java:370)
at java.lang.reflect.Method.invoke(Native Method)
at sun.rmi.server.UnicastServerRef.dispatch(Unknown Source)
at sun.rmi.transport.Transport$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at sun.rmi.transport.Transport.serviceCall(Unknown Source)
at sun.rmi.transport.tcp.TCPTransport.handleMessages(Unknown Source)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(Unknown Sour
ce)
at java.lang.Thread.run(Unknown Source)