How to identify file# & block# from rdba value?

  • From: "Don Granaman" <DonGranaman@xxxxxxxxxxxxxxx>
  • To: "oracle-l" <oracle-l@xxxxxxxxxxxxx>
  • Date: Mon, 19 Jan 2009 11:13:16 -0600

After running 'analyze table SCAN_RUN validate structure cascade online,
a trace file showed:

row not found in index tsn: 20 rdba: 0x0500428c
env: (scn: 0x0006.8098c3d5  xid: 0x0013.002.00067ca1  uba:
0x0114f97a.e761.33  statement num=0  parent xid: xid:
0x0000.000.00000000  scn: 0x0006.63cdc395 8sch: scn: 0x0000.00000000)
col 0; len 3; (3):  c2 30 5e
col 1; len 6; (6):  04 04 ea d5 00 1d
Block header dump:  0x0404ead5
 Object id on Block? Y
 seg/obj: 0x1441f  csc: 0x06.8098c3ed  itc: 10  flg: E  typ: 1 - DATA
     brn: 0  bdba: 0x404e08b ver: 0x01 opc: 0
     inc: 0  exflg: 0

Supposedly, the rdba can be translated to a file# and block to get the
affected segment name via:

SELECT owner, segment_name, segment_type 
from sys.dba_extents where file_id= &FILENO 
and &BLOCKNO between block_id and block_id+blocks-1;

So, how can I translate the rdba to file# and block#?

Don Granaman
Senior Database Architect
Solutionary, Inc.

Confidentiality Notice: The content of this communication, along with
any attachments, is covered by federal and state law governing
electronic communications and may contain confidential and legally
privileged information. If the reader of this message is not the
intended recipient, you are hereby notified that any dissemination,
distribution, use or copying of the information contained herein is
strictly prohibited. If you have received this communication in error,
please immediately contact us by telephone at 402.361.3000 or e-mail
security@xxxxxxxxxxxxxxxx Thank you.

Other related posts: