Friday, January 22, 2021

RIB error ORA-21700 object does not exist or is marked for delete

Symptoms: 

At random times the Oracle Retail Integration Bus (aka RIB) gets certain errors such as:

GETNXT(?,?,?,?,?,?,?) and/or ORA-21700 object does not exist or is marked for delete.

This error is kind of confusion because if you look at the database, the object exists and it's valid.


Cause: 

Several causes can lead to this behavior, but most commonly some database objects in RMS has changed and RIB detects such modification in the signature.

Invalid or missing objects in RMS database also can be the reason.


Solution:

These steps described will recreate the RIB objects under RMS database.

An important point there is to run the commands from the latest RIB patch applied.

For this, create a staging area, copy from the patch and unzip the file: retail-public-payload-database-object-types-14.1.3.jar


1. Bring down all the RIB managed-servers.

2. Run:

$ cd /u01/stage/rib/hotfixes/<your_patch/staging/

$ unzip retail-public-payload-database-object-types-14.1.3.jar

$ sqlplus rms_user/passwd

   @InstallAndCompileAllRibOracleObjects.sql

3. Compile all objects to make sure objects are valid.

   sqlplus / as sysdba

   @?/rdbms/admin/utlrp;


4. Bring up the RIB.


Hope this help


No comments:

Post a Comment

Configure the Oracle DB Access Control List to avoid error like ORA-24247: network access denied

Symptoms:  You try to make external connections from the Oracle Database and receive erros like ORA-24247: network access denied by access c...