Applies to: Oracle Server - Enterprise Edition - Version: 10.2.0.3.0
This problem can occur on any platform.
Datafile fails with verification check saying that ORA-01200: actual file size of 2559880 is smaller than correct size of 2560000 blocks
Error started after a 'shutdown abort' was issued againt the instance.
The database fails to start due to ORA-1122 signalled during: ALTER DATABASE OPEN...
You have to put the datafiles OFFLINE to restart the database
Completed: ALTER DATABASE MOUNT
Sun Feb 10 23:54:27 2008
ALTER DATABASE OPEN
Block change tracking file is current.
ORA-1122 signalled during: ALTER DATABASE OPEN...
From the error message :
ORA-01200: actual file size of 2559880 is smaller than correct size of 2560000 blocks
Actual filesize at OS level : 2559880 * db_block_size + One Oracle block
2559880 * 8192 + 8192 = 20970528768 bytes
Correct size : 2560000 * db_block_size + One Oracle block
2560000 * 8192 + 8192 = 20971528192 bytes
This is Bug 5840434 / Note 5840434.8 ORA-1200 if instance crashes / is aborted right after a datafile RESIZE operation.
If an instance crashes right after a resize operation then the wrong file size may be stored. This can result in subsequent errors such as:
ORA-01186: file 2 failed verification tests
ORA-01122: database file 2 failed verification check
ORA-01110: data file 2: '/.../dbfile.f'
ORA-01200: actual file size of 52792 is smaller than correct size of 53384 blocks
Installing the patch for Bug 5840434 / Note 5840434.8 won't fix the current corruption. The datafile will have to be put OFFLINE to allow the database to startup.
Apply Patch 5840434 to prevent hitting this bug.