Keith
You can define your entity beans to be reentrant in ejb-jar.xml like this.
This might fix your problem. The J2EE spec discourages this, can't remember
the exact reasons right now...
<entity>
<description>Member Bean</description>
<display-name>Member Bean</display-name>
<ejb-name>Member</ejb-name>
<home>com.uni.entity.myaccount.MemberHome</home>
<remote>com.uni.entity.myaccount.Member</remote>
<ejb-class>com.uni.entity.myaccount.MemberBean</ejb-class>
<persistence-type>Bean</persistence-type>
<prim-key-class>com.uni.entity.myaccount.MemberPK</prim-key-class>
<reentrant>True</reentrant>
<resource-ref>
<res-ref-name>jdbc/UniteItDB</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</entity>
> -----Original Message-----
> From: Rickard Oberg [mailto:[EMAIL PROTECTED]]
> Sent: Thursday, November 30, 2000 12:24 PM
> To: jBoss
> Subject: Re: [jBoss-User] deadlock accessing EntityBeans
>
>
> Hi!
>
> "Keith L. Musser" wrote:
> > I have a SessionBean which performs a search on Entity Beans. The
> > sequence in which the search accesses the Entity Beans
> depends on call
> > arguments to the session bean.
> >
> > When I invoke the session bean from multiple clients, I get
> deadlock.
> >
> > This appears to be because search 1 assesses entity A
> first, then entity
> > B. Search 2, however, acesses entity B first, then entity A.
> >
> > So if the timing is just wrong, both searches get the first
> entity, but
> > cannot get the second, since it's locked by the other search.
> >
> > Is there a way to set up jboss.xml to prevent this from happening?
>
> This is a known issue with concurrent systems and pessimistic
> concurrency schemes (which is what our cache uses). You should either
> wait for transaction timeout and retry, or make sure that they are
> always used in the same order.
>
> There are plans to make an optimistic concurrency cache which
> would fix
> this, but this will not be done for awhile.
>
> regards,
> Rickar
>
> --
> Rickard Oberg
>
> Email: [EMAIL PROTECTED]
>
>
> --
> --------------------------------------------------------------
> To subscribe: [EMAIL PROTECTED]
> To unsubscribe: [EMAIL PROTECTED]
> Problems?: [EMAIL PROTECTED]
>
--
--------------------------------------------------------------
To subscribe: [EMAIL PROTECTED]
To unsubscribe: [EMAIL PROTECTED]
Problems?: [EMAIL PROTECTED]