enq: RO fast object reuse 和 enq: KO fast object checkpoint
enq: RO fast object reuse
它是用於同步前臺程式與後臺程式(dbwr, ckpt)的。當你truncate或者drop一個物件的時候,前臺程式,首先獲取一個RO enq, 以排它模式。
CKPT程式,請求單物件checkpoint,並請求DBWr寫髒塊,並把buffer裡的塊無效化。DBWR把所有的塊寫完以後, 前臺程式釋放RO enq,這是它使用的過程。
如果有多個session同時truncate/drop就會發生爭用。
truncate, drop之前要把buffer pool刷出去。
D111 2015/4/18 18:55:07
是的
上海2015/4/18 18:55:15
_db_fast_obj_truncate把這個引數關掉,truncate時,這個行為就沒了。
D111- 2015/4/18 18:55:17
所以 ddl操作也是比較費資源的
上海 2015/4/18 18:55:28
要刷出去就要加RO enq.
D111 2015/4/18 18:55:53
直路徑讀之前,也有類似的行為。。。
上海2015/4/18 18:59:11
enq: KO - fast object checkpoint
D103 2015/4/18 19:00:45
恩 研究研究
上海 2015/4/18 19:01:12
在direct path read之前,也要把髒塊先寫進資料檔案, 如果ckpt,dbwr不夠快等原因,就會有KO的等待。
上海2015/4/18 19:02:13
SQL> r
1* select description from v$lock_type where type='KO'
DESCRIPTION
--------------------------------------------------------------------------------
Coordinates checkpointing of multiple objects
D103- 2015/4/18 19:02:18
direct path read 之前為什麼要先寫 髒塊呢
D103 2015/4/18 19:02:28
以為要從磁碟 讀 最新的 是吧
D1112015/4/18 19:02:34
因為不走 buffer cache
上海 2015/4/18 19:02:43
你想,它從資料檔案直接讀。。。不寫髒塊,那不讀錯了呀。
上海 2015/4/18 19:02:46
是的。
D103 2015/4/18 19:02:58
明白
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29990276/viewspace-1585026/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- enq: RO - fast object reuseENQASTObject
- 針對enq: KO - fast object checkpoint的優化ENQASTObject優化
- 記一次enq: RO - fast object reuse等待事件ENQASTObject事件
- enq: KO - fast object checkpoint 等待事件與 direct path read - 1ENQASTObject事件
- enq: KO - fast object checkpoint 等待事件與 direct path read - 2ENQASTObject事件
- enq: KO - fast object checkpoint 等待事件與 direct path read - 3ENQASTObject事件
- 11.2使用KEEP池導致ENQ: KO - Fast Object Checkpoint等待ENQASTObject
- [20210527]enq RO - fast object reuse Final Blocker.txtENQASTObjectBloC
- [20210527]enq KO - fast object checkpoint Final Blocker.txtENQASTObjectBloC
- fast_start_mttr_target & log_checkpoint_timeoutAST
- zt_Oracle enq: TX contention 和 enq: TM contention 等待事件OracleENQ事件
- fast_start_parallel_rollback與v$fast_start_servers和v$fast_start_transactionsASTParallelServer
- object checkpoint物件檢查點小記Object物件
- enq: US - contentionENQ
- enq: HW - contentionENQ
- enq: TM - contentionENQ
- enq:TM contentionENQ
- enq: DX - contentionENQ
- enq: TS - contentionENQ
- 索引分裂的enq索引ENQ
- index fast full scan 和 nullIndexASTNull
- OBJECT_ID和DATA_OBJECT_IDObject
- Fast Car GameASTGAM
- Fast-StartAST
- enq:TX - index contentionENQIndex
- enq: TX - index contentionENQIndex
- fast-CGI 和 PHP-fpmASTPHP
- fail-fast和fail-safeAIAST
- enq: DX – contention和inactive transaction branchENQ
- CSS3 object-fit 和 object-positionCSSS3Object
- Value Object 和 POJOObjectPOJO
- Index Full Scans和Index Fast Full ScansIndexAST
- enq: TX - row lock contentionENQ
- RAC中的enq: TS等待ENQ
- 關於enq: US – contentionENQ
- enq: TX - allocate ITL entryENQ
- enq: WF - contention等待事件ENQ事件
- enq: CF - contention 等待事件ENQ事件