RE: Excessive "latch: row cache objects" waits with simple INSERT statement

From: Mark W. Farnham <mwf_at_rsiz.com>
Date: Wed, 7 Oct 2020 17:47:38 -0400
Message-ID: <07bb01d69cf3$79f98530$6dec8f90$_at_rsiz.com>


Two phase XA transactions between what and what?

Oracle 2 phase commit amongst multiple Oracle data stores is one of the sweetest bits of code ever written (thanks, Gary Hallmark, and XA is most kindly described as a camel built by committee when you wanted a race horse.)

What are they trying to accomplish that involves both hibernate and XA, and how do you decontaminate your brain after the experience (assuming wildly that it ever comes to completion)?

Very often not even the 2 phase commit on Oracle is required, but it could be if you're trying to lockstep update something like inventory quantities or bank balances on two separate primary databases which can both initiate changes. If it is just a recording feed, that is probably NOT a 2 phase commit requirement even if the system sending the update requires commit confirmation to update a status locally.

Good luck.

mwf

-----Original Message-----
From: oracle-l-bounce_at_freelists.org [mailto:oracle-l-bounce_at_freelists.org] On Behalf Of Thomas Kellerer Sent: Tuesday, October 06, 2020 7:22 AM
To: oracle-l_at_freelists.org
Subject: Re: Excessive "latch: row cache objects" waits with simple INSERT statement

Yes, looks like it. Apparently Hibernate lies when it claims it's doing batched insert.

No VPD, no triggers.

But I just learned that those INSERTs are done using a 2-phase commit (XA Transaction). Could that be the cause these latch waits?

Jonathan Lewis schrieb am 05.10.2020 um 19:58:
> The fact that the EXEC lines show: " r=1" suggests that you are doing
> single row inserts. For array inserts I'd expect to see 'r={size of
> array}'.

> What about VPD (RLS) ?

--
http://www.freelists.org/webpage/oracle-l




--
http://www.freelists.org/webpage/oracle-l
Received on Wed Oct 07 2020 - 23:47:38 CEST

Original text of this message