geronimo-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Zakharov, Vasily M" <vasily.m.zakha...@intel.com>
Subject RE: SQL transaction deadlock
Date Tue, 30 May 2006 22:25:44 GMT
Santosh,

Unfortunately, that didn't help. :(
Also, commitbeforeautocommit only works for local transactions, and I
need XA.

Thank you anyway. :)

 Vasily


-----Original Message-----
From: Santosh Koti [mailto:Santosh_Koti@infosys.com] 
Sent: Friday, May 26, 2006 7:35 AM
To: user@geronimo.apache.org
Subject: RE: SQL transaction deadlock


Vasily,

I also had faced a similar kind of problem (if not exactly)  , try these
options :

             1) Increase ur connection pools
             2) Increase the timeout also
             3) In ur connection pool deployment set this:
commitbeforeautocommit=true  & then redeploy ur db
plan  & test.


PS: Not sure, may work , just give a try.

   



Thanks,
Santosh.
"Don't talk about yourself; it will be done when you leave. "



-----Original Message-----
From: Zakharov, Vasily M [mailto:vasily.m.zakharov@intel.com]

Sent: Friday, May 26, 2006 4:32 AM
To: user@geronimo.apache.org
Subject: SQL transaction deadlock

Hi, all,

Here's another strange transaction rollback I'm having while working
with Derby through Geronimo.

The question is, if this is an application problem that makes
inconsistent requests, or it could be a hole in Geronimo/TranQL/Derby
connector/database?

javax.ejb.TransactionRolledbackLocalException
	at
org.openejb.transaction.ContainerPolicy$TxRequired.invoke(ContainerPolic
y.java:123)
	at
org.openejb.transaction.TransactionContextInterceptor.invoke(Transaction
ContextInterceptor.java:80)
	at
org.openejb.SystemExceptionInterceptor.invoke(SystemExceptionInterceptor
.java:82)
	at
org.openejb.GenericEJBContainer.invoke(GenericEJBContainer.java:238)
	at
org.openejb.proxy.EJBMethodInterceptor.intercept(EJBMethodInterceptor.ja
va:129)
	at
org.openejb.proxy.EntityEJBLocalHome$$EnhancerByCGLIB$$1414c90a.create(<
generated>)
	at
org.spec.jappserver.mfg.workorderses.ejb.WorkOrderSesEJB.scheduleWorkOrd
er(WorkOrderSesEJB.java:91)
	at
org.spec.jappserver.mfg.workorderses.ejb.WorkOrderSesEJB$$FastClassByCGL
IB$$278087a9.invoke(<generated>)
	at
org.openejb.dispatch.AbstractMethodOperation.invoke(AbstractMethodOperat
ion.java:90)
	at
org.openejb.slsb.BusinessMethod.execute(BusinessMethod.java:67)
	at
org.openejb.dispatch.DispatchInterceptor.invoke(DispatchInterceptor.java
:72)
	at
org.apache.geronimo.naming.java.ComponentContextInterceptor.invoke(Compo
nentContextInterceptor.java:56)
	at
org.openejb.ConnectionTrackingInterceptor.invoke(ConnectionTrackingInter
ceptor.java:81)
	at
org.openejb.transaction.ContainerPolicy$TxRequired.invoke(ContainerPolic
y.java:119)
	at
org.openejb.transaction.TransactionContextInterceptor.invoke(Transaction
ContextInterceptor.java:80)
	at
org.openejb.slsb.StatelessInstanceInterceptor.invoke(StatelessInstanceIn
terceptor.java:98)
	at
org.openejb.transaction.ContainerPolicy$TxRequired.invoke(ContainerPolic
y.java:140)
	at
org.openejb.transaction.TransactionContextInterceptor.invoke(Transaction
ContextInterceptor.java:80)
	at
org.openejb.SystemExceptionInterceptor.invoke(SystemExceptionInterceptor
.java:82)
	at
org.openejb.GenericEJBContainer.invoke(GenericEJBContainer.java:238)
	at
org.openejb.server.ejbd.EjbRequestHandler.invoke(EjbRequestHandler.java:
297)
	at
org.openejb.server.ejbd.EjbRequestHandler.doEjbObject_BUSINESS_METHOD(Ej
bRequestHandler.java:325)
	at
org.openejb.server.ejbd.EjbRequestHandler.processRequest(EjbRequestHandl
er.java:196)
	at org.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java:150)
	at org.openejb.server.ejbd.EjbServer.service(EjbServer.java:87)
	at
org.openejb.server.ejbd.EjbServer$$FastClassByCGLIB$$d379d2ff.invoke(<ge
nerated>)
	at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
	at
org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInv
oker.java:38)
	at
org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.j
ava:118)
	at
org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.jav
a:800)
	at
org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57)
	at
org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperation
Invoker.java:36)
	at
org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyM
ethodInterceptor.java:96)
	at
org.activeio.xnet.ServerService$$EnhancerByCGLIB$$e7051bdf.service(<gene
rated>)
	at org.activeio.xnet.ServicePool$2.run(ServicePool.java:67)
	at org.activeio.xnet.ServicePool$3.run(ServicePool.java:90)
	at
org.apache.geronimo.pool.ThreadPool$ContextClassLoaderRunnable.run(Threa
dPool.java:138)
	at
EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(Unknown
Source)
	at java.lang.Thread.run(Thread.java:534)
Caused by: javax.ejb.EJBException: Unable to load data for field
	at
org.tranql.ejb.CMPFieldFaultTransform.get(CMPFieldFaultTransform.java:66
)
	at org.tranql.ejb.OneToManyCMR.set(OneToManyCMR.java:77)
	at
org.tranql.ejb.SingleValuedCMRAccessor.set(SingleValuedCMRAccessor.java:
66)
	at
org.openejb.entity.cmp.CMPSetter.invokeInstance(CMPSetter.java:74)
	at
org.openejb.entity.cmp.CMPMethodInterceptor.intercept(CMPMethodIntercept
or.java:75)
	at
org.spec.jappserver.mfg.workorderent.ejb.WorkOrderCmp20EJB$$EnhancerByCG
LIB$$438dc6db.setAssembly(<generated>)
	at
org.spec.jappserver.mfg.workorderent.ejb.WorkOrderCmp20EJB.ejbPostCreate
(WorkOrderCmp20EJB.java:239)
	at
org.spec.jappserver.mfg.workorderent.ejb.WorkOrderCmp20EJB$$FastClassByC
GLIB$$5801b0f0.invoke(<generated>)
	at
org.openejb.entity.cmp.CMPCreateMethod.execute(CMPCreateMethod.java:213)
	at
org.openejb.dispatch.DispatchInterceptor.invoke(DispatchInterceptor.java
:72)
	at
org.apache.geronimo.naming.java.ComponentContextInterceptor.invoke(Compo
nentContextInterceptor.java:56)
	at
org.openejb.ConnectionTrackingInterceptor.invoke(ConnectionTrackingInter
ceptor.java:81)
	at
org.openejb.entity.EntityInstanceInterceptor.invoke(EntityInstanceInterc
eptor.java:136)
	at
org.openejb.entity.cmp.InTxCacheInterceptor.invoke(InTxCacheInterceptor.
java:90)
	at
org.openejb.transaction.ContainerPolicy$TxRequired.invoke(ContainerPolic
y.java:119)
	... 38 more
Caused by: org.tranql.ql.QueryException: Error executing statement:
SELECT T.WO_NUMBER FROM M_WORKORDER T WHERE T.WO_ASSEMBLY_ID = ?
	at
org.tranql.sql.jdbc.JDBCQueryCommand.execute(JDBCQueryCommand.java:79)
	at
org.tranql.ejb.MultiValuedCMRFaultHandler.fieldFault(MultiValuedCMRFault
Handler.java:65)
	at
org.tranql.ejb.CMPFieldFaultTransform.get(CMPFieldFaultTransform.java:54
)
	... 52 more
Caused by: SQL Exception: A lock could not be obtained due to a
deadlock, cycle of locks and waiters is:
Lock : ROW, M_WORKORDER, (3,30)
  Waiting XID : {5683, S} , APP, SELECT T.WO_NUMBER FROM M_WORKORDER T
WHERE T.WO_ASSEMBLY_ID = ?
  Granted XID : {5684, X}

Lock : ROW, M_WORKORDER, (3,31)
  Waiting XID : {5684, S} , APP, SELECT T.WO_NUMBER FROM M_WORKORDER T
WHERE T.WO_ASSEMBLY_ID = ?
  Granted XID : {5683, X}

. The selected victim is XID : 5683.
	at
org.apache.derby.impl.jdbc.Util.generateCsSQLException(Unknown Source)
	at
org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Un
known Source)
	at
org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(Unkno
wn 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(Unknow
n Source)
	at
org.apache.derby.impl.jdbc.EmbedResultSet.movePosition(Unknown Source)
	at org.apache.derby.impl.jdbc.EmbedResultSet.next(Unknown
Source)
	at
org.tranql.connector.jdbc.ResultSetHandle.next(ResultSetHandle.java:791)
	at
org.tranql.sql.jdbc.JDBCQueryCommand.execute(JDBCQueryCommand.java:69)
	... 54 more

Vasily Zakharov
Intel Middleware Products Division

**************** CAUTION - Disclaimer *****************
This e-mail contains PRIVILEGED AND CONFIDENTIAL INFORMATION intended
solely for the use of the addressee(s). If you are not the intended
recipient, please notify the sender by e-mail and delete the original
message. Further, you are not to copy, disclose, or distribute this
e-mail or its contents to any other person and any such actions are
unlawful. This e-mail may contain viruses. Infosys has taken every
reasonable precaution to minimize this risk, but is not liable for any
damage you may sustain as a result of any virus in this e-mail. You
should carry out your own virus checks before opening the e-mail or
attachment. Infosys reserves the right to monitor and review the content
of all messages sent to or from this e-mail address. Messages sent to or
from this e-mail address may be stored on the Infosys e-mail system.
***INFOSYS******** End of Disclaimer ********INFOSYS***

Mime
View raw message