Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Mailing Lists -> Oracle-L -> RE: library cache lock on import

RE: library cache lock on import

From: Bobak, Mark <Mark.Bobak_at_il.proquest.com>
Date: Fri, 27 Jan 2006 11:48:57 -0500
Message-ID: <AA29A27627F842409E1D18FB19CDCF27068C8CAD@AABO-EXCHANGE02.bos.il.pqe>


Argh, that's what happens when cutting and pasting and cleaning things up hastily!

libpin.sql should be fine.
liblock.sql, the line that reads:
and vsw.event = 'library cache pin'
SHOULD BE:
and vsw.event = 'library cache lock'

If no sessions are waiting on a library cache pin or library cache lock, respectively, then nothing will be output.

Sorry for the extended confusion. With the fix above, I believe both scripts to be (finally) correct.

-Mark

--
Mark J. Bobak
Senior Oracle Architect
ProQuest Information & Learning

"There are 10 types of people in the world:  Those who understand
binary, and those who don't."

-----Original Message-----
From: Juan Carlos Reyes Pacheco [mailto:juancarlosreyesp_at_gmail.com] 
Sent: Friday, January 27, 2006 9:07 AM
To: Bobak, Mark
Cc: oracle-l_at_freelists.org
Subject: Re: library cache lock on import

Hi Mark, I'm not sure if the last two are right, the first you post
showed the a package being blocked meanwhile the other two don't returns
anything.

On 1/25/06, Bobak, Mark <Mark.Bobak_at_il.proquest.com> wrote:

> Whoops, I got my liblock.sql script (which shows who is waiting on
> what when 'library cache lock' waits occur), mixed up with my
> libpin.sql (which shows whos waiting on what when 'library cache pin'
waits occur).
>
> Thanks to joseph Amalraj for catching my error!
>
> Sorry for the confusion. To be clear, and for anyone whos interested,

> here are *both* scripts, tested in 8iR3 and 9iR2:
>
> libpin.sql:
>
> select /*+ ordered */
> decode(lob.kglobtyp, 0, 'NEXT OBJECT', 1, 'INDEX', 2, 'TABLE', 3,
> 'CLUSTER',
> 4, 'VIEW', 5, 'SYNONYM', 6, 'SEQUENCE',
> 7, 'PROCEDURE', 8, 'FUNCTION', 9, 'PACKAGE',
> 11, 'PACKAGE BODY', 12, 'TRIGGER',
> 13, 'TYPE', 14, 'TYPE BODY',
> 19, 'TABLE PARTITION', 20, 'INDEX PARTITION',
> 21, 'LOB',
> 22, 'LIBRARY', 23, 'DIRECTORY', 24, 'QUEUE',
> 28, 'JAVA SOURCE', 29, 'JAVA CLASS', 30, 'JAVA
> RESOURCE',
> 32, 'INDEXTYPE', 33, 'OPERATOR',
> 34, 'TABLE SUBPARTITION', 35, 'INDEX
> SUBPARTITION',
> 40, 'LOB PARTITION', 41, 'LOB SUBPARTITION',
> 42, 'MATERIALIZED VIEW',
> 43, 'DIMENSION',
> 44, 'CONTEXT', 46, 'RULE SET', 47, 'RESOURCE
> PLAN',
> 48, 'CONSUMER GROUP',
> 51, 'SUBSCRIPTION', 52, 'LOCATION',
> 55, 'XML SCHEMA', 56, 'JAVA DATA',
> 57, 'SECURITY PROFILE', 59, 'RULE',
> 62, 'EVALUATION CONTEXT',
> 'UNDEFINED') object_type,
> lob.KGLNAOBJ object_name,
> pn.KGLPNMOD lock_mode_held,
> pn.KGLPNREQ lock_mode_requested,
> ses.sid,
> ses.serial#,
> ses.username
> FROM
> v$session_wait vsw,
> x$kglob lob,
> x$kglpn pn,
> v$session ses
> WHERE
> pn.KGLPNUSE = ses.saddr and
> pn.KGLPNHDL = lob.KGLHDADR
> and lob.kglhdadr = vsw.p1raw
> and vsw.event = 'library cache pin'
> order by lock_mode_held desc
> /
>
> and liblock.sql:
>
> select /*+ ordered */
> decode(lob.kglobtyp, 0, 'NEXT OBJECT', 1, 'INDEX', 2, 'TABLE', 3,
> 'CLUSTER',
> 4, 'VIEW', 5, 'SYNONYM', 6, 'SEQUENCE',
> 7, 'PROCEDURE', 8, 'FUNCTION', 9, 'PACKAGE',
> 11, 'PACKAGE BODY', 12, 'TRIGGER',
> 13, 'TYPE', 14, 'TYPE BODY',
> 19, 'TABLE PARTITION', 20, 'INDEX PARTITION',
> 21, 'LOB',
> 22, 'LIBRARY', 23, 'DIRECTORY', 24, 'QUEUE',
> 28, 'JAVA SOURCE', 29, 'JAVA CLASS', 30, 'JAVA
> RESOURCE',
> 32, 'INDEXTYPE', 33, 'OPERATOR',
> 34, 'TABLE SUBPARTITION', 35, 'INDEX
> SUBPARTITION',
> 40, 'LOB PARTITION', 41, 'LOB SUBPARTITION',
> 42, 'MATERIALIZED VIEW',
> 43, 'DIMENSION',
> 44, 'CONTEXT', 46, 'RULE SET', 47, 'RESOURCE
> PLAN',
> 48, 'CONSUMER GROUP',
> 51, 'SUBSCRIPTION', 52, 'LOCATION',
> 55, 'XML SCHEMA', 56, 'JAVA DATA',
> 57, 'SECURITY PROFILE', 59, 'RULE',
> 62, 'EVALUATION CONTEXT',
> 'UNDEFINED') object_type,
> lob.KGLNAOBJ object_name,
> lk.KGLLKMOD lock_mode_held,
> lk.KGLLKREQ lock_mode_requested,
> ses.sid,
> ses.serial#,
> ses.username
> FROM
> v$session_wait vsw,
> x$kglob lob,
> x$kgllk lk,
> v$session ses
> WHERE
> lk.KGLLKUSE = ses.saddr and
> lk.KGLLKHDL = lob.KGLHDADR
> and lob.kglhdadr = vsw.p1raw
> and vsw.event = 'library cache pin'
> order by lock_mode_held desc
> /
>
>
>
>
> --
> Mark J. Bobak
> Senior Oracle Architect
> ProQuest Information & Learning
>
> "There are 10 types of people in the world: Those who understand
> binary, and those who don't."
>
> -----Original Message-----
> From: oracle-l-bounce_at_freelists.org
> [mailto:oracle-l-bounce_at_freelists.org] On Behalf Of Bobak, Mark
> Sent: Wednesday, January 25, 2006 3:01 PM
> To: juancarlosreyesp_at_gmail.com; oracle-l_at_freelists.org
> Subject: RE: library cache lock on import
>
> Juan,
>
> Here's a script I call liblock.sql that I use when I see library cache

> lock waits, to see who is blocking who. Hope it helps....
>
> Here ya go:
> select /*+ ordered use_nl(lob pn ses) */
> decode(lob.kglobtyp, 0, 'NEXT OBJECT', 1, 'INDEX', 2, 'TABLE',
> 3, 'CLUSTER',
> 4, 'VIEW', 5, 'SYNONYM', 6, 'SEQUENCE',
> 7, 'PROCEDURE', 8, 'FUNCTION', 9, 'PACKAGE',
> 11, 'PACKAGE BODY', 12, 'TRIGGER',
> 13, 'TYPE', 14, 'TYPE BODY',
> 19, 'TABLE PARTITION', 20, 'INDEX PARTITION',
> 21, 'LOB',
> 22, 'LIBRARY', 23, 'DIRECTORY', 24, 'QUEUE',
> 28, 'JAVA SOURCE', 29, 'JAVA CLASS', 30, 'JAVA
> RESOURCE',
> 32, 'INDEXTYPE', 33, 'OPERATOR',
> 34, 'TABLE SUBPARTITION', 35, 'INDEX
> SUBPARTITION',
> 40, 'LOB PARTITION', 41, 'LOB SUBPARTITION',
> 42, 'MATERIALIZED VIEW',
> 43, 'DIMENSION',
> 44, 'CONTEXT', 46, 'RULE SET', 47, 'RESOURCE
> PLAN',
> 48, 'CONSUMER GROUP',
> 51, 'SUBSCRIPTION', 52, 'LOCATION',
> 55, 'XML SCHEMA', 56, 'JAVA DATA',
> 57, 'SECURITY PROFILE', 59, 'RULE',
> 62, 'EVALUATION CONTEXT',
> 'UNDEFINED') object_type,
> lob.kglnaobj object_name,
> pn.kglpnmod lock_mode_held,
> pn.kglpnreq lock_mode_requested,
> ses.sid,
> ses.serial#,
> ses.username
> from v$session_wait vsw,
> x$kglob lob,
> x$kglpn pn,
> v$session ses
> where vsw.event = 'library cache lock'
> and vsw.p1raw = lob.kglhdadr
> and lob.kglhdadr = pn.kglpnhdl
> and pn.kglpnmod != 0
> and pn.kglpnuse = ses.saddr
> /
>
>
> -Mark
>
> --
> Mark J. Bobak
> Senior Oracle Architect
> ProQuest Information & Learning
>
> "There are 10 types of people in the world: Those who understand
> binary, and those who don't."
>
> -----Original Message-----
> From: oracle-l-bounce_at_freelists.org
> [mailto:oracle-l-bounce_at_freelists.org] On Behalf Of Juan Carlos Reyes
> Pacheco
> Sent: Wednesday, January 25, 2006 2:21 PM
> To: oracle-l_at_freelists.org
> Subject: library cache lock on import
>
> Hi please if you can,
> I'm getting an library cache lock on an import, it seems to be related

> to the compilation of some procedures using database links, directed
> to the same database (this is because in others systems the same links

> points to other database, in this case not)
>
> Thep roblem is I can-t figure out what means this exactly for example
> chyecking v$session row_wait_obj#, I found the table
> SCHEDULER$_SRCQ_INFO, that don't makes too much sense to me
>
> or the namespace I can't find on V$DB_OBJECT_CACHE
>
> Thanks
> SELECT * FROM V$SESSION_WAIT
> where not wait_class='Idle'
> order by 1,2
>
> SID SEQ#
> EVENT
> P1TEXT P1
> P1RAW P2TEXT
> P2
> P2RAW P3TEXT
> P3 P3RAW
> WAIT_CLASS_ID WAIT_CLASS#
> WAIT_CLASS
> WAIT_TIME SECONDS_IN_WAIT
> STATE
> -------------------------------------- -------------------
> 91 457
> library cache lock
> handle address
> 858746552 332F6EB8 lock
> address
> 872673408
>
> 3403F080 100*mode+namespace
>
> 201
000000C9
>
> 3875070507 4
>
> Concurrency
> 0 1220
>
> WAITING
>
>
> --
> Oracle Certified Profesional 9i 10g
> Orace Certified Professional Developer 6i
>
> 8 years of experience in Oracle 7,8i,9i,10g and developer 6i
> --
> http://www.freelists.org/webpage/oracle-l
>
>
>
>
>
-- Oracle Certified Profesional 9i 10g Orace Certified Professional Developer 6i 8 years of experience in Oracle 7,8i,9i,10g and developer 6i

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

Received on Fri Jan 27 2006 - 10:48:57 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US