deadlock on remove - Weblogic

This is a discussion on deadlock on remove - Weblogic ; I use ms-sql 2000, weblogic8.1 and cmp for entity bean. There 3 tables. Their relationship are Itinerary - (1:N)FlightNo - (1:N)CabinPrice. I have not used any special config like cache in weblogic*.xml. My Session bean has add(ItineraryData) method with Required ...

+ Reply to Thread
Results 1 to 2 of 2

Thread: deadlock on remove

  1. deadlock on remove


    I use ms-sql 2000, weblogic8.1 and cmp for entity bean. There 3 tables. Their relationship
    are Itinerary - (1:N)FlightNo - (1:N)CabinPrice. I have not used any special config
    like cache in weblogic*.xml.

    My Session bean has add(ItineraryData) method with Required transaction to find
    old Itinerary, then remove, then add new one. But about 10% of my remove() calls
    will throw sqlexception: deadlock.



  2. Re: deadlock more infor


    "stephen" wrote:
    >
    >I use ms-sql 2000, weblogic8.1 and cmp for entity bean. There 3 tables.
    >Their relationship
    >are Itinerary - (1:N)FlightNo - (1:N)CabinPrice. I have not used any
    >special config
    >like cache in weblogic*.xml.
    >
    >My Session bean has add(ItineraryData) method with Required transaction
    >to find
    >old Itinerary, then remove, then add new one. But about 10% of my remove()
    >calls
    >will throw sqlexception: deadlock.
    >
    >

    Not only remove call, getItinerary() call also have deadlock problem.

    javax.ejb.FinderException: Exception in 'findByAirItinerary_mlrvrw__WebLogic_CMP_RDBMS_fli ghtItems__WL_'
    while using result set: 'weblogic.jdbc.wrapper.ResultSet_weblogic_jdbcx_ba se_BaseResultSetWrapper@4972c1'
    java.sql.SQLException: [BEA][SQLServer JDBC Driver][SQLServer] transaction (process
    ID 70£İis deadlock in another processs.
    at weblogic.jdbc.base.BaseExceptions.createException( Unknown Source)
    at weblogic.jdbc.base.BaseExceptions.getException(Unk nown Source)
    at weblogic.jdbc.sqlserver.tds.TDSRequest.processErro rToken(Unknown Source)
    at weblogic.jdbc.sqlserver.tds.TDSRequest.processRepl yToken(Unknown Source)
    at weblogic.jdbc.sqlserver.tds.TDSRPCRequest.processR eplyToken(Unknown Source)
    at weblogic.jdbc.sqlserver.tds.TDSRPCCursorExecuteReq uest.processReplyToken(Unknown
    Source)
    at weblogic.jdbc.sqlserver.tds.TDSRequest.processRepl y(Unknown Source)
    at weblogic.jdbc.sqlserver.tds.TDSRequest.getRow(Unkn own Source)
    at weblogic.jdbc.sqlserver.tds.TDSRPCCursorExecuteReq uest.getRow(Unknown Source)
    at weblogic.jdbc.sqlserver.tds.TDSRPCCursorExecuteReq uest.fetchNext(Unknown Source)
    at weblogic.jdbc.sqlserver.SQLServerImplResultSetServ erSideCursor.next(Unknown
    Source)
    at weblogic.jdbc.base.BaseResultSet.next(Unknown Source)
    at weblogic.jdbcx.base.BaseResultSetWrapper.next(Unkn own Source)
    at weblogic.jdbc.wrapper.ResultSet_weblogic_jdbcx_bas e_BaseResultSetWrapper.next(Unknown
    Source)
    at com.netsboss.WSBE.flightcache.data.FlightItem_9pn3 vk__WebLogic_CMP_RDBMS.ejbFindByAirItinerary_mlrvr w__WebLogic_CMP_RDBMS_flightItems__WL_(FlightItem_ 9pn3vk__WebLogic_CMP_RDBMS.java:3298)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Nativ e Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Native MethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(De legatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:324)
    at weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.c ollectionFinder(RDBMSPersistenceManager.java:342)
    at weblogic.ejb20.manager.BaseEntityManager.wrapperSe tFinder(BaseEntityManager.java:1756)
    at weblogic.ejb20.manager.BaseEntityManager.localWrap perSetFinder(BaseEntityManager.java:1727)
    at com.netsboss.WSBE.flightcache.data.AirItinerary_ml rvrw__WebLogic_CMP_RDBMS_flightItems_Set.populateC ache(AirItinerary_mlrvrw__WebLogic_CMP_RDBMS_fligh tItems_Set.java:113)
    at com.netsboss.WSBE.flightcache.data.AirItinerary_ml rvrw__WebLogic_CMP_RDBMS_flightItems_Set.iterator( AirItinerary_mlrvrw__WebLogic_CMP_RDBMS_flightItem s_Set.java:245)
    at com.netsboss.WSBE.flightcache.session.impl.FightCa cheSession.genPerfectAirData(FightCacheSession.jav a:277)
    at com.netsboss.WSBE.flightcache.session.impl.FightCa cheSession.addCache(FightCacheSession.java:153)
    at com.netsboss.WSBE.flightcache.session.impl.FlightC acheSession_ylx9ls_EOImpl.addCache(FlightCacheSess ion_ylx9ls_EOImpl.java:638)
    at com.netsboss.WSBE.flightcache.message.impl.FlightC acheMSGBean.onMessage(FlightCacheMSGBean.java:81)
    at weblogic.ejb20.internal.MDListener.execute(MDListe ner.java:382)
    at weblogic.ejb20.internal.MDListener.transactionalOn Message(MDListener.java:316)
    at weblogic.ejb20.internal.MDListener.onMessage(MDLis tener.java:281)
    at weblogic.jms.client.JMSSession.onMessage(JMSSessio n.java:2596)
    at weblogic.jms.client.JMSSession.execute(JMSSession. java:2516)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThrea d.java:197)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.ja va:170)

    at com.netsboss.WSBE.flightcache.data.AirItinerary_ml rvrw__WebLogic_CMP_RDBMS_flightItems_Set.populateC ache(AirItinerary_mlrvrw__WebLogic_CMP_RDBMS_fligh tItems_Set.java:144)
    at com.netsboss.WSBE.flightcache.data.AirItinerary_ml rvrw__WebLogic_CMP_RDBMS_flightItems_Set.iterator( AirItinerary_mlrvrw__WebLogic_CMP_RDBMS_flightItem s_Set.java:245)
    at com.netsboss.WSBE.flightcache.session.impl.FightCa cheSession.genPerfectAirData(FightCacheSession.jav a:277)
    at com.netsboss.WSBE.flightcache.session.impl.FightCa cheSession.addCache(FightCacheSession.java:153)
    at com.netsboss.WSBE.flightcache.session.impl.FlightC acheSession_ylx9ls_EOImpl.addCache(FlightCacheSess ion_ylx9ls_EOImpl.java:638)
    at com.netsboss.WSBE.flightcache.message.impl.FlightC acheMSGBean.onMessage(FlightCacheMSGBean.java:81)
    at weblogic.ejb20.internal.MDListener.execute(MDListe ner.java:382)
    at weblogic.ejb20.internal.MDListener.transactionalOn Message(MDListener.java:316)
    at weblogic.ejb20.internal.MDListener.onMessage(MDLis tener.java:281)
    at weblogic.jms.client.JMSSession.onMessage(JMSSessio n.java:2596)
    at weblogic.jms.client.JMSSession.execute(JMSSession. java:2516)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThrea d.java:197)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.ja va:170)



+ Reply to Thread