Apparently they don't call it P Code (pseudocode) anymore it's now byte code, I guess that's cooler. And yes the 11 docs are less than clear on this. There is a decent discussion of this in the 8 concepts guide. You may want to look in the PL/SQL guide. Also the esteemed Steven Feuerstein talks about it some extent in the Oracle PL/SQL programing book. And documented or not your situation seems to prove the point. - Ric From: McPeak, Matt [mailto:vxsmimmcp@xxxxxxxxxx] Sent: Wednesday, February 26, 2014 4:45 PM To: Ric Van Dyke; ORACLE-L Subject: RE: DBA_HIST_ACTIVE_SESS_HISTORY library cache pin waits Very interesting. I looked in the 11g Concepts Guide and the 11g Advanced Application Developers Guide and didn't see this documented. Do you know where in Oracle's documentation this might be described? Thanks very much for your help! Matt From: Ric Van Dyke [mailto:ric.van.dyke@xxxxxxxxxx] Sent: Wednesday, February 26, 2014 4:11 PM To: McPeak, Matt; ORACLE-L Subject: RE: DBA_HIST_ACTIVE_SESS_HISTORY library cache pin waits Yeap. That pretty much sums it up. The Package Created means it has created what is called the P code (not to be confused with the name of your procedure). But until it's actually invoked it's not truly fully compiled. It's kind like the old interpreted languages (BASIC for example), but not exactly the same. From: McPeak, Matt [mailto:vxsmimmcp@xxxxxxxxxx] Sent: Wednesday, February 26, 2014 4:05 PM To: Ric Van Dyke; ORACLE-L Subject: RE: DBA_HIST_ACTIVE_SESS_HISTORY library cache pin waits No kidding? So, when I install DDL and get a successful "Package body created" message, no one can start using it until all processes using the old version finish? From: Ric Van Dyke [mailto:ric.van.dyke@xxxxxxxxxx] Sent: Wednesday, February 26, 2014 3:27 PM To: McPeak, Matt; ORACLE-L Subject: RE: DBA_HIST_ACTIVE_SESS_HISTORY library cache pin waits Sure makes perfect sense to me. S1 was already running so will continue to completion with the version of P as it was when it started. S2 has to wait for S1 to finish so it can in effect recompile P. +--+--+--+--+--+--+--+--+--+--+--+--+--+--+ Ric Van Dyke Education Director Hotsos Ltd. Hotsos Symposium March 2-6 2014 Make your plans to be there now! From: oracle-l-bounce@xxxxxxxxxxxxx [mailto:oracle-l-bounce@xxxxxxxxxxxxx] On Behalf Of McPeak, Matt Sent: Wednesday, February 26, 2014 3:09 PM To: ORACLE-L Subject: RE: DBA_HIST_ACTIVE_SESS_HISTORY library cache pin waits More information... There was a package (call it "P") re-installed at 4:29pm. There was a long-running (4hr) process ( call it "S1" ) running at that time that uses that package. Should that have prevented us from installing a new version of the package? It doesn't seem to have. Then, other processes (call it "S2") - started after 4:29pm and that refer to "P" -- all seemed to start waiting indefinitely for the long-running process "S1". Does that make sense? Thanks, Matt From: oracle-l-bounce@xxxxxxxxxxxxx [mailto:oracle-l-bounce@xxxxxxxxxxxxx] On Behalf Of McPeak, Matt Sent: Wednesday, February 26, 2014 2:40 PM To: ORACLE-L Subject: DBA_HIST_ACTIVE_SESS_HISTORY library cache pin waits Hi, I have been asked what a process on Monday (2/24) timed out. Going to DBA_HIST_ACTIVE_SESS_HISTORY, I can see that the process in question spent all its time waiting for a library cache pin. I can see a lot written on how to get more information about current library cache pin waits. But does anyone know how to find out more about a library cache pin wait showing up only in ASH? Thanks in advance! Matt