Document Type | Technical Information
Category | Monitoring/Inspection
Applicable Product Version | Tibero 7.2.4
Document Number | TMOTI050
Overview
You can use the dump function to check how information related to transaction processing is recorded and handled inside a data block.
This document was conducted in the following test environment.
$ tbboot -v
Tibero 7 (DB 7.2.4) Build 303667
Linux bistro-build-centos_8.4 5.15.0-134-generic #145~20.04.1-Ubuntu SMP Mon Feb 17 13:27:16 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux version (little-endian)
Patch files (FS02PS_700093a FS02PS_700103a FS02PS_344166f FS02PS_700110a FS02PS_342949f)
Compiled with "cc -no-pie -ggdb -fstack-protector-all -fno-strict-aliasing -fno-omit-frame-pointer -pipe -O3 -D_OPT_COMPILED -U_FORTIFY_SOURCE -D_USE_VIP -Wall -W -Werror-implicit-function-declaration -Wno-unused-parameter -Wpointer-arith -Wdeclaration-after-statement -DHAVE_CONFIG_H -D_WORDSIZE=64 -D_OS_LINUX -D_LINUX_X86_64 -D_X86 -DUSE_ASSERT -DTSAM -DTSAM_NO_ESDS_SEQUENCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_USE_FSYNC -D_CHECK_LICENSE -D_STBLOG -D_TAC -DFD_SETSIZE=8192 -D_CM_OBSERVER -D_USE_FALLOCATE -D_GNU_SOURCE -D_GNU_SOURCE -D_GNU_SOURCE -D_GNU_SOURCE -DHAVE_EPOLL"
Compiled at Oct 13 2025 01:59:51 build seq 303667 init rev {2023-11-24}
Method
Scenario for Checking ITL Changes in Data Blocks According to Transactions
Data Creation
-- Create table and insert data
CREATE TABLE TIBERO.T (C1 NUMBER, C2 VARCHAR(2000));
INSERT INTO TIBERO.T VALUES(111,'A');
INSERT INTO TIBERO.T VALUES(222,'B');
INSERT INTO TIBERO.T VALUES(333,'C');
INSERT INTO TIBERO.T VALUES(444,'D');
INSERT INTO TIBERO.T VALUES(555,'E');
INSERT INTO TIBERO.T VALUES(666,'F');
-- Query data
SELECT C1, SUBSTR(C2, 1, 1) C2 FROM TIBERO.T ;
C1 C2
---------- ----
111 A
222 B
333 C
444 D
555 E
666 F
-- Query file and block number
SELECT C1
, ROWID
, DBMS_ROWID.ROWID_BLOCK_NUMBER(ROWID) AS BLKNO
, DBMS_ROWID.ROWID_TO_RELATIVE_FNO(ROWID) AS FNO2
FROM TIBERO.T ;
C1 ROWID BLKNO FNO2
---------- -------------------- ---------- ----------
111 AAABE2AACAAAAAOAAA 14 2
222 AAABE2AACAAAAAOAAB 14 2
333 AAABE2AACAAAAAOAAC 14 2
444 AAABE2AACAAAAAOAAD 14 2
555 AAABE2AACAAAAAOAAE 14 2
666 AAABE2AACAAAAAOAAF 14 2
Executing Block Dump
Perform the operation on the block identified above.
-- Perform block dump
ALTER SYSTEM DUMP DATAFILE 2 BLOCK 14 ;
-- Check dump in another session
[tibero@tibero tracedump]$ ls -l
-rw-r--r-- 1 tibero dba 2095 Nov 27 09:06 tb_dump_1575_145_3128.trc
Checking Block Dump
Open and check the generated dump file.
**Dump start at 2025-11-27 09:16:51
DUMP of BLOCK file #2 block #14
**Dump start at 2025-11-27 09:16:51
data block Dump[dba=02_00000014(8388622),tsn=0000.000157fa,type=13,seqno =1, flag=16]
--------------------------------------------------------------
sgmt_id=4406 cleanout_tsn=0000.0001580e btxcnt=2
l1dba=02_00000007(8388615), offset_in_l1=7
btx xid undo fl tsn/credit
00 0004.46.0018 01_00003265.00001.00015 A 0000.000157fa
01 0000.00.0000 00_00000000.00000.00000 I 0000.00000000
--------------------------------------------------------------
Data block dump:
dlhdr_size=20 freespace=8030 freepos=8134 symtab_offset=0 rowcnt=6
Row piece dump:
rp 0 8179: [9] flag=--H-FL-- itlidx=0 colcnt=2
col 0: [4]
0000: 03 C2 81 8B ....
col 1: [2]
0000: 01 41 .A
rp 1 8170: [9] flag=--H-FL-- itlidx=0 colcnt=2
col 0: [4]
0000: 03 C2 82 96 ....
col 1: [2]
0000: 01 42 .B
rp 2 8161: [9] flag=--H-FL-- itlidx=0 colcnt=2
col 0: [4]
0000: 03 C2 83 A1 ....
col 1: [2]
0000: 01 43 .C
col 0: [4]
0000: 03 C2 84 AC ....
col 1: [2]
0000: 01 44 .D
rp 4 8143: [9] flag=--H-FL-- itlidx=0 colcnt=2
col 0: [4]
0000: 03 C2 85 B7 ....
col 1: [2]
0000: 01 45 .E
rp 5 8134: [9] flag=--H-FL-- itlidx=0 colcnt=2
col 0 data-id="131" 0000: 03 C2 86 C2 ....
col 1: [2]
0000: 01 46 .F
End of data block dump
For itl (Interested Transaction List) 0, the fl (flag) value is registered as 'A'.
This indicates that the transaction is currently in an active state and has not yet been committed.
Currently, there are 6 row pieces (rp) in 1 block (14).
The xid value for itl 0 is 0004.46.0018, which corresponds to the three columns (USN, SLOT, WRAP) in the v$transaction view.
- USN=4: Stores information for rollback in undo segment number 4
- SLOT=46: Stores transaction-related information in the 46th transaction slot in the header block of undo segment 4
- WRAP=18: Indicates that the transaction slot has been reused 18 times (increases by 1 each time it is reused)
The uea value in itl 0 indicates the address within the undo block. If you go to the corresponding undo block, it stores the undo data for the data block.
In other words, since the result of this dump is before commit, all 6 rows have an fl value of 'A' in the itl information, meaning the transaction is in an Active state and is in progress.