We met several times ORA-15196 without any reason.
1) no error in OS message
2) no error on storage
But it happens and we have to recreate diskgroup.
Tue Mar 04 19:52:58 2014
WARNING: cache read a corrupt block: group=2(DG_DATA) dsk=4 blk=257 disk=4 (DG_DATA_0004) incarn=2525453578 au=113792 blk=1 count=1
Errors in file /opt/oracrs/base/diag/asm/+asm/+ASM1/trace/+ASM1_ora_13285.trc
ORA-15196: invalid ASM block header [kfc.c:26077] [endian_kfbh] [2147483652] [257] [0 != 1]
NOTE: a corrupted block from group DG_DATA was dumped to /opt/oracrs/base/diag/asm/+asm/+ASM1/trace/+ASM1_ora_13285.trc
WARNING: cache read (retry) a corrupt block: group=2(DG_DATA) dsk=4 blk=257 disk=4 (DG_DATA_0004) incarn=2525453578 au=113792 blk=1 count=1
Errors in file /opt/oracrs/base/diag/asm/+asm/+ASM1/trace/+ASM1_ora_13285.trc
ORA-15196: invalid ASM block header [kfc.c:26077] [endian_kfbh] [2147483652] [257] [0 != 1]
ORA-15196: invalid ASM block header [kfc.c:26077] [endian_kfbh] [2147483652] [257] [0 != 1]
ERROR: cache failed to read group=2(DG_DATA) dsk=4 blk=257 from disk(s): 4(DG_DATA_0004)
ORA-15196: invalid ASM block header [kfc.c:26077] [endian_kfbh] [2147483652] [257] [0 != 1]
ORA-15196: invalid ASM block header [kfc.c:26077] [endian_kfbh] [2147483652] [257] [0 != 1]
NOTE: cache initiating offline of disk 4 group DG_DATA
NOTE: process _user13285_+asm1 (13285) initiating offline of disk 4.2525453578 (DG_DATA_0004) with mask 0x7e in group 2
WARNING: Disk 4 (DG_DATA_0004) in group 2 in mode 0x7f is now being taken offline on ASM inst 1
ORA-15196 is a pretty serious error, in most of the cases. And the root cause needs to be investigated with the relevant trace files and the affected disk contents, through an SR. It depends on the verbose level of the OS and storage logs, if they can catch any malicious writes, network issue etc.
DBRECOVER Recovery Options
For Oracle incidents, start with the DBRECOVER for Oracle trial to verify table visibility, row previews, and export readiness on copied datafiles. For MySQL and InnoDB incidents, DBRECOVER for MySQL is free software and can inspect.ibd files, ibdata1, and database directories locally.
When the case is urgent, preserve the original files first, work from copies, and contact paid emergency support with the database version, platform, error messages, file list, and recovery objective.