causes of ORA-01200: actual file size of x is smaller than correct size n ?
801904Jul 31 2012 — edited Jul 31 2012Hello everyone
We are running Oracle 11.2.0.3 64-bit E/E on Oracle Linux 6.2 with UEK R2 on X64.
Using Grid and ASM 11.2.0.3 and OMF names.
The database files are alll on SAN, the SAN vendor name not disclosed here to protect the innocent/guilty 8^)
I have a Test database MYDB (in NOARCHIVELOG mode) and after a normal server reboot, not a crash, the following error occured on Oracle database startup.
srvctl start database -d MYDB
PRCR-1079 : Failed to start resource ora.mydb.db
CRS-5017: The resource action "ora.mydb.db start" encountered the following error:
ORA-01122: database file 1 failed verification check
ORA-01110: data file 1: '+ASMDATA/mydb/datafile/system.256.787848913' <<<<<<<<<<---------------------------------------------------- Corrupt file on ASM disk, system tablespace this time
ORA-01200: actual file size of 94720 is smaller than correct size of 98560 blocks <<<<<<<<<<---------------------------------------------------- ERROR message
The ASM disks are all up and disk groups are mounted OK. The ASM protection level is EXTERNAL.
My understanding that the only proper recovery from the above error is to use RMAN Restore Database/File/Tablespace.etc (and then RMAN Recover, when in ArchiveLog mode).
I do have RMAN disk backups, so I don't need to "patch" the database to recover.
This is not my question at this point in time.
My Question is this : what are the most likely causes of such error?
Oracle Database bug? OS bug? Disk driver error? Server hardware failure (bus, memory, etc)? Or a SAN bug?
I expect that Oracle 11g R2 will always come up with the database "clean" if the server reboots or if server crashes (i.e. due to complete power failure) provided the actual storage is not physically damaged.
Our SAN vendor (no names!) says they are of the opinion that it's most likely Oracle database or Oracle Linux 6.x/UEK software bug, or probably Oracle ASM 11.2 bug.
We have opened a support call with Oracle.....
My personal experience dealing with similar database errors on more recent releases of Oracle (9i R2, 10g R2, 11g R2) and also MS-SQL 2005 and 2008 R2 suggests this kind of a problem is most likely related to errors/bugs in storage/drivers/firmware/BIOS and SAN and not likely to be a 'database' or O/S bug.
Perhaps you, good people on this forum, can share their experiences, as unbiased as you can?
Many thanks