RE: Holder query in lock

  • From: Dominic Brooks <dombrooks@xxxxxxxxxxx>
  • To: "lsantos@xxxxxxxxx" <lsantos@xxxxxxxxx>, ORACLE-L <oracle-l@xxxxxxxxxxxxx>
  • Date: Thu, 8 Sep 2016 15:03:25 +0000

There is no guaranteed way but you may get lucky with one or more of ash, 
logminer.

See Doug Burns's series, or skip to the end:
http://oracledoug.com/serendipity/index.php?/archives/1495-Diagnosing-Locking-Problems-using-ASHLogMiner-The-End.html

Sent from my Windows Phone
________________________________
From: Luis Santos<mailto:lsantos@xxxxxxxxx>
Sent: ‎08/‎09/‎2016 14:59
To: ORACLE-L<mailto:oracle-l@xxxxxxxxxxxxx>
Subject: Holder query in lock

Sometimes we have some INACTIVE sessions holding another sessions due locks.

It´s easy of course to find discover the lock tree, and also the object 
involved in query.

But is there a simple way (without any trace) to discover to the SQL_ID that 
locked the rows related to blocker lock?

When the locker session runs the statement (usually an update) that locks these 
rows this same session, generally, runs several other statements (usually 
SELECTs) and after them becomes into SQL*Net message to client. So the current 
(and previous) SQL_ID for the locker session is useless.

We have mainly 11.2.0.4 RDBMS versions.





--
Att
Luis Santos

[https://lh3.googleusercontent.com/-AD-URpt0jeE/AAAAAAAAAAI/AAAAAAAB-9c/LrffscVVpf8/s90-c-k/photo.jpg]

Other related posts: