Académique Documents
Professionnel Documents
Culture Documents
Lock Type User Lock Wait Event Lock Mode & Type TYPE is TX, REQUEST is 6 Causes Actions Remarks
Two transactions
simultaneousl access t!e same "ata recor" in c!an#e mo"e$
%in" t!e sessions t!at are conten"in# to c!an#e t!e same &locks & usin# 'ollowin# quer /* col file# for 99999 col block# for 999999 col obj for a18 col type for a9 col lm for 99 col bsid for 9999 */ select count(*) cnt, session_id sid, substr(event,1,30) event, mod(p1,16) as lm, sql_id, CURRE !_"#$% && ' ' && ob(ect_name ob( , o)ob(ect_t*pe t*pe , CURRE !_+,-E% .ile% , CURRE !_#-"C/% bloc0% , bloc0in1_session bsid .rom v2active_session_3istor* as3, all_ob(ects o 43ere event li0e 'enq5 !6' and o)ob(ect_id (7)8 as3)current_ob(% 1roup b* event,session_id,p1,sql_,9,CURRE !_"#$%,"#$EC!_ :;E,"#$EC!_!<=E,CURRE !_+,-E%, CURRE !_#-"C/%, #-"C/, >_?E??," order b* count(*) @ ($ )nce ou i"enti' w!ic! o&*ect it is or t!e S+, eit!er kill or -rocee" to ask t!e a--lication team to commit t!e ori#inal sessions t!at is !ol"in# .$ +' t!e o&*ect is an in"ex, t!at means
User Lock
,ia#nosis Same as a&o0e t!e solution woul" &e To correct t!is -ro&lem, ensure t!at t!e same -rimar ke is not inserte" or c!an#e" re-eate"l in -arallel in a ta&le$ 1'or exam-le, & c!eckin# w!et!er t!e ke alrea" exists2$ +' t!is is not -ossi&le, increase t!e commit3'requenc in or"er to release t!e enqueues a#ain earlier$ 4o"e /, !a--ens 'or 5 reasons ($ Unique ke contention .$ %orei#n 6e contention
ORACLE ENQUEUE WAITS & CAUSES WITH POSSIBLE ACTIONS TO BE CHECKED OR VERFIED
3) #itmap indeA contention
User Lock
+' suc! a 7multi-le requeste"7 in"ex &lock is not in t!e &u''er -ool, it must &e rea" & t!e 'irst transaction 'rom t!e "isk 18"& 'ile sequential rea"82$ T!e ot!er ,4L o-erations wait 'or a TX enqueue "urin# t!is -rocess$ +n"ex 9lock s-lits, +' t!e enqueues occur in a ta&le in connection wit! massi0el -arallel inserts or u-"ates, t!is is usuall a -ro&lem to "o wit! accessin# t!e +ntereste" Transaction List 1+TL2 in t!e lock !ea"er$ T!e solution 'or t!is requires increasin# t!e +:+TR;:S su''icientl , as "escri&e" in :ote </5/< +TL waits 'or -arallel +:SERT o-erations can &e alle0iate" & increasin# t!e %REEL+STs or %REEL+ST =R)UPs, or & switc!in# to ;SS4$
User Lock
User Lock
C!an#es in &itma- in"exes alwa s lea" to t!e w!ole area &ein# locke"$ +' se0eral transactions want to c!an#e t!e same area, row lock waits occur in le0el /$ ,ro- t!e &itma- in"exes &e'ore ou &e#in wit! -arallel loa"in#$ See also t!e rele0ant section in :ote </5/< 'or 'urt!er in'ormation$
User Lock
t!is is t!en -ossi&le i' -arallel +:SERTs are runnin# an" one o' t!ese +:SERTs tri##ere" an ;UT)EXTE:, o-eration an" must wait 'or 8,ata 'ile init write8
Settin# Ta&le s-ace rea" onl o Session ( > start transaction, "on?t commit o Session . > alter ta&les-ace rea" onl %ree Lists :on3;SS4 Sessions 'reein# &lock +' no txs 'ree lists a0aila&le 1min (6, #row u- "e-en"in# on &lock si@e2 , -ick one an" wait TX / .PC > two -!ase commit o %irst "oes a -re-are t!e commit o ;n rea" or write access in t!e inter0enin# time waits TX /
o o o
User Lock
,etermine t!e session t!at !ol"s t!e lock an" "etermine its L4),E$ +' L4),E A /, t!e lockin# session currentl executes an o-eration suc! as an in"ex re&uil" or a consistenc
ORACLE ENQUEUE WAITS & CAUSES WITH POSSIBLE ACTIONS TO BE CHECKED OR VERFIED
"ue to comman" 8L)C6 T;9LE $$$ +: EXCLUS+BE 4),E C:)D;+TE8
c!eck usin# B;L+,;TE STRUCTURE wit!out an ):L+:E 'la#$ Terminate t!is o-eration, so ot!er transactions can access t!e o&*ect a#ain$ +' L4),E A 5, t!e session t!at !ol"s t!e lock is not t!e main -ro&lem, since se0eral sessions can use a T4 lock wit! mo"e 5 at t!e same time an" in t!e same ta&le 1'or instance, i' two transactions c!an#e "i''erent recor"s in t!e same ta&le at t!e same time2$ +nstea", ou must anal @e w!et!er t!ere is anot!er waiter t!at requires a T4 enqueue wit! REQUEST A / 1'or exam-le, RE9U+L, +:,EX ):L+:E, see &elow2 an" w!ic! t!ere'ore &locks all requests in t!e queue line" u- &e!in" it$
D!en a session !as allocate" t!e C+ enqueue success'ull , it waits 'or t!e Dait E0ent 8r"&ms i-c re-l 8 until t!e &ack#roun" -rocess issues a res-onse$ )t!er sessions t!at also require t!e C+ enqueue must wait 'or it$t!is means t!at t!e o-timi@ation o' C+ enqueues corres-on"s to t!e o-timi@ation o' 8r"&ms i-c re-l 8 waits$ T!ere'ore, re'er to t!e 8r"&ms i-c re-l 8 section in :ote 6(G(<<$
+' an ;LTER ,;T;9;SE TE4P%+LE ,R)P !an#s "ue to a TT enqueue t!at is retaine" & t!e S4): -rocess in )racle G$.$H$6 or lower, )racle &u# 5<55<G5 is res-onsi&le$ T!is -ro&lem !as &een sol0e" in )racle G$.$H$J$ %or more in'ormation, see :ote <6J6<($ Lon#er waits 'or t!e TT enqueue are #enerall cause" & )racle &u#s$ +' ou ex-erience -ro&lems wit! t!is enqueue t -e, ou s!oul" t!ere'ore 'irst im-ort t!e latest )racle -atc!set$
ORACLE ENQUEUE WAITS & CAUSES WITH POSSIBLE ACTIONS TO BE CHECKED OR VERFIED
T;9LESP;CE, extent allocation an" "eallocation in t!e ta&les-ace, $2$
+n -articular, t!is situation can occur w!en t!ere are -arallel +:SERT o-erations$ +n suc! a case, t!e !i#! water mark is mo0e" & 'i0e &locks 1in t!e case o' se0eral %REEL+STs: 'i0e &locks 'or eac! %REEL+ST2 & "e'ault$ +' t!ere is a lar#e num&er o' -arallel +:SERTs, t!is ma &e insu''icient$ T!e 'ollowin# o-timi@ations are -ossi&le: +ncrease t!e num&er o' %REEL+ST +ncrease t!e K9U4PKF+=FD;TERK4;R6KC)U:T -arameter to a 0alue #reater t!an I, w!ic! increases t!e !i#! water mark & more t!an 'i0e &locks an" means t!at t!e FD4 "oes not !a0e to &e c!an#e" so o'ten FD enqueues ma also occur w!en ou create o&*ects wit! lar#e initial 0alues, since in t!is case, t!e !i#! water mark !as to &e increase" u- to t!e +:+T+;L 0alue$ +' massi0e TC enqueue waits occur, t!e runtime o' t!e &acku- ma increase si#ni'icantl as a result$ Fowe0er, t!ere are no si"e e''ects on t!e s stem t!at is runnin# in -arallel$ +' t!e &acku- takes too lon# &ecause o' TC enqueues ; TC enqueue is also requeste" i', in t!e context o' -arallel quer accesses, t!e "ata on t!e "isk is accesse" "irectl wit!out usin# t!e &u''er -ool$ To ensure "ata consistenc , ou must ensure t!at all c!an#es to t!e a''ecte" se#ment are written 'rom t!e &u''er -ool to t!e "isk$ T!is occurs in t!e context o' a se#ment c!eck-oint, w!ere t!e TC enqueue is !el"$
TC enqueue waits ma
enq: TC > contention
occur in connection wit! ;LTER T;9LESP;CE 9E=+: 9;C6UP an" w!en ot!er ta&les-ace comman"s suc! as )%%L+:E or RE;, ):LY are use"$ ; c!eck-oint is execute" 'or t!ese o-erations$ D!ile t!e ,9DR writes t!e "irt &locks 'rom t!e &u''er -ool to t!e !ar" "isk, t!e s stem waits 'or a TC enqueue$ Lon# runtimes ma &e cause" & a lar#e &u''er -ool or -oor ,9DR -er'ormance$
;ctions t!at make it necessar to access t!e control 'ile can &e 'or exam-le, 9E=+: 9;C6UP, re"olo# arc!i0in# & an ;RCF -rocess, or a lo#'ile switc! & t!e L=DR -rocess$ +' a C% enqueue is requeste" wit!in a -erio" o' (I minutes wit!out success, )R;3HH6HH C.(H5E occurs, an" t!e )racle instance ma terminate 1see :ote 6I<J//2$$ +n 8c!eck-oint not com-lete8 situations 1:ote JG5/(2, t!e L=DR -rocess ma wait 'or a lon# time 'or t!e C% enqueue$ T!is is a 'ollow3on -ro&lem$ T!e 8c!eck-oint not com-lete8 situations t!at cause t!is -ro&lem must &e correcte" 1:ote JG5((52$
ORACLE ENQUEUE WAITS & CAUSES WITH POSSIBLE ACTIONS TO BE CHECKED OR VERFIED
See :ote 6I<J//, w!ic! contains -ossi&le causes an" solutions 'or C% enqueues an" t!e )R;3HH6HH C.(H5E t!at are tri##ere" & it$ C% enqueue waits ma also occur "urin# an ;rc!i0er stuck 1:ote 5G(2 since in suc! cases t!e ;RCF -rocess ma !ol" t!e C% enqueue 'or a lon# time$ +n t!is case, C% enqueue are onl a 'ollow3on -ro&lemL a'ter ou sol0e t!e ;rc!i0er stuck situation, t!e enqueue waits will also "isa--ear$ Can also &e cause" "ue to slow network s stems ; session t!at must carr out a sortin# -rocess on t!e "isk must 'irst request a corres-on"in# Sort Se#ment$ Until t!is request is met, t!e session waits on t!e Dait E0ent 8sort se#ment request8$ +' se0eral sessions request a sort se#ment "urin# t!is time, t!ese sessions wait on an SS enqueue$ T!e SS enqueue occurs in -articular i' t!e S4): -rocess is 0er &us an" cannot res-on" to t!e incomin# requests -rom-tl $ T!is ma !a--en, 'or exam-le, w!en it carries out lar#e roll&ack acti0ities$ +' ou encounter -er'ormance -ro&lems "ue to SS enqueues, ou 'irst !a0e to im-ort t!e most recent )racle Patc!set, since ol"er -atc!sets ma &e -artiall res-onsi&le 'or -ro&lems wit! SS enqueues Si#ni'icant waitin# times 'or t!is enqueue t -e are #enerall a result o' ot!er -ro&lems, suc! as8lo# &u''er s-ace8 waits$ T!ere'ore, c!eck w!et!er t!ere are also noticea&le Dait E0ents "urin# times o' increase" %9 Enqueue Daits$
Si#ni'icant waitin# times on t!is enqueue are #enerall connecte" to runtime -ro&lems "urin# t!e -arameter c!an#e$ You must -rimaril c!eck w!et!er t!ere are 8;LTER $$$ SET8 comman"s wit! lon#er runtime an" w!at is tri##erin# t!is increase" runtime$
T!ere'ore, t!e PS enqueue is usuall a 'ollow3u- -ro&lem an" ou must in0esti#ate w! t!e start o' t!e sla0e !as &een "ela e" 1'or exam-le, & anal @in# a wait e0ent2$
ORACLE ENQUEUE WAITS & CAUSES WITH POSSIBLE ACTIONS TO BE CHECKED OR VERFIED
or -arsin# t!e statement to &e execute"$
+or more in.ormation about t3e parallel quer*, see ote 6D1060) "n "racle 101 (10)B)0)3 or lo4er), bu1 DE0F030 .or statements suc3 as , ?ER! ))) ?E-EC! or ;ER>E and t3e use o. parallel eAecution ma* cause a Gcursor5 pin HG and Genq5 =? I contentionG deadloc0) :s a 4or0around, *ou can use _//?_U?E_;U!EH_=, 8 +:-?E to deactivate t3e use o. muteAes (see ote E6C3CC)) C!eck t!e a--lication "esi#n i' it is causin# -er'ormance issues, likel t!e somew!ere in a--lication co"e t!is -acka#e is in use Balues ma &e increase" in connection wit! -aralleli@e" online reor#ani@ations, w!ic! "oes not usuall require an ma*or c!an#es$ +' t!ere is an R;C en0ironment -ro&lem wit! enqueues, c!eck i' t!e -ro&lem is sol0e" & im-ortin# t!e current -atc! set$ +' not, o-en an S;P customer messa#e 'or a more t!orou#! anal sis$ +ncrease" wait times are usuall a result o' -oor ,9DR -er'ormance$ T!ere'ore, c!eck t!e )racle +M) &e!a0ior accor"in# to :ote JG5((5$
T!ere s!oul" &e no si#ni'icant wait times 'or t!ese enqueues$ ,ue to )racle &u# 6H<5<(I, t!e S4): -rocess ma allocate t!e TS enqueue at le0el 5 alt!ou#! t!e 4HH( -rocess requires t!is enqueue at le0el 6, &ut must wait 'or S4):$ ;t t!e same time, 4HH( !as alrea" exclusi0el allocate" t!e SS enqueue,