Check out also the Oracle doc for the version you use. There are some improvements in 9i.
Dan -----Original Message----- From: Michael Bartmann [mailto:michael.bartmann@;lisytec.de] Sent: Monday, October 28, 2002 13:41 PM To: [EMAIL PROTECTED] Subject: Re: [JBoss-dev] Oracle, table locks and CMP2 incompatibility Hmmm.. if I understand this paper right, it would mean that the child table is only locked if: a) one deletes records of the parent table or b) if one changes the pk value in the parent table. which would not not be as bad as I thought when reading other sources, which imply that a simple update on the parent table would suffice to lock the associated child rows. Regards, Michael Bartmann Catalin Teodorescu wrote: > Check this link. > > >http://asktom.oracle.com/pls/ask/f?p=4950:8:1513219::NO::F4950_P8_DISPLAYID,F4950_P8_CRITERIA:292016138754,%7Bprimary%7D%20and%20%7Bkey%7D%20and%20%7Bupdate%7D%20and%20%7Btable%7D%20and%20%7Block%7D > > > Dan > > -----Original Message----- > From: Michael Bartmann [mailto:michael.bartmann@;lisytec.de] > Sent: Monday, October 28, 2002 12:21 PM > To: [EMAIL PROTECTED] > Subject: [JBoss-dev] Oracle, table locks and CMP2 incompatibility > > > Hallo db gurus, > > we have for some time experienced nasty timeouts on oracle > without jboss deadlock detection (or oracle deadlock detection) > kicking in. We might have found the solution today, allthough > this is not verified, perhaps only time will show. > (...or some db guru will tell me that my following explanation is > severly misguided.) > > The EJB locking is based on entity locks. If you have an underlying > database which does locking too, it has to use row level locking, > (as opposed to table level locking) or else jboss detect deadlocks > on the database, as the check which detects deadlocks is based on a > graph representing locks on entity (row) level. > > But there are circumstances, under which oracle does not use row > level locking even if with row level locking configured to "always". > > This happens when a table TableA has a dependent table TableB in a > 1:n relationship (i.e. TableB has a foreign key pointing to TableA.) > If a row of TableA gets updated, oracle tries to lock all entries in > TableB with matching foreign key. > > Here comes the vital point: If there is no index on the foreign key > columns of TableB, oracle does a shared lock on _table_ level. This > is probably because otherwise oracle would need to do a full table > scan on the fly to find the matching rows in TableB. > > So if you configure jboss to generate the foreign key constraints > you are walking on thin ice; you have to generate indices on the > foreign key columns by hand, or else this effect might hount you. > > Solution: > 1) [workaround] disable foreign key (or their generation), and let > CMP2 itself take care of the constraints > or > 2) implement generation of foreign key indices in jboss. (I'm not fully > convinced that this would suffice; jboss deadlock detection would > have to lock the same entities and avoid race conditions). > > Does this sound reasonable to you? > > Regards, > Michael Bartmann > > > > ------------------------------------------------------- > This sf.net email is sponsored by:ThinkGeek > Welcome to geek heaven. > http://thinkgeek.com/sf > _______________________________________________ > Jboss-development mailing list > [EMAIL PROTECTED] > https://lists.sourceforge.net/lists/listinfo/jboss-development > > > ------------------------------------------------------- > This sf.net email is sponsored by:ThinkGeek > Welcome to geek heaven. > http://thinkgeek.com/sf > _______________________________________________ > Jboss-development mailing list > [EMAIL PROTECTED] > https://lists.sourceforge.net/lists/listinfo/jboss-development > ------------------------------------------------------- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf _______________________________________________ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development ------------------------------------------------------- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf _______________________________________________ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development