Fixing Corrupt Empty Blocks
9.2 on Solaris 8
My what a lovely day yesterday was. The server and the disk array had a marital dispute and decided not to talk to one another causing the prod database to crash. Mr. Sun engineer came and replaced the controller on the sunfire 4800.
Luckily, the only recovery needed was instance recovery.
Unluckily, I had fractured blocks in two datafiles
Luckily, those two datafiles were associated with index tablespaces.
I dropped and recreated an index associated with one of the corrupt blocks in one of the two datafiles. Now, I am stuck with 2 blocks...
select file#, block#, marked_corrupt, corruption_type
from v$backup_corruption;
5 152564 YES FRACTURED
5 152564 YES FRACTURED
...that do not belong to any objects:
select owner,substr(segment_name,1,30) segment_name,
segment_type,tablespace_name
from dba_extents
where file_id=5 and
(152564 between block_id and block_id + blocks - 1)
0 rows returned.
My question is: Since DBMS_REPAIR works on intentified objects (and I don't have one), how do I fix fractured blocks associated with no objects (empty blocks)?
Thanks,
Frank
Re: Fixing Corrupt Empty Blocks
Quote:
Originally posted by gopi
...that do not belong to any objects...
There is no need to correct it.
These blocks will be reformatted by Oracle when they will be allocated to a new segment.