KKS USE MUTEX PIN

EXEM Knowledge Base

Jump to: navigation, 찾기

목차

[편집] 기본 정보

[편집] Parameter 정보


Syntax _KKS_USE_MUTEX_PIN=TRUE
설정방법
  • Parameter File
버전 및 기본값
9iR2 10gR1 10gR2 11g
- - TRUE(>=10.2.0.2) TRUE

[편집] 설명

_KKS_USE_MUTEX_PIN Parameter값이 True이면 library cache pin 획득/해제시에 library cache pin latch 대신에 Mutex를 사용한다.

Oracle 11g부터는 이 Parameter의 값은 True로 고정되며, False로 변경할 수 없다. 즉, library cache pin latch 대신에 항상 Mutex를 사용한다. Oracle 11g는 Mutex의 사용을 크게 확대시켰다.

  • Library Cache Bucket 탐색에 library cache latch 대신 Mutex를 사용한다.
  • Library cache pin latch 대신 Mutex를 사용한다.
  • Library cache lock latch 대신 Mutex를 사용한다.

Oracle 11g에서는 library cache load lock만이 latch를 통해 관리된다.

-- Oracle 10gR2
UKJA@ukja102> select name from v$latch where name like '%library cache%';

NAME
------------------------------
library cache pin allocation
library cache lock allocation
library cache hash chains
library cache lock
library cache
library cache pin
library cache load lock


-- Oracle 11gR1
UKJA@ukja116> select name from v$latch where name like '%library cache%';

NAME
------------------------------
library cache load lock

Mutex는 Latch보다 가볍고 개수가 많기 때문에 동시성 관리에 뛰어나다. 단, Bug로 인해 예상치 못한 Mutex 경합이 보고되는 경우가 많다. Mutex 경합이 발생할 경우에는 다음과 같은 대기 이벤트가 관찰된다.

NAME
------------------------------
cursor: mutex X
cursor: mutex S
cursor: pin S wait on X
library cache: mutex X
library cache: mutex S


[편집] 참고 사항

[편집] 관련된 정보

[편집] 외부 참조

  1. Library cache latches gone in Oracle 11g
  2. Library cache latch has gone?