7 x 24 在线支持!
ORA-01578 related bugs
ORA-01578 related bugs
Identify what is corrupted? Checksum Error, Fractured Block, etc?. Review alert.log
Get Oracle block dumps (alter system dump datafile) and OS block dump (dd)
Identify the corruption extension by running dbverify.
Identify the segment using that block and run analyze validate structure to make sure that the corruption is not above the HWM
Is a Backup available?:
YES: use RMAN BLOCKRECOVER Note:144911.1 or restore a good copy of the datafile. If it is an INDEX another option is to recreate it. For a TABLE, see if it can be TRUNCATED.
If a restore is decided:
Make sure that the restored copy is not corrupted by running dbverify
Get Oracle block dumps (alter system dump datafile) and OS block dump (dd)
set db_block_checking/_db_block_check_for_debug=true. db_block_checksum=true
roll forward (recover)
Get Oracle block dumps (alter system dump datafile) and OS block dump (dd)
NO BACKUP: use dbms_repair to mark/skip the corrupted block OR use event 10231 to skip the corrupted block. INDEX: DROP INDEX – TABLE: EXPORT/TRUNCATE TABLE/IMPORT
Error: ORA-01578 (ORA-1578)
Text: ORACLE data block corrupted (file # %s, block # %s)
Cause: The data block indicated was corrupted, mostly due to software errors.
Action: Try to restore the segment containing the block indicated. This
may involve dropping the segment and recreating it. If there
is a trace file, report the errors in it to your ORACLE
representative.
Fractured Block:
Corrupt block relative dba: 0x0380e573 (file 14, block 58739)
Fractured block found during buffer read
Data in bad block -
type: 6 format: 2 rdba: 0x0380e573
last change scn: 0x0288.8e5a2f78 seq: 0x1 flg: 0x04
consistency value in tail: 0x00780601
check value in block header: 0x8739, computed block checksum: 0x2f00
spare1: 0x0, spare2: 0x0, spare3: 0x0
***
Reread of rdba: 0x0380e573 (file 14, block 58739) found same corrupted data
checksum
Corrupt block relative dba: 0x0380a58f (file 14, block 42383)
Bad check value found during buffer read
Data in bad block -
type: 6 format: 2 rdba: 0x0380a58f
last change scn: 0x0288.7784c5ee seq: 0x1 flg: 0x06
consistency value in tail: 0xc5ee0601
check value in block header: 0x68a7, computed block checksum: 0x2f00
spare1: 0x0, spare2: 0x0, spare3: 0x0
***
Reread of rdba: 0x0380a58f (file 14, block 42383) found same corrupted data
Corrupt block relative dba: 0x0d805a89 (file 54, block 23177)
Bad header found during buffer read
Data in bad block -
type: 6 format: 2 rdba: 0x0d805b08
last change scn: 0x0692.86dc08e3 seq: 0x1 flg: 0x04
consistency value in tail: 0x08e30601
check value in block header: 0x2a6e, computed block checksum: 0x0
spare1: 0x0, spare2: 0x0, spare3: 0x0
***
Reread of rdba: 0x0d805a89 (file 54, block 23177) found valid data
ORA-01578 related Bugs
NB | Bug | Fixed | Description |
13804294 | 11.2.0.3.4, 11.2.0.3.BP07, 12.1.0.0 | Internal errors, corruptions, using pipelined function whose rows raise exceptions | |
11707302 | 11.2.0.2.3, 11.2.0.2.BP06, 11.2.0.3, 12.1.0.0 | Corruption from ASM crash during rebalance diskgroup. Misplaced Blocks | |
11659016 | 11.2.0.3, 12.1.0.0 | ORA-1578 against recently create tablespace that once was encrypted | |
+ | 10209232 | 11.1.0.7.7, 11.2.0.1.BP08, 11.2.0.2.1, 11.2.0.2.BP02, 11.2.0.2.GIBUNDLE01, 11.2.0.3, 12.1.0.0 | ORA-1578 / ORA-600 [3020] Corruption. Misplaced Blocks and Lost Write in ASM |
* | 10205230 | 11.2.0.1.6, 11.2.0.1.BP09, 11.2.0.2.2, 11.2.0.2.BP04, 11.2.0.3, 12.1.0.0 | ORA-600 / corruption possible during shutdown in RAC |
9965568 | 12.1.0.0 | Block dumps are not formatted if there is a chkval error | |
9965085 | 11.2.0.3, 12.1.0.0 | ORA-1578 / ORA-8103 Temporary table block corruption / space wastage from PDML | |
9739664 | 11.2.0.2, 12.1.0.0 | ORA-1578 / ORA-26040 MANUAL RECOVER marks block as corrupt NOLOGGING in even if LOGGING is enabled | |
+ | 9724970 | 11.2.0.1.BP08, 11.2.0.2.2, 11.2.0.2.BP02, 11.2.0.3, 12.1.0.0 | Block Corruption with PDML UPDATE. ORA_600 [4511] OERI[kdblkcheckerror] by block check |
9407198 | 11.2.0.3, 12.1.0.0 | “LOG ERRORS INTO” can cause ORA-600 [kcb***] or hang scenarios | |
* | 9406607 | 11.2.0.1.3, 11.2.0.1.BP06, 11.2.0.2, 12.1.0.0 | Corrupt blocks in 11.2 in table with unique key. OERI[kdBlkCheckError] by block check |
* | 8943287 | 11.2.0.2, 12.1.0.0 | ORA-1578 corrupt block with AUTH SQL*Net strings |
* | 8898852 | 11.1.0.7.2, 11.2.0.1.1, 11.2.0.1.BP04, 11.2.0.2, 12.1.0.0 | ORA-1578 Blocks misplaced in ASM when file created with compatible.asm < 11 and resized |
8885304 | 11.2.0.2, 12.1.0.0 | ORA-7445 [ktu_format_nr] during RMAN CONVERT or Corrupt fractured block of UNDO tablespace datafile | |
* | 8768374 | 10.2.0.5, 11.1.0.7.8, 11.2.0.1.BP11, 11.2.0.2, 12.1.0.0 | RFS in Standby with a wrong location for archived log corrupting/overwriting database files when max_connections > 1 |
8760225 | 11.2.0.2, 12.1.0.0 | Auto Block Media Recovery reports ORA-1578 on first query | |
8731617 | 11.2.0.3, 12.1.0.0 | ORA-1578 from DESCRIBE or CTAS even if table not accessed / ORA-959 from DBMS_STATS | |
8720802 | 10.2.0.5, 11.2.0.1.BP07, 11.2.0.2, 12.1.0.0 | Add check for row piece pointing to itself (db_block_checking,dbv,rman,analyze) | |
8493978 | 11.2.0.2, 12.1.0.0 | Reserve file descriptors for datafile access | |
P | 12330911 | 12.1 | EXADATA LSI firmware for lost writes |
10025963 | 11.2.0.1.BP09, 11.2.0.2 | Block corruption of LOB blocks with checksum value but block has checksum disabled | |
8714541 | 11.2.0.2 | ORA-1578 Corrupt Block in ASM with 0xbadfda7a after ASM block repair due to disk read error when ASM mirror is used | |
13101288 | ORA-600, corruption or check errors dropping a column in a OLTP compressed table | ||
+ | 8354682 | 11.2.0.1 | ORA-1578 – Blocks can be misplaced in ASM when there is IO error and AU > 1MB |
+ | 8339404 | 10.2.0.5, 11.1.0.7.1, 11.2.0.1 | ORA-1578 – Blocks can be misplaced in ASM during a REBALANCE |
8227257 | 11.2.0.1 | ORA-1578 corruption found after media recovery on encrypted datafile | |
7396077 | 10.2.0.5, 11.2.0.1 | RMAN does not differentiate NOLOGGING corrupt blocks that produce ORA-1578/ORA-26040 | |
6471351 | 10.2.0.5, 11.1.0.7, 11.2.0.1 | ORA-1578 / ORA-26040 due to NOLOGGING after recovery despite of FORCE LOGGING | |
6674196 | 10.2.0.4, 10.2.0.5, 11.1.0.6 | OERI / buffer cache corruption using ASM, OCFS or any ksfd client like ODM | |
5515492 | 10.2.0.3, 11.1.0.6 | ORA-1578 corruption with Block Misplaced during ASM rebalance after IO error | |
5031712 | 10.2.0.4, 11.1.0.6 | DBV enhanced to report NOLOGGING corrupt blocks with DBV-201 instead of DBV-200 | |
+ | 4724358 | 11.1.0.6 | ORA-27045 ORA-1578 ORA-27047 corruption caused by DBMS_LDAP |
4684074 | 10.2.0.2, 11.1.0.6 | OERI:510 / block corruption (ORA-1578) with DB_BLOCK_CHECKING | |
4655520 | 9.2.0.8, 10.2.0.3, 11.1.0.6 | Block corrupted during write not noticed | |
4411228 | 9.2.0.8, 10.2.0.3, 11.1.0.6 | ORA-1578 Block misplaced with mixture of file system and RAW files | |
4344935 | 10.2.0.4, 11.1.0.6 | OERI from DML on TEMPORARY TABLE after autonomous TRUNCATE | |
7381632 | 11.1.0.6 | ORA-1578 Free corrupt blocks may not be reformatted when Flashback is enabled | |
8976928 | 10.2.0.5 | ORA-1578 caused by a former free corrupt block and remains unformatted | |
8684999 | 10.2.0.5 | ORA-1578 caused by a former free corrupt block and remains unformatted | |
+ | 3544995 | 9.2.0.6, 10.1.0.3, 10.2.0.1 | LOB segments with “CACHE READS” generate no REDO even with the logging option |
+ | 1281962 | 9.2.0.1 | Media recovery after ORA-1578 on rollback can cause logical inconsistency |
589855 | 7.3.3.6, 7.3.4.1 | ORA:1578 or ORA:8103 selecting invalid ROWID | |
406863 | 7.3.3.4, 7.3.4.0, 8.0.3.0 | ORA-1578 using PQ with heavy simultaneous INSERTS | |
P | 707304 | 7.3.4.4 | AIX: Resizing RAW datafile can corrupt a DB block |
603502 | 7.3.4.3, 8.0.4.4, 8.0.5.0 | Possible Corruption if a session with LOOPBACK DB Links aborts. |