- 3,724,389 Users
- 2,244,744 Discussions
- 7,850,988 Comments
Forum Stats
Discussions
Categories
- 16 Data
- 362.2K Big Data Appliance
- 7 Data Science
- 2.1K Databases
- 623 General Database Discussions
- 3.7K Java and JavaScript in the Database
- 32 Multilingual Engine
- 497 MySQL Community Space
- 7 NoSQL Database
- 7.7K Oracle Database Express Edition (XE)
- 2.8K ORDS, SODA & JSON in the Database
- 422 SQLcl
- 62 SQL Developer Data Modeler
- 185.1K SQL & PL/SQL
- 21.1K SQL Developer
- 2.5K Development
- 3 Developer Projects
- 32 Programming Languages
- 135.7K Development Tools
- 14 DevOps
- 3K QA/Testing
- 338 Java
- 10 Java Learning Subscription
- 12 Database Connectivity
- 72 Java Community Process
- 2 Java 25
- 12 Java APIs
- 141.2K Java Development Tools
- 8 Java EE (Java Enterprise Edition)
- 153K Java Essentials
- 135 Java 8 Questions
- 86.2K Java Programming
- 270 Java Lambda MOOC
- 65.1K New To Java
- 1.7K Training / Learning / Certification
- 13.8K Java HotSpot Virtual Machine
- 16 Java SE
- 13.8K Java Security
- 4 Java User Groups
- 22 JavaScript - Nashorn
- 18 Programs
- 147 LiveLabs
- 34 Workshops
- 10 Software
- 4 Berkeley DB Family
- 3.5K JHeadstart
- 5.7K Other Languages
- 2.3K Chinese
- 4 Deutsche Oracle Community
- 16 Español
- 1.9K Japanese
- 3 Portuguese
How to convert DBA from DBVERIFY to file and block_id for bigfile

This is on 10.2.0.4 on HP-UX. I have DBVERIFY output like this on a bigfile data file:
DBV-00201: Block, DBA 18121156, marked corrupt for invalid redo application
I would like to query DBA_EXTENTS to find out what segment 18121156 is in. I know the file number because I have the datafile name from my dbv command. But how do I get the block_id?
Oracle's support site says that I cannot use dbms_utility.data_block_address_block for bigfiles but I cannot find the alternative.
Can anyone point me in the right direction?
Thanks!
Bobby
Best Answer
-
It seems that the DBVERIFY (dbv) DBA value for bigfiles is the same as block_id within DBA_EXTENTS.
So my query would be:
SELECT tablespace_name, segment_type, owner, segment_name FROM dba_extents WHERE file_id = 29 and 18121156 between block_id AND block_id + blocks - 1;
Bobby
Answers
-
It seems that the DBVERIFY (dbv) DBA value for bigfiles is the same as block_id within DBA_EXTENTS.
So my query would be:
SELECT tablespace_name, segment_type, owner, segment_name FROM dba_extents WHERE file_id = 29 and 18121156 between block_id AND block_id + blocks - 1;
Bobby