[20210524]分析library cache轉儲 4.txt
[20210524]分析library cache轉儲 4.txt
--//連結http://blog.itpub.net/267265/viewspace-2773571/=》[20210524]分析library cache轉儲 3.txt
--//繼續測試多個sql語句hash_value值相同的情況,說明一點實際上並不是hash_value一樣才會在一個bucket,
--//我的測試環境僅僅有131072個buecket,好像很大記憶體的配置也是131072個bucket。
--//131072 = 0x20000,也就是full_hash_vlue & 0x1ffff ,相當於後21bit相等的都會在一個bucket裡面。
--//當然hash_value一樣一定在一個bucket 裡面。
1.環境:
SCOTT@book> @ ver1
PORT_STRING VERSION BANNER
------------------------------ -------------- --------------------------------------------------------------------------------
x86_64/Linux 2.4.xx 11.2.0.4.0 Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
2.找到一些sql語句hash_value一樣。
--//參考http://externaltable.blogspot.com/2012/06/hash-collisions-sql-signatures-and.html
--//花了一個下午找到僅僅有4個hash_value,注本來想找到20個以上的情況,不現實放棄。
SCOTT@book> create table dula as select * from dual ;
Table created.
define SQL1='select sysdate from dual --'
define SQL2='select sysdate from dula --'
SELECT hashval
,SUBSTR (hashval, 25, 8)
,sql_type
,DECODE (sql_type, 1, '&SQL1', 2, '&SQL2', NULL) || SQL || ';'
sql_text
FROM HASH_1
WHERE SUBSTR (hashval, 25, 8) IN ( SELECT SUBSTR (hashval, 25, 8)
FROM HASH_1
GROUP BY SUBSTR (hashval, 25, 8)
HAVING COUNT (*) > 3)
ORDER BY SUBSTR (hashval, 25, 8);
HASHVAL SUBSTRHASHVAL,2 SQL_TYPE SQL_TEXT
---------------------------------------- ---------------- ---------- ------------------------------------------------------------
7fa0440cb576468eee514bd1865821d8 865821d8 2 select sysdate from dula --QVJzuaXTQDRWAMQsUKRahCOmcllpAYLn;
9d524191de77830512606b60865821d8 865821d8 2 select sysdate from dula --hBaTOrXVlpVzFMMfuJFHWWksdoGuzZdc;
4823f0eab9589f52ce20856e865821d8 865821d8 1 select sysdate from dual --heqVJLdwOOvUbNnwDpaMwowplkAymAhs;
85e2a9308c0fdac36dd09edd865821d8 865821d8 1 select sysdate from dual --SYWAvXlLqpLVnKmYQGOJxklMrToCdoUD;
--//這裡記錄的HASHVAL與實際hash_value大小頭要對調一下。
$ cat aa1.txt
select sysdate from dula --QVJzuaXTQDRWAMQsUKRahCOmcllpAYLn;
@ hash
select sysdate from dula --hBaTOrXVlpVzFMMfuJFHWWksdoGuzZdc;
@ hash
select sysdate from dual --heqVJLdwOOvUbNnwDpaMwowplkAymAhs;
@ hash
select sysdate from dual --SYWAvXlLqpLVnKmYQGOJxklMrToCdoUD;
@ hash
--//執行如下:
SCOTT@book> @ aa1.txt
SYSDATE
-------------------
2021-05-24 09:10:30
HASH_VALUE SQL_ID CHILD_NUMBER HASH_HEX
---------- ------------- ------------ ---------
3626064006 d2kujxvc22q46 0 d8215886
SYSDATE
-------------------
2021-05-24 09:10:30
HASH_VALUE SQL_ID CHILD_NUMBER HASH_HEX
---------- ------------- ------------ ---------
3626064006 60uv02bc22q46 0 d8215886
SYSDATE
-------------------
2021-05-24 09:10:30
HASH_VALUE SQL_ID CHILD_NUMBER HASH_HEX
---------- ------------- ------------ ---------
3626064006 6x190tvc22q46 0 d8215886
SYSDATE
-------------------
2021-05-24 09:10:30
HASH_VALUE SQL_ID CHILD_NUMBER HASH_HEX
---------- ------------- ------------ ---------
3626064006 dv7qhdrc22q46 0 d8215886
--//執行多次可以發現HASH_VALUE一樣,記住sql_id 分別是d2kujxvc22q46,60uv02bc22q46,6x190tvc22q46,dv7qhdrc22q46。
--//位於 bueckt = 3626064006 % 131072 = 88198,88198 = 0x15886。
3.轉儲library cache:
SYS@book> oradebug setmypid
Statement processed.
SYS@book> @ tix
New tracefile_identifier = /u01/app/oracle/diag/rdbms/book/book/trace/book_ora_40996_0002.trc
SYS@book> oradebug dump library_cache 10;
Statement processed.
--//單獨把Bucket: #=88198內容儲存為一個檔案(bucket88198.txt)便於分析。
$ grep "select sysdate from du" bucket88198.txt
ObjectName: Name=select sysdate from dual --SYWAvXlLqpLVnKmYQGOJxklMrToCdoUD
ObjectName: Name=select sysdate from dual --heqVJLdwOOvUbNnwDpaMwowplkAymAhs
ObjectName: Name=select sysdate from dula --hBaTOrXVlpVzFMMfuJFHWWksdoGuzZdc
ObjectName: Name=select sysdate from dula --QVJzuaXTQDRWAMQsUKRahCOmcllpAYLn
--//顯示的順序正好與前面的執行順序相反。
$ egrep "sql_id|^ LibraryHandle" bucket88198.txt
LibraryHandle: Address=0x7cd73a38 Hash=d8215886 LockMode=N PinMode=0 LoadLockMode=0 Status=VALD
Parent Cursor: sql_id=dv7qhdrc22q46 parent=0x7cd72a68 maxchild=1 plk=y ppn=n
LibraryHandle: Address=0x7cd794e8 Hash=d8215886 LockMode=N PinMode=0 LoadLockMode=0 Status=VALD
Parent Cursor: sql_id=6x190tvc22q46 parent=0x7cd78518 maxchild=1 plk=y ppn=n
LibraryHandle: Address=0x7e0ea7c8 Hash=d8215886 LockMode=N PinMode=0 LoadLockMode=0 Status=VALD
Parent Cursor: sql_id=60uv02bc22q46 parent=0x7cd7d948 maxchild=1 plk=y ppn=n
LibraryHandle: Address=0x7c6c5a48 Hash=d8215886 LockMode=N PinMode=0 LoadLockMode=0 Status=VALD
Parent Cursor: sql_id=d2kujxvc22q46 parent=0x7d1d05d8 maxchild=1 plk=y ppn=n
$ head -1 bucket88198.txt
Bucket: #=88198 Mutex=0x8049bd20(0, 232, 0, 6)
--//mutex地址0x8049bd20,減去0x10 就是bucket的地址:0x8049bd10
SYS@book> oradebug peek 0x8049bd10 40
[08049BD10, 08049BD38) = 7CD73A38 00000000 7C6C5A48 00000000 00000000 00000000 000000E8 00000000 00015886 00000000
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--//注意看前16位元組,0x7CD73A38,正好是sql_id=dv7qhdrc22q46的父遊標控制程式碼。0x7C6C5A48正好是sql_id=d2kujxvc22q46的 父遊標控制程式碼.
--//這樣bucket記錄的前8位就是連結串列的尾部,後8位就是連結串列的開頭。如何連結起來的呢?
--//後記:看了後面的分析,感覺應該反過來,前8位就是連結串列的開頭(最後執行的sql語句父遊標控制程式碼),後8位就是連結串列的尾部。
4.看看如何連結:
--//我以前測試可以發現父遊標控制程式碼的地址減去0x30正好就是父遊標控制程式碼chunk的開始地址。
SYS@book> @ fcha 0x7cd73a38
LOC KSMCHPTR KSMCHIDX KSMCHDUR KSMCHCOM KSMCHSIZ KSMCHCLS KSMCHTYP KSMCHPAR
--- ---------------- ---------- ---------- ---------------- ---------- -------- ---------- ----------------
SGA 000000007CD73A08 1 1 KGLHD 592 recr 80 00
--//0x7cd73a38 0x000000007CD73A08 正好相差0x30.後面的不再執行fcha,不然寫的太長..
SYS@book> @ tix
New tracefile_identifier = /u01/app/oracle/diag/rdbms/book/book/trace/book_ora_40996_0003.trc
oradebug peek 0x7CD73A08 592 1
oradebug peek 0x7cd794b8 592 1
oradebug peek 0x7e0ea798 592 1
oradebug peek 0x7c6c5a18 592 1
SYS@book> oradebug peek 0x8049bd10 40
[08049BD10, 08049BD38) = 7CD73A38 00000000 7C6C5A48 00000000 00000000 00000000 000000E8 00000000 00015886 00000000
SYS@book> oradebug peek 0x7CD73A08 592 1
[07CD73A08, 07CD73C58) = 00000251 80B38F00 7CD73918 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00080050 7CD794E8 00000000 ...
SYS@book> oradebug peek 0x7cd794b8 592 1
[07CD794B8, 07CD79708) = 00000251 80B38F00 7CD793C8 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00080050 7E0EA7C8 00000000 ...
SYS@book> oradebug peek 0x7e0ea798 592 1
[07E0EA798, 07E0EA9E8) = 00000251 80B38F00 7E0EA6A8 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00080050 7C6C5A48 00000000 ...
SYS@book> oradebug peek 0x7c6c5a18 592 1
[07C6C5A18, 07C6C5C68) = 00000251 80B38F00 7C6C57F8 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00080050 8049BD10 00000000 ...
--//注意看倒數的8位,7CD794E8 7E0EA7C8 7C6C5A48 8049BD10
--//這不正好與前面看到LibraryHandle的地址對應上嗎,最後一個8049BD10對應該bucket的地址。
$ egrep "^ LibraryHandle" bucket88198.txt
LibraryHandle: Address=0x7cd73a38 Hash=d8215886 LockMode=N PinMode=0 LoadLockMode=0 Status=VALD
LibraryHandle: Address=0x7cd794e8 Hash=d8215886 LockMode=N PinMode=0 LoadLockMode=0 Status=VALD
LibraryHandle: Address=0x7e0ea7c8 Hash=d8215886 LockMode=N PinMode=0 LoadLockMode=0 Status=VALD
LibraryHandle: Address=0x7c6c5a48 Hash=d8215886 LockMode=N PinMode=0 LoadLockMode=0 Status=VALD
--//這樣正好形成一個連結串列。
5.清除一個游標從共享池看看,注意不能使用dbms_shared_pool.purge.這樣僅僅清除子游標。
--//按照vage以前的介紹,必須退出會話,再開啟新的會話,執行語句,再重新整理共享池。
--//修改aa1.txt指令碼,註解第一條sql語句。
$ cat aa1.txt
--select sysdate from dula --QVJzuaXTQDRWAMQsUKRahCOmcllpAYLn;
--@ hash
select sysdate from dula --hBaTOrXVlpVzFMMfuJFHWWksdoGuzZdc;
@ hash
select sysdate from dual --heqVJLdwOOvUbNnwDpaMwowplkAymAhs;
@ hash
select sysdate from dual --SYWAvXlLqpLVnKmYQGOJxklMrToCdoUD;
@ hash
--//退出會話在登入,執行aa1.txt 指令碼多次:
SCOTT@book> @ aa1.txt
SYSDATE
-------------------
2021-05-24 09:45:19
HASH_VALUE SQL_ID CHILD_NUMBER HASH_HEX
---------- ------------- ------------ ---------
3626064006 60uv02bc22q46 0 d8215886
SYSDATE
-------------------
2021-05-24 09:45:19
HASH_VALUE SQL_ID CHILD_NUMBER HASH_HEX
---------- ------------- ------------ ---------
3626064006 6x190tvc22q46 0 d8215886
SYSDATE
-------------------
2021-05-24 09:45:19
HASH_VALUE SQL_ID CHILD_NUMBER HASH_HEX
---------- ------------- ------------ ---------
3626064006 dv7qhdrc22q46 0 d8215886
SYS@book> oradebug peek 0x8049bd10 40
[08049BD10, 08049BD38) = 7CD73A38 00000000 7C6C5A48 00000000 00000000 00000000 000000F2 00000000 00015886 00000000
--//現在還是與前面一樣。
SYS@book> alter system flush shared_pool;
System altered.
SYS@book> alter system flush shared_pool;
System altered.
SYS@book> @ sharepool/shp4 d2kujxvc22q46 0
no rows selected
--//開始執行的第一條語句已經不在共享池。
oradebug peek 0x7CD73A08 592 1
oradebug peek 0x7cd794b8 592 1
oradebug peek 0x7e0ea798 592 1
SYS@book> oradebug peek 0x8049bd10 40
[08049BD10, 08049BD38) = 7CD73A38 00000000 7E0EA7C8 00000000 00000000 00000000 000000F7 00000000 00015886 00000000
--//注意看bucket地址的後8為變成了7E0EA7C8.
--//看看現在的連結情況:
SYS@book> oradebug peek 0x7CD73A08 592 1
[07CD73A08, 07CD73C58) = 00000251 80B38F00 7CD73918 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00080050 7CD794E8 00000000 ...
--//0x7CD794E8-0x30 = 2094503096 ,2094503096 = 0x7cd794b8
SYS@book> oradebug peek 0x7CD794B8 592 1
[07CD794B8, 07CD79708) = 00000251 80B38F00 7CD793C8 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00080050 7E0EA7C8 00000000 ...
--//0x7E0EA7C8-0x30 = 2114889624,2114889624 = 0x7e0ea798
SYS@book> oradebug peek 0x7e0ea798 592 1
[07E0EA798, 07E0EA9E8) = 00000251 80B38F00 7E0EA6A8 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00080050 8049BD10 00000000 ...
--//7CD794E8,7E0EA7C8,8049BD10.
--//你可以發現最後的peek,現在記錄的是8049BD10.正好是bucket的地址。而不是原來執行第一條語句的父遊標控制程式碼。
--//另外你還可以發現父遊標控制程式碼中的許多資訊,實際上就是一些指來指去的指標。
--//比如:
SYS@book> @ fcha 7E0EA6A8
LOC KSMCHPTR KSMCHIDX KSMCHDUR KSMCHCOM KSMCHSIZ KSMCHCLS KSMCHTYP KSMCHPAR
--- ---------------- ---------- ---------- ---------------- ---------- -------- ---------- ----------------
SGA 000000007E0EA6A8 1 1 KGLDA 240 freeabl 0 00
--//就是父遊標堆0 的描述符地址。
SYS@book> @ sharepool/shp4 60uv02bc22q46 0
TEXT KGLHDADR KGLHDPAR C40 KGLHDLMD KGLHDPMD KGLHDIVC KGLOBHD0 KGLOBHD6 KGLOBHS0 KGLOBHS6 KGLOBT16 N0_6_16 N20 KGLNAHSH KGLOBT03 KGLOBT09
--------------------- ---------------- ---------------- ---------------------------------------- ---------- ---------- ---------- ---------------- ---------------- ---------- ---------- ---------- --------- ---------- ---------- ------------- ----------
child handle address 000000007E0EA348 000000007E0EA7C8 select sysdate from dula --hBaTOrXVlpVzF 1 0 1 000000007E0EA290 000000007CD7DF68 4528 8088 3092 15708 15708 3626064006 60uv02bc22q46 0
parent handle address 000000007E0EA7C8 000000007E0EA7C8 select sysdate from dula --hBaTOrXVlpVzF 1 0 1 000000007E0EA710 00 4752 0 0 4752 4752 3626064006 60uv02bc22q46 65535
SYS@book> @ fcha 000000007E0EA710
LOC KSMCHPTR KSMCHIDX KSMCHDUR KSMCHCOM KSMCHSIZ KSMCHCLS KSMCHTYP KSMCHPAR
--- ---------------- ---------- ---------- ---------------- ---------- -------- ---------- ----------------
SGA 000000007E0EA6A8 1 1 KGLDA 240 freeabl 0 00
--//指向的就是父遊標堆0 的描述符地址。
總結:
--//也許使用術語不是很專業,希望我能把問題講清楚。實際上更好的理解bucket以及其鏈上的庫物件如何連結在一起的。
--//附上library cache bucket=88198的轉儲內容。
$ cat bucket88198.txt
Bucket: #=88198 Mutex=0x8049bd20(0, 232, 0, 6)
LibraryHandle: Address=0x7cd73a38 Hash=d8215886 LockMode=N PinMode=0 LoadLockMode=0 Status=VALD
ObjectName: Name=select sysdate from dual --SYWAvXlLqpLVnKmYQGOJxklMrToCdoUD
FullHashValue=30a9e285c3da0f8cdd9ed06dd8215886 Namespace=SQL AREA(00) Type=CURSOR(00) Identifier=3626064006 OwnerIdn=83
Statistics: InvalidationCount=0 ExecutionCount=3 LoadCount=2 ActiveLocks=1 TotalLockCount=3 TotalPinCount=1
Counters: BrokenCount=1 RevocablePointer=1 KeepDependency=1 Version=0 BucketInUse=2 HandleInUse=2 HandleReferenceCount=0
Concurrency: DependencyMutex=0x7cd73ae8(0, 2, 0, 0) Mutex=0x7cd73b78(44, 32, 0, 6)
Flags=RON/PIN/TIM/PN0/DBN/[10012841]
WaitersLists:
Lock=0x7cd73ac8[0x7cd73ac8,0x7cd73ac8]
Pin=0x7cd73aa8[0x7cd73aa8,0x7cd73aa8]
LoadLock=0x7cd73b20[0x7cd73b20,0x7cd73b20]
Timestamp: Current=05-24-2021 09:06:00
HandleReference: Address=0x7cd73c20 Handle=(nil) Flags=[00]
ReferenceList:
Reference: Address=0x7cd70568 Handle=0x7cd712c8 Flags=ROD[21]
LibraryObject: Address=0x7cd729c8 HeapMask=0000-0001-0001-0000 Flags=EXS[0000] Flags2=[0000] PublicFlags=[0000]
DataBlocks:
Block: #='0' name=KGLH0^d8215886 pins=0 Change=NONE
Heap=0x7cd73980 Pointer=0x7cd72a68 Extent=0x7cd72948 Flags=I/-/P/A/-/-
FreedLocation=0 Alloc=2.437500 Size=3.976562 LoadTime=13161977630
ChildTable: size='16'
Child: id='0' Table=0x7cd73878 Reference=0x7cd732b8 Handle=0x7cd725b8
NamespaceDump:
Parent Cursor: sql_id=dv7qhdrc22q46 parent=0x7cd72a68 maxchild=1 plk=y ppn=n
LibraryHandle: Address=0x7cd794e8 Hash=d8215886 LockMode=N PinMode=0 LoadLockMode=0 Status=VALD
ObjectName: Name=select sysdate from dual --heqVJLdwOOvUbNnwDpaMwowplkAymAhs
FullHashValue=eaf02348529f58b96e8520ced8215886 Namespace=SQL AREA(00) Type=CURSOR(00) Identifier=3626064006 OwnerIdn=83
Statistics: InvalidationCount=0 ExecutionCount=3 LoadCount=2 ActiveLocks=1 TotalLockCount=3 TotalPinCount=1
Counters: BrokenCount=1 RevocablePointer=1 KeepDependency=1 Version=0 BucketInUse=2 HandleInUse=2 HandleReferenceCount=0
Concurrency: DependencyMutex=0x7cd79598(0, 2, 0, 0) Mutex=0x7cd79628(44, 32, 0, 6)
Flags=RON/PIN/TIM/PN0/DBN/[10012841]
WaitersLists:
Lock=0x7cd79578[0x7cd79578,0x7cd79578]
Pin=0x7cd79558[0x7cd79558,0x7cd79558]
LoadLock=0x7cd795d0[0x7cd795d0,0x7cd795d0]
Timestamp: Current=05-24-2021 09:06:00
HandleReference: Address=0x7cd796d0 Handle=(nil) Flags=[00]
ReferenceList:
Reference: Address=0x7cd76018 Handle=0x7cd76d78 Flags=ROD[21]
LibraryObject: Address=0x7cd78478 HeapMask=0000-0001-0001-0000 Flags=EXS[0000] Flags2=[0000] PublicFlags=[0000]
DataBlocks:
Block: #='0' name=KGLH0^d8215886 pins=0 Change=NONE
Heap=0x7cd79430 Pointer=0x7cd78518 Extent=0x7cd783f8 Flags=I/-/P/A/-/-
FreedLocation=0 Alloc=2.437500 Size=3.976562 LoadTime=13161977620
ChildTable: size='16'
Child: id='0' Table=0x7cd79328 Reference=0x7cd78d68 Handle=0x7cd78068
NamespaceDump:
Parent Cursor: sql_id=6x190tvc22q46 parent=0x7cd78518 maxchild=1 plk=y ppn=n
LibraryHandle: Address=0x7e0ea7c8 Hash=d8215886 LockMode=N PinMode=0 LoadLockMode=0 Status=VALD
ObjectName: Name=select sysdate from dula --hBaTOrXVlpVzFMMfuJFHWWksdoGuzZdc
FullHashValue=9141529d058377de606b6012d8215886 Namespace=SQL AREA(00) Type=CURSOR(00) Identifier=3626064006 OwnerIdn=83
Statistics: InvalidationCount=0 ExecutionCount=3 LoadCount=2 ActiveLocks=1 TotalLockCount=3 TotalPinCount=1
Counters: BrokenCount=1 RevocablePointer=1 KeepDependency=1 Version=0 BucketInUse=2 HandleInUse=2 HandleReferenceCount=0
Concurrency: DependencyMutex=0x7e0ea878(0, 2, 0, 0) Mutex=0x7e0ea908(44, 32, 0, 6)
Flags=RON/PIN/TIM/PN0/DBN/[10012841]
WaitersLists:
Lock=0x7e0ea858[0x7e0ea858,0x7e0ea858]
Pin=0x7e0ea838[0x7e0ea838,0x7e0ea838]
LoadLock=0x7e0ea8b0[0x7e0ea8b0,0x7e0ea8b0]
Timestamp: Current=05-24-2021 09:06:00
HandleReference: Address=0x7e0ea9b0 Handle=(nil) Flags=[00]
ReferenceList:
Reference: Address=0x7cd7bac8 Handle=0x7e0ea058 Flags=ROD[21]
LibraryObject: Address=0x7cd7d8a8 HeapMask=0000-0001-0001-0000 Flags=EXS[0000] Flags2=[0000] PublicFlags=[0000]
DataBlocks:
Block: #='0' name=KGLH0^d8215886 pins=0 Change=NONE
Heap=0x7e0ea710 Pointer=0x7cd7d948 Extent=0x7cd7d828 Flags=I/-/P/A/-/-
FreedLocation=0 Alloc=2.437500 Size=3.976562 LoadTime=13161977620
ChildTable: size='16'
Child: id='0' Table=0x7cd7e758 Reference=0x7cd7e198 Handle=0x7e0ea348
NamespaceDump:
Parent Cursor: sql_id=60uv02bc22q46 parent=0x7cd7d948 maxchild=1 plk=y ppn=n
LibraryHandle: Address=0x7c6c5a48 Hash=d8215886 LockMode=N PinMode=0 LoadLockMode=0 Status=VALD
ObjectName: Name=select sysdate from dula --QVJzuaXTQDRWAMQsUKRahCOmcllpAYLn
FullHashValue=0c44a07f8e4676b5d14b51eed8215886 Namespace=SQL AREA(00) Type=CURSOR(00) Identifier=3626064006 OwnerIdn=83
Statistics: InvalidationCount=0 ExecutionCount=3 LoadCount=2 ActiveLocks=1 TotalLockCount=3 TotalPinCount=1
Counters: BrokenCount=1 RevocablePointer=1 KeepDependency=1 Version=0 BucketInUse=2 HandleInUse=2 HandleReferenceCount=0
Concurrency: DependencyMutex=0x7c6c5af8(0, 2, 0, 0) Mutex=0x7c6c5b88(44, 32, 0, 6)
Flags=RON/PIN/TIM/PN0/DBN/[10012841]
WaitersLists:
Lock=0x7c6c5ad8[0x7c6c5ad8,0x7c6c5ad8]
Pin=0x7c6c5ab8[0x7c6c5ab8,0x7c6c5ab8]
LoadLock=0x7c6c5b30[0x7c6c5b30,0x7c6c5b30]
Timestamp: Current=05-24-2021 09:06:00
HandleReference: Address=0x7c6c5c30 Handle=(nil) Flags=[00]
ReferenceList:
Reference: Address=0x7d1ce848 Handle=0x7c591030 Flags=ROD[21]
LibraryObject: Address=0x7d1d0538 HeapMask=0000-0001-0001-0000 Flags=EXS[0000] Flags2=[0000] PublicFlags=[0000]
DataBlocks:
Block: #='0' name=KGLH0^d8215886 pins=0 Change=NONE
Heap=0x7c361200 Pointer=0x7d1d05d8 Extent=0x7d1d04b8 Flags=I/-/P/A/-/-
FreedLocation=0 Alloc=2.437500 Size=3.976562 LoadTime=13161977570
ChildTable: size='16'
Child: id='0' Table=0x7d1d13e8 Reference=0x7d1d0e28 Handle=0x7c591320
NamespaceDump:
Parent Cursor: sql_id=d2kujxvc22q46 parent=0x7d1d05d8 maxchild=1 plk=y ppn=n
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/267265/viewspace-2773591/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- [20210524]分析library cache轉儲 3.txt
- [20210507]分析library cache轉儲.txt
- Library Cache Pin 及 Library Cache Lock分析
- [20210508]分析library cache轉儲 2.txt
- [20210602]分析library cache轉儲 5.txt
- library cache pin和library cache lock的診斷分析
- library cache pin等待分析
- [20241108]跟蹤library cache lock library cache pin使用gdb(11g)4.txt
- 轉貼_Oradebug hanganalyze分析library cache等待
- zt_如何使用event 10049分析定位library cache lock and library cache pin
- library cache lock和library cache pin理解
- Library cache lock/pin詳解(轉)
- 分析解決因”library cache pin”等待
- oracle library cache之library cache lock_library cache pin wait event釋義OracleAI
- 一次library cache lock 問題分析
- zt_library cache pin和lock等待分析
- [20210902]library_cache物件級別轉儲.txt物件
- Oracle Library cacheOracle
- library cache lock和library cache pin區別總結
- 定位Library Cache pin,Library Cache lock等待的解決方法
- zt_如何平面解決library cache lock和library cache pin
- [20210521]11g shared pool latch與library cache mutex的簡單探究4.txtMutex
- 【等待事件】library cache pin事件
- 等待事件--library cache pin事件
- LIBRARY CACHE LOCK 等待事件事件
- library cache pin 等待事件事件
- 解決Library Cache latchs
- 【ASK_ORACLE】Library Cache概念篇(二)之Library Cache Pin的定義Oracle
- latch:library cache lock等待事件事件
- oracle異常:library cache lockOracle
- 深入理解shared pool共享池之library cache的library cache lock系列四
- 深入理解shared pool共享池之library cache的library cache pin系列三
- [20240824]跟蹤library cache lock library cache pin使用gdb.txt
- shared pool之三:library cache結構/library cache object的結構-dump LibraryHandleObject
- sql version count引發cursor:pin s wait x及library cache latch library cache lockSQLAI
- [20240920]跟蹤library cache lock library cache pin使用gdb.txt
- Oracle Library cache mutex x tipsOracleMutex
- 解決library cache pin等待事件事件