I recently restored (from full, level 0 cold backup) an ARCHIVELOG
database & recovered it to a point in time about 24 hours after backup. I ran RMAN validate
and numerous blocks turned up in V$DATABASE_BLOCK_CORRUPTION
with corruption of NOLOGGING
. This was anticipated as database has frequent NOLOGGING
load operations. The game-plan was to map V$DATABASE_BLOCK_CORRUPTION
blocks to segments (table partitions), truncate partition, and replay the loads of those data sets from source files.
In most cases, this worked perfectly; most entries in V$DATABASE_BLOCK_CORRUPTION
mapped directly to NOLOGGING
table partitions which would've been loaded via INSERT /*+APPEND*/
after the cold backup.
Only wrench: V$DATABASE_BLOCK_CORRUPTION
shows about 100 blocks with NOLOGGING
corruption that do not match any entries in DBA_EXTENTS
(they are, presumably, unused blocks).
1) Any idea what caused these blocks to become corrupt?
2) As they do not map to any extents in use, can I safely ignore them?
3) The OCD question: if these blocks aren't problematic, is there a way to clear them from V$DATABASE_BLOCK_CORRUPTION
?