Example:
LIBRARY OBJECT LOCK: lock=30a6d48 handle=323fe98 mode=X
call pin=0 session pin=0
user=302714c session=302714c count=1 flags=[00] savepoint=86
LIBRARY OBJECT HANDLE: handle=323fe98
name=KQUINN.OOOOOOOOOO
hash=858c6bc0 timestamp=NULL
namespace=TABL/PRCD flags=TIM/SML/[02000000]
kk-dd-aa-ll=00-09-00-09 lock=X pin=S latch=2
lwt=323feb0[323feb0,323feb0] ltm=323feb8[323feb8,323feb8]
pwt=323fec8[323fec8,323fec8] ptm=323ff1c[323ff1c,323ff1c]
ref=323fea0[323fea0,323fea0]
LIBRARY OBJECT: bject=323fc80
flags=NEX[0002] pflags= [00] status=VALD load=0
DATA BLOCKS:
data# heap pointer status pins change
----- -------- -------- ------ ---- ------
0 324bd44 323fd40 I/P/A 0 NONE
3 323fcf0 0 -/P/- 1 NONE
Notes:
@@ o Document use of events to limit verbosity
Meaning:
@@
lock.............lk@
handle...........Address of object handle for this lock.
mode.............Lock mode held. Same format as pin mode held.
request..........Lock mode requested. Same format as mode.
call pin.........Address of pin that is pinning this object for the call.
session pin......Address of pin that is pinning this object for the session.
user.............Address of user session holding this lock.
session..........Address of session holding this lock.
count............Reference count.
flags............Status flags. Format is %s[%02x].
0x01 - This lock is broken. [BRO]
0x02 - This lock can be broken. [CBB]
@@ only certain types can be broken. See KGLLKCBB
0x04 - The call pin is a valid pin for the call [PNC]
0x08 - The session pin is a valid pin for the session [PNS]
0x10 - This lock is in CGA memory. [CGA]
+ flag dumped in the brackets [02x]
savepoint........Savepoint number when this was acquired.
@ kgldmp()
Then the object's details are dumped following LIBRARY OBJECT HANDLE :
handle...........@hd
name.............KGLNAOWN(kglhdnam).object.dblink.??? (if not CRSR) @@@
@@ or dumps SQL if CRSR ?@@
hash.............@@kglnahsh
timestamp........Timestamp (when loaded?@) or NULL if not defined (why not?)@
previous.........Previous timestamp (optional). kglnaptm @@@ If the previous
timestamp was NULL (but defined nevertheless) then print
NULL.
namespace........Character represenation of the namespace in the library
cache where this exists. This can be one of :
0 - [CRSR] Cursor
1 - [TABL/PRCD] Table/view/sequence/synonym/procedure/
function or package specification
2 - [BODY] Package Body
3 - [TRGR] Database Trigger
4 - [INDX] Index
5 - [CLST] Cluster
6 - [OBJE] Object
7 - [PIPE] Database Pipe
8 - [?] Invalid (out of range)
flags............Set of flags represented in character form. followed by the
flag bitmask in hexidecimal.
0x00010000 - [RON] Read-only/non-stored (eg shared cursor)
0x00020000 - [REM] Object is remote
0x00040000 - [FIX] This object is fixed. @@
0x00080000 - [CGA] This object is in CGA memory.
0x00400000 - [OBS] This object is obselete.Do not use again.
0x00800000 - [KEP] Keep this object pinned at all times.
0x01000000 - [SEC] This object is secondary. @@@
0x02000000 - [SML] Small handle so use KGHX to allocate @@@
0x04000000 - [FUL] Free the object upon unlock.
0x08000000 - [FUP] Free the object upon unpin.
0x10000000 - [PN0] Pin heap 0 as long as it is locked.
0x20000000 - [USE] In use - do not unpin.
0x40000000 - [MED] Medium handle so use KGHX to allocate @@@
0x80000000 - [FRE] In the list of handles to be freed. @@@
0x00000001 - [LRG] Large handle so use KGHX to allocate @@@
KGLISTIM(hd) ? "TIM/" : estr, KGLISPTM(hd) ? "PTM/" : estr,
(unsigned)hd->kglhdflg);
kk-dd-aa-ll......This dumps the values of four types of bitmask. The values
are printed in decimal and should be interpreted according
to the method discussed for 'mask' under the state object
'Library Object Pin'. The four types are :
kk - Mask indicating data blocks to keep pinned.
dd - Mask indicating the loaded data blocks.
aa - Mask indicating allocated or pinned data blocks.
(Comment saying that this should be removed and that
if bits are set then we guarantee that the object
heap is pinned and cannot be aged out. We can
therefore access just using the pin latch).
ll - Mask indicating loaded-once data blocks.
lock.............Current lock mode (0, N, S or X).
pin..............Current pin mode (0, S or X).
latch............Associated child latch identifier.
lwt..............latch address[nxt,prv] @@ kglhdlwt, kgglknxt, kgglkprv
ltm..............As above but with kglhdltm @@
pwt..............As above but with kglhdpwt @@
ptm..............As above but with kglhdptm @@
ref..............@@@
namespace=TABL/PRCD flags=TIM/SML/[02000000]
kk-dd-aa-ll=00-09-00-09 lock=X pin=S latch=2
lwt=323feb0[323feb0,323feb0] ltm=323feb8[323feb8,323feb8]
pwt=323fec8[323fec8,323fec8] ptm=323ff1c[323ff1c,323ff1c]
ref=323fea0[323fea0,323fea0]
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/16158219/viewspace-605718/
,如需转载,请注明出处,否则将追究法律责任。