EM 13.2 Linux Repo setup failed

Linux RPM Repository Server Setup failed with generic error message on EM web console.

Internal error in EM Patch Advisor
CAUSE: A possible bug in EM Patch Advisor.
ACTION: Report this issue to Oracle Support.

Under /u01/app/oms132/gc_inst/em/EMGC_OMS1/sysman/log/emoms.log

2019-01-08 21:10:53,082 [RJob Step287428] FATAL jobs.GetULNChannels logp.251 -
Internal error in EM Patch Advisor
CAUSE: A possible bug in EM Patch Advisor.
ACTION: Report this issue to Oracle Support.
java.sql.SQLIntegrityConstraintViolationException: ORA-00001: unique constraint (SYSMAN.MGMT_ECM_ULN_CHANNEL_PK) violated
ORA-06512: at "SYSMAN.MGMT_ECM_HOSTPATCH_ULN", line 150
ORA-06512: at line 1
        at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:466)
        at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:407)
        at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:1113)
        at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:546)
        at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:269)
        at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:603)

Prior to this run, Linux RPM Repository Server Setup job was run multiple times and failed every single time.

Workaround

Take a full ad_hoc backup of OEMREP database for PITR recovery. (Just in case)

Get the REPOS_GUID column from sysman.MGMT_ECM_HOSTPATCH_REPOS_E

exec mgmt_ecm_hostpatch.delete_group_info(‘REPOS_GUID’,’null’);
exec mgmt_ecm_hostpatch.delete_host_info(‘REPOS_GUID’,’null’);
exec mgmt_ecm_hostpatch.group_or_host_deleted(‘null’,’null’,’REPOS_GUID’);
exec mgmt_ecm_hostpatch_uln.target_delete_callback(‘null’,’null’,’REPOS_GUID’);
exec mgmt_ecm_hostpatch_uln.delete_stage_server(‘
exec mgmt_ecm_hostpatch.delete_repos_info(‘REPOS_GUID’);

ERROR at line 1:
ORA-02292: integrity constraint (SYSMAN.MGMT_ECM_HP_GR_REPO_FK) violated -
child record found
ORA-06512: at "SYSMAN.MGMT_ECM_HOSTPATCH", line 333
ORA-06512: at line 1

SYSMAN.MGMT_ECM_HOSTPATH.delete_repos_info procedure is trying to delete from mgmt_ecm_hostpatch_repos_pkgs and mgmt_ecm_hostpatch_repos.

select * from all_objects where object_name like ‘%MGMT_ECM_HP_GR_REPO_%’;

SYSMAN.MGMT_ECM_HP_GR_REPO translate to SYSMAN.MGMT_ECM_HOSTPATCH_GROUP_REP_E.

Since SYSMAN.MGMT_ECM_HOSTPATCH_GROUP_REP_E and SYSMAN.MGMT_ECM_HOSTPATCH_GROUP_REP_E table has foreign key constraint.

truncate table SYSMAN.MGMT_ECM_HOSTPATCH_GROUP_REP_E;

exec mgmt_ecm_hostpatch.delete_repos_info(‘REPOS_GUID’);

Rerun Linux RPM Repositor Server Setup Job from EM 13.2 Webconsole.

success_strip

Leave a comment