ORA-04063: package body "ORACLE_OCM.MGMT_DB_LL_METRICS" has errors

Document ID : KB000029434
Last Modified Date : 14/02/2018
Show Technical Document Details
The following messages are recorded in Oracle database alert log file.
Tue Dec 30 22:00:02 IST 2014
Errors in file /ehealth/ora/admin/bdump/EHEALTH/ehealth_j003_10739.trc:
ORA-12012: error on auto execute of job 1663007
ORA-04063: package body "ORACLE_OCM.MGMT_DB_LL_METRICS" has errors
ORA-06508: PL/SQL: could not find program unit being called: "ORACLE_OCM.MGMT_DB_LL_METRICS"
ORA-06512: at line 1 has errors
This error is not environment specific
EHealth does not create and/or support user ORACLE_OCM. It is believed that this user is created by some of the Oracle fixes (patches & CPUs), which causes the OCM.MGMT_DB_LL_METRICS errors and also seems to cause ASCII save problems.
1. Make a backup copy of $NH_ORACLE_HOME/rdbms/admin/catproc.sql
2. Open $NH_ORACLE_HOME/rdbms/admin/catproc.sql in a text editor and look
for these lines:
    Rem OCM packages
3. Add remarks in front of the last three lines so that they do not run:
    Rem OCM packages
    Rem @@dbmsocm.sql
    Rem @@prvtocm.sql
    Rem @@execocm.sql
4. Save the file, then stop eHealth
    nhServer stop
5. At the command prompt change directory to $NH_ORACLE_HOME/rdbms/admin then
    start sqlplus as the sys user:
    sqlplus "sys/ehealth@$NH_DB_CONNECT_STRING as sysdba" (Solaris/Linux)
    sqlplus "sys/ehealth%NH_DB_CONNECT_STRING% as sysdba" (Windows)
6. At the SQL> prompt, run the following commands
    drop user ORACLE_OCM cascade;
7. Exit from sqlplus
8. Restart eHealth
    nhServer start