ORA-01172: recovery of thread 1 stuck at block <block#> of file <file#>

Document ID : KB000029111
Last Modified Date : 14/02/2018
Show Technical Document Details
Problem:
Following ORA errors are seen during nhStartDb process:
 
ORA-01172: recovery of thread 1 stuck at block 304 of file <file#>
ORA-01151: use media recovery to recover block, restore backup if needed '

 

 
Environment:
This issue is not environment specific and applies to all eHealth versions installed on Windows, Unix or Linux.
 

Cause:

These errors usually mean that there is some sort of file corruption in your database. It may be possible to recover from, but if not the only solution will be to perform a reload of the database from an ASCII save.

 

Resolution:
First try to recover the corrupt blocks. eHealth server processes are down, so logon to the database using sqlplus and perform following tasks:
 
>sqlplus sys/ehealth as sysdba
 
SQL> shutdown immediate;
If the above does not work, then please try abort option.
SQL> shutdown abort;
 
SQL> startup mount;
SQL> select name,status,enabled from v$datafile where file#=<NUMBER>;
SQL> recover datafile <NUMBER>;
SQL> alter database open;
SQL> exit
 
If the above query returns an error, your only real option is to restore from an ascii backup. The process to do this is explained in knowledge document TEC514947.
Here is the direct link: 
https://support.ca.com/irj/portal/kbtech?docid=514947&searchID=TEC514947