Home > Oracle Database, Performance > Kill libary cache : mutex x wait

Kill libary cache : mutex x wait

check executions, parse_calls and version_count in v$sqlarea. If no issue identified :

increase _kgl_hot_object_copies (default is number of cpu).

If still not good, identify the most pinned cursors in shared pool :

SELECT * FROM (
    SELECT kglnaobj name, kglobt23 LOCKED_TOTAL,
      kglobt24 PINNED_TOTAL, kglhdexc EXECUTIONS, kglhdnsp NAMESPACE
    FROM x$kglob WHERE kglobtyd='CURSOR'
    ORDER BY kglobt24 DESC
) WHERE rownum 0;

Then mark the cursor as hot :

exec dbms_shared_pool.markhot('SYS','select name from undo$ where file#=:1 and block#=:2 and ts#=:3 and       status$ != 1',NAMESPACE=>0);

Ref :
https://jagjeet.wordpress.com/2011/12/12/library-cache-mutex-x/
https://andreynikolaev.wordpress.com/2011/05/01/divide-and-conquer-the-true-mutex-contention/

  1. No comments yet.
  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: