Oracle database objects appear as "INVALID", which you find when performing various actions in Symantec Data Loss Prevention (DLP), such as:
The Oracle database contains a wide variety of objects: tables, indexes, views, procedures, packages, functions, and sequences. These objects are reliant upon each other to be compiled and functional; such an object state or status is "VALID".
If an object has not been compiled or has changed in some way not readily apparent to other reliant objects, that object's status is "INVALID". Attempting to use that object causes errors.
@utlrp.sql
The output will tell you the number of objects left uncompiled.
set pagesize 100
select object_name, object_type, owner from dba_objects where status<>'VALID';
alter <object_type> <owner>.<object_name> compile;If the object type is "Package Body", specify the compilation of the body:
alter package <owner>.<object_name> compile body;If you see an error, determine the cause:
show errors
Check a database for invalid objects by logging into sqlplus as sys as sysdba and running the following script:
set pagesize 100
select object_name, object_type, owner from dba_objects where status<>'VALID';