Oracle DBMS_HCHECK
Version 23c

General Information
Library Note Morgan's Library Page Header
ACE Director Alum Daniel Morgan, founder of Morgan's Library, is scheduling complimentary technical Workshops on Database Security for the first 30 Oracle Database customers located anywhere in North America, EMEA, LATAM, or APAC that send an email to asra_us@oracle.com. Request a Workshop for your organization today.
Purpose This package is provides an API to assist in the identification of data dictionary metadata inconsistencies.
AUTHID DEFINER
Dependencies
AUDIT$ FILE$ SUM$
CLU$ HIST_HEAD$ SYN$
COL$ ICOLDEP$ SYSTEM_PRIVILEGE_MAP
COLTYPE$ IND$ SYS_DBA_SEGS
DBA_DATA_FILES INDPART$ TAB$
DBA_OBJECTS INDSUBPART$ TABCOMPART$
DBA_REGISTRY LOB$ TABPART$
DBA_SEGMENTS LOBFRAG$ TABSUBPART$
DBA_TABLESPACES OBJ$ TRIGGER$
DBA_USERS OBJAUTH$ TS$
DBMS_HM OID$ UET$
DBMS_OUTPUT PARTCOL$ UNDO$
DBMS_STANDARD PARTOBJ$ USERS$
DBMS_SYSTEM RECYCLEBIN$ V$DATABASE
DEPENDENCY$ SEG$ V$DATAFILE
DIR$ SEQ$ V$DIAG_INFO
DUAL SOURCE$ X$KCVFH
FET$ STMT_AUDIT_OPTION_MAP  
     
Documented Yes
First Available 23.1
Pragmas PRAGMA SUPPEMENTAL_LOG_DATA(default, READ_ONLY);
Security Model Owned by SYS with EXECUTE granted to the DBA role.
Source {ORACLE_HOME}/rdbms/admin/dbmshcheck.sql
{ORACLE_HOME}/rdbms/admin/prvthcheck.plb
Subprograms
 
CBOHILO
Invalid histogram metadata check dbms_hcheck.cboHiLo;
set serveroutput on

exec dbms_hcheck.cboHiLo;

PL/SQL producedure successfully completed.
 
CHECKDUAL
Invalid entries in dual check dbms_hcheck.checkDual;
set serveroutput on

exec dbms_hcheck.checkDual;
.- CheckDual ... 2300000000 <= *All Rel* 05/10 20:09:23 PASS

PL/SQL procedure successfully completed.
 
CHKIOTTS
Invalid entries in dual check dbms_hcheck.chkIotTs;
set serveroutput on

exec dbms_hcheck.chkIotTs;
.- ChkIotTs ... 2300000000 <= *All Rel* 05/10 20:10:08 PASS

PL/SQL procedure successfully completed.
 
CRITICAL
Execute "critical" checks only dbms_hcheck.critical;
set serveroutput on

exec dbms_hcheck.critical;
dbms_hcheck on 10-MAY-2023 20:05:03
----------------------------------------------
Catalog Version 23.0.0.0.0 (2300000000)
db_name: FREE
Is CDB?: YES CON_ID: 1 Container: CDB$ROOT
Trace File: /opt/oracle/diag/rdbms/free/FREE/trace/FREE_ora_4532_HCHECK.trc

Catalog Fixed
Procedure Name                     Version    Vs Release    Timestamp      Result
------------------------------ ... ---------- -- ---------- -------------- ------
.- UndoSeg                     ... 2300000000 <= *All Rel*  05/10 20:05:03 PASS
.- MaxControlfSeq              ... 2300000000 <= *All Rel*  05/10 20:05:03 PASS
.- InvalidTSMaxSCN             ... 2300000000 > 1202000000  05/10 20:05:03 PASS
---------------------------------------
10-MAY-2023 20:05:03 Elapsed: 0 secs
---------------------------------------
Found 0 potential problem(s) and 0 warning(s)
Trace File: /opt/oracle/diag/rdbms/free/FREE/trace/FREE_ora_4532_HCHECK.trc

PL/SQL procedure successfully completed.
 
DBMSSCHEMACOPY
Checks for invalid execution of DBMS_SCHEMA_COPY dbms_hcheck.dbmsSchemaCopy;
set serveroutput on

exec dbms_hcheck.dmsSchemaCopy;
.- DbmsSchemaCopy ... 2300000000 <= *All Rel* 05/10 20:10:59 PASS

PL/SQL procedure successfully completed.
 
DICTOWNNONDEFAULTSYSTEM
Checks that the users SYS and SYSTEM have default tablespace SYSTEM dbms_hcheck.dictOwnNonDefaultSystem;
set serveroutput on

exec dbms_hcheck.dictOwnNonDefaultSystem;
.- DictOwnNonDefaultSYSTEM ... 2300000000 <= *All Rel* 05/10 20:11:15 PASS

PL/SQL procedure successfully completed.
 
DROPPEDROTS
Checks for valid entries in a read-only tablespace dbms_hcheck.droppedROTS;
set serveroutput on

exec dbms_hcheck.droppedROTS;
.- DroppedROTS ... 2300000000 <= *All Rel* 05/10 20:12:51 PASS

PL/SQL procedure successfully completed.
 
DUPLICATEBLOCKUSE
Checks for a segment header block is used by only one segment dbms_hcheck.duplicateBlockUse;
set serveroutput on

exec dbms_hcheck.duplicateBlockUse;
.- DuplicateBlockUse ... 2300000000 <= *All Rel* 05/10 20:12:51 PASS

PL/SQL procedure successfully completed.
 
DUPLICATEDATAOBJ
Checks for duplicate segment data_object_id dbms_hcheck.duplicateDataObj;
set serveroutput on

exec dbms_hcheck.duplicateDataObj;
.- DuplicateDataobj ... 2300000000 <= *All Rel* 05/10 20:13:08 PASS

PL/SQL procedure successfully completed.
 
EXTENTLESSEG
Checks SEG$/UET$ mismatch in a dictionary-managed tablespace dbms_hcheck.ExtentlessSeg;
set serveroutput on

exec dbms_hcheck.extentlessSeg;

PL/SQL procedure successfully completed.
 
FETUET
Checks valid free/used space in a dictionary-managed tablespace dbms_hcheck.FetUet;
set serveroutput on

exec dbms_hcheck.fetUet;
.- FetUet ... 2300000000 <= *All Rel* 05/10 20:13:53 PASS

PL/SQL procedure successfully completed.
 
FILBLKZERO
Checks for zero data block address dbms_hcheck.filBlkZero;
set serveroutput on

exec dbms_hcheck.filBlkZero;
.- FilBlkZero ... 2300000000 <= *All Rel* 05/10 20:14:11 PASS

PL/SQL procedure successfully completed.
FULL
Execute all checks dbms_hcheck.full;
set serveroutput on

exec dbms_hcheck.full;
dbms_hcheck on 10-MAY-2023 20:04:19
----------------------------------------------
Catalog Version 23.0.0.0.0 (2300000000)
db_name: FREE
Is CDB?: YES CON_ID: 1 Container: CDB$ROOT
Trace File: /opt/oracle/diag/rdbms/free/FREE/trace/FREE_ora_4532_HCHECK.trc

Catalog Fixed
Procedure Name                 Version    Vs Release    Timestamp      Result
-------------------------- ... ---------- -- ---------- -------------- ------
.- OIDOnObjCol             ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- LobNotInObj             ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- SourceNotInObj          ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- OversizedFiles          ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- PoorDefaultStorage      ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- PoorStorage             ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- TabPartCountMismatch    ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- TabComPartObj           ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- Mview                   ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS

.- ValidDir                ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- DuplicateDataobj        ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- ObjSyn                  ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- ObjSeq                  ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- UndoSeg                 ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- IndexSeg                ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- IndexPartitionSeg       ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- IndexSubPartitionSeg    ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- TableSeg                ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- TablePartitionSeg       ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- TableSubPartitionSeg    ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- PartCol                 ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- ValidSeg                ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- IndPartObj              ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- DuplicateBlockUse       ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- FetUet                  ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- Uet0Check               ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- SeglessUET              ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- ValidInd                ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- ValidTab                ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- IcolDepCnt              ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- ObjIndDobj              ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- TrgAfterUpgrade         ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- ObjType0                ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- ValidOwner              ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- StmtAuditOnCommit       ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- PublicObjects           ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- SegFreelist             ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- ValidDepends            ... 2300000000 <= *All Rel*  05/10 20:04:19 PASS
.- CheckDual               ... 2300000000 <= *All Rel*  05/10 20:04:20 PASS
.- ObjectNames             ... 2300000000 <= *All Rel*  05/10 20:04:20 PASS
.- ChkIotTs                ... 2300000000 <= *All Rel*  05/10 20:04:20 PASS
.- NoSegmentIndex          ... 2300000000 <= *All Rel*  05/10 20:04:20 PASS
.- NextObject              ... 2300000000 <= *All Rel*  05/10 20:04:20 PASS
.- DroppedROTS             ... 2300000000 <= *All Rel*  05/10 20:04:20 PASS
.- FilBlkZero              ... 2300000000 <= *All Rel*  05/10 20:04:20 PASS
.- DbmsSchemaCopy          ... 2300000000 <= *All Rel*  05/10 20:04:20 PASS
.- IdnseqObj               ... 2300000000 > 1201000000  05/10 20:04:20 PASS
.- IdnseqSeq               ... 2300000000 > 1201000000  05/10 20:04:20 PASS
.- ObjError                ... 2300000000 > 1102000000  05/10 20:04:20 PASS
.- ObjNotLob               ... 2300000000 <= *All Rel*  05/10 20:04:20 PASS
.- MaxControlfSeq          ... 2300000000 <= *All Rel*  05/10 20:04:20 PASS
.- SegNotInDeferredStg     ... 2300000000 > 1102000000  05/10 20:04:20 PASS
.- SystemNotRfile1         ... 2300000000 <= *All Rel*  05/10 20:04:20 PASS
.- DictOwnNonDefaultSYSTEM ... 2300000000 <= *All Rel*  05/10 20:04:20 PASS
.- ValidateTrigger         ... 2300000000 <= *All Rel*  05/10 20:04:20 PASS
.- ObjNotTrigger           ... 2300000000 <= *All Rel*  05/10 20:04:20 PASS
.- InvalidTSMaxSCN         ... 2300000000 > 1202000000  05/10 20:04:20 PASS
.- OBJRecycleBin           ... 2300000000 <= *All Rel*  05/10 20:04:20 PASS
---------------------------------------
10-MAY-2023 20:04:20 Elapsed: 1 secs
---------------------------------------
Found 0 potential problem(s) and 0 warning(s)
Trace File: /opt/oracle/diag/rdbms/free/FREE/trace/FREE_ora_4532_HCHECK.trc

PL/SQL procedure successfully completed.
 
ICOLDEPCNT
Checks valid entries in ICOLDEP$ dbms_hcheck.iColDepCnt;
set serveroutput on

exec dbms_hcheck.iColDepCnt;
.- IcolDepCnt ... 2300000000 <= *All Rel* 05/10 20:14:26 PASS

PL/SQL procedure successfully completed.
 
IDNSEQOBJ
Checks that Identity column has a valid object dbms_hcheck.idnseqObj;
set serveroutput on

exec dbms_hcheck.idnseqObj;
.- IdnseqObj ... 2300000000 > 1201000000 05/10 20:14:44 PASS

PL/SQL procedure successfully completed.
 
IDNSEQSEQ
Checks that a sequence has a valid object dbms_hcheck.idnseqSeq;
set serveroutput on

exec dbms_hcheck.idnseqSeq;
.- IdnseqSeq ... 2300000000 > 1201000000 05/10 20:15:07 PASS

PL/SQL procedure successfully completed.
 
INDEXPARTITIONSEG
Checks that an index partition has a valid entry in SEG$ dbms_hcheck.indexPartitionSeg;
set serveroutput on

exec dbms_hcheck.indexPartitionSeg;
.- IndexPartitionSeg ... 2300000000 <= *All Rel* 05/10 20:15:21 PASS

PL/SQL procedure successfully completed.
 
INDEXSEG
Checks that an index segment has a valid entry in SEG$ dbms_hcheck.indexSeg;
set serveroutput on

exec dbms_hcheck.indexSeg;
.- IndexSeg ... 2300000000 <= *All Rel* 05/10 20:15:31 PASS

PL/SQL procedure successfully completed.
 
INDPARTOBJ
Checks that an index partition has an entry in OBJ$ dbms_hcheck.indPartObj;
set serveroutput on

exec dbms_hcheck.indPartObj;
.- IndPartObj ... 2300000000 <= *All Rel* 05/10 20:16:30 PASS

PL/SQL procedure successfully completed.
 
INDEXSUBPARTITIONSEG
Checks that an index sub-partition has a valid entry in SEG$ dbms_hcheck.indexSubPartitionSeg;
set serveroutput on

exec dbms_hcheck.indexSubPartitionSeg;
.- IndexSubPartitionSeg ... 2300000000 <= *All Rel* 05/10 20:16:43 PASS

PL/SQL procedure successfully completed.
 
INDINDPARMISMATCH
Checks for index name mismatch between partitions dbms_hcheck.indIndParMismatch;
set serveroutput on

exec dbms_hcheck.indIndParMismatch;

PL/SQL procedure successfully completed.
 
INVALIDTSMAXSCN
Check for invalid SCN entries in tablespaces dbms_hcheck.invalidTSMaxSCN;
set serveroutput on

exec dbms_hcheck.invalidTSMaxSCN;
.- InvalidTSMaxSCN ... 2300000000 > 1202000000 05/10 20:17:50 PASS

PL/SQL procedure successfully completed.
 
INVCORRAUDIT
Check for invalid AUDIT$ entries dbms_hcheck.invCorrAudit;
set serveroutput on

exec dbms_hcheck.invCorrAudit;

PL/SQL procedure successfully completed.
 
LOBNOTINOBJ
Check for LOB segments is not in OBJ$ dbms_hcheck.lobNotInObj;
set serveroutput on

exec dbms_hcheck.lobNotInObj;
.- LobNotInObj ... 2300000000 <= *All Rel* 05/10 20:12:51 PASS

PL/SQL procedure successfully completed.
 
MAXCONTROLFSEQ
Checks if Control Seq is near the limit dbms_hcheck.maxControlFSeq;
set serveroutput on

exec dbms_hcheck.maxControlFSeq;
.- MaxControlfSeq ... 2300000000 <= *All Rel* 05/10 20:12:51 PASS

PL/SQL procedure successfully completed.
 
MVIEW
Checks for invalid  materialized view entries dbms_hcheck.mview;
set serveroutput on

exec dbms_hcheck.mview;
.- Mview ... 2300000000 <= *All Rel* 05/10 20:12:51 PASS

PL/SQL procedure successfully completed.
 
NEXTOBJECT
Checks for valid data_object_ids dbms_hcheck.nextObject;
set serveroutput on

exec dbms_hcheck.nextObject;
.- NextObject ... 2300000000 <= *All Rel* 05/10 20:12:51 PASS

PL/SQL procedure successfully completed.
 
NOSEGMENTINDEX
Check for NOSEGMENT indexes dbms_hcheck.noSegmentIndex;
set serveroutput on

exec dbms_hcheck.noSegmentIndex;
.- NoSegmentIndex ... 2300000000 <= *All Rel* 05/11 13:22:10 PASS

PL/SQL procedure successfully completed.
 
OBJINDDOBJ
Checks for index data_object_id mismatch between OBJ$ and IND$ dbms_hcheck.objIndDObj;
set serveroutput on

exec dbms_hcheck.objIndDObj;
.- ObjIndDobj ... 2300000000 <= *All Rel* 05/11 13:22:26 PASS

PL/SQL procedure successfully completed.
 
OBJECTNAMES
Checks if an object has the same name as its schema owner dbms_hcheck.objectNames;
set serveroutput on

exec dbms_hcheck.objectNames;
.- ObjectNames ... 2300000000 <= *All Rel* 05/11 13:22:36 PASS

PL/SQL procedure successfully completed.
 
OBJERROR
Checks that an object error is valid dbms_hcheck.objError;
set serveroutput on

exec dbms_hcheck.objError;
.- ObjError ... 2300000000 > 1102000000 05/11 13:22:46 PASS

PL/SQL procedure successfully completed.
 
OBJNOTLOB
Checks that a LOB object has an entry in LOB$ dbms_hcheck.objNotLOB;
set serveroutput on

exec dbms_hcheck.objNotLOB;
.- ObjNotLob ... 2300000000 <= *All Rel* 05/11 13:22:57 PASS

PL/SQL procedure successfully completed.
 
OBJNOTTRIGGER
Checks if an object trigger is not in TRIGGER$ dbms_hcheck.objNotTrigger;
set serveroutput on

exec dbms_hcheck.objNotTrigger;
.- ObjNotTrigger ... 2300000000 <= *All Rel* 05/11 13:23:08 PASS

PL/SQL procedure successfully completed.
 
OBJRECYCLEBIN
Checks that recycle bin objects in OBJ$ exist in RECYCLEBIN$ dbms_hcheck.objRecycleBin;
set serveroutput on

exec dbms_hcheck.objRecycleBin;
.- OBJRecycleBin ... 2300000000 <= *All Rel* 05/10 20:07:01 PASS

PL/SQL procedure successfully completed.
 
OBJSEQ
Checks that a sequence has a valid entry in OBJ$ dbms_hcheck.objSeq;
set serveroutput on

exec dbms_hcheck.objSeq;
.- ObjSeq ... 2300000000 <= *All Rel* 05/11 13:23:25 PASS

PL/SQL procedure successfully completed.
 
OBJSYN
Checks that a synonym has a valid entry in OBJ$ dbms_hcheck.objSyn;
set serveroutput on

exec dbms_hcheck.objSyn;
.- ObjSyn ... 2300000000 <= *All Rel* 05/11 13:23:36 PASS

PL/SQL procedure successfully completed.
 
OBJTYPE0
Checks that OBJ$ has a valid type greater than 0 dbms_hcheck.objType0;
set serveroutput on

exec dbms_hcheck.objType0;
.- ObjType0 ... 2300000000 <= *All Rel* 05/11 13:23:49 PASS

PL/SQL procedure successfully completed.
 
OIDONOBJCOL
Checks if an object type column is not in OID$ dbms_hcheck.oidOnObjCol;
set serveroutput on

exec dbms_hcheck.oidOnObjCol;
.- OIDOnObjCol ... 2300000000 <= *All Rel* 05/11 13:24:07 PASS

PL/SQL procedure successfully completed.
 
OVERSIZEDFILES
Checks for oversized database files dbms_hcheck.oversizedFiles;
set serveroutput on

exec dbms_hcheck.oversizedFiles;
.- OversizedFiles ... 2300000000 <= *All Rel* 05/11 13:24:21 PASS

PL/SQL procedure successfully completed.
 
PARTCOL
Checks for valid entry of column partition dbms_hcheck.partCol;
set serveroutput on

exec dbms_hcheck.partCol;
.- PartCol ... 2300000000 <= *All Rel* 05/11 13:24:28 PASS

PL/SQL procedure successfully completed.
 
PARTSUBPARTMISMATCH
Checks valid partition methods dbms_hcheck.partSubpartMismatch;
set serveroutput on

exec dbms_hcheck.partSubpartMismatch;

PL/SQL procedure successfully completed.
 
POORDEFAULTSTORAGE
Checks tablespace default storage clauses dbms_hcheck.poorDefaultStorage;
set serveroutput on

exec dbms_hcheck.poorDefaultStorage;
.- PoorDefaultStorage ... 2300000000 <= *All Rel* 05/11 13:24:59 PASS

PL/SQL procedure successfully completed.
 
POORSTORAGE
Checks objects storage clause dbms_hcheck.poorStorage;
set serveroutput on

exec dbms_hcheck.poorStorage;
.- PoorStorage ... 2300000000 <= *All Rel* 05/11 13:25:08 PASS

PL/SQL procedure successfully completed.
 
PUBLICOBJECTS
Checks that objects are not owned by PUBLIC dbms_hcheck.publicObjects;
set serveroutput on

exec dbms_hcheck.publicObjects;
.- PublicObjects ... 2300000000 <= *All Rel* 05/11 13:25:20 PASS

PL/SQL procedure successfully completed.
 
SEGFREELIST
Checks that a LOB segment has a valid free list group dbms_hcheck.segFreelist;
set serveroutput on

exec dbms_hcheck.segFreelist;
.- SegFreelist ... 2300000000 <= *All Rel* 05/11 13:25:30 PASS

PL/SQL procedure successfully completed.
 
SEGLESSUET
Checks UET$/SEG$ mismatch in a dictionary-managed tablespace dbms_hcheck.segLessUET;
set serveroutput on

exec dbms_hcheck.segLessUET;
.- SeglessUET ... 2300000000 <= *All Rel* 05/11 13:29:17 PASS

PL/SQL procedure successfully completed.
 
SEGNOTINDEFERREDSTG
Checks for an invalid deferred segment dbms_hcheck.segNotInDeferredStg;
set serveroutput on

exec dbms_hcheck.segNotInDeferredStg;
.- SegNotInDeferredStg ... 2300000000 > 1102000000 05/11 13:29:35 PASS

PL/SQL procedure successfully completed.
 
SOURCENOTINOBJ
Checks if an entry in SOURCE$ is not in OBJ$ dbms_hcheck.sourceNotInObj;
set serveroutput on

exec dbms_hcheck.sourceNotInObj;
.- SourceNotInObj ... 2300000000 <= *All Rel* 05/11 13:29:49 PASS

PL/SQL procedure successfully completed
.
 
STMTAUDITONCOMMIT
Checks valid entries for STMT_AUDIT_OPTION_MAP dbms_hcheck.stmtAuditOnCommit;
set serveroutput on

exec dbms_hcheck.stmtAuditOnCommit;
.- StmtAuditOnCommit ... 2300000000 <= *All Rel* 05/11 13:37:03 PASS

PL/SQL procedure successfully completed.
 
SYSTEMNOTRFILE1
Checks that the system tablespace has a relative file number 1 dbms_hcheck.systemNotRFile1;
set serveroutput on

exec dbms_hcheck.systemNotRFile1;
.- SystemNotRfile1 ... 2300000000 <= *All Rel* 05/11 13:31:19 PASS

PL/SQL procedure successfully completed.
 
TABCOMPARTOBJ
Checks that the composite partition has a valid entry in OBJ$ dbms_hcheck.tabComPartObj;
set serveroutput on

exec dbms_hcheck.tabComPartObj;
.- TabComPartObj ... 2300000000 <= *All Rel* 05/11 13:31:33 PASS

PL/SQL procedure successfully completed.
 
TABLEPARTITIONSEG
Checks that a table partition has a valid entry in SEG$ dbms_hcheck.tablePartitionSeg;
set serveroutput on

exec dbms_hcheck.tablePartitionSeg;
.- TablePartitionSeg ... 2300000000 <= *All Rel* 05/11 13:31:49 PASS

PL/SQL procedure successfully completed.
 
TABLESEG
Checks that a table has a valid entry in SEG$ dbms_hcheck.tableSeg;
set serveroutput on

exec dbms_hcheck.tableSeg;
.- TableSeg ... 2300000000 <= *All Rel* 05/11 13:32:34 PASS

PL/SQL procedure successfully completed.
 
TABLESUBPARTITIONSEG
Checks that a table sub-partition has a valid entry in SEG$ dbms_hcheck.tableSubpartitionSeg;
set serveroutput on

exec dbms_hcheck.tableSubpartitionSeg;
.- TableSubPartitionSeg ... 2300000000 <= *All Rel* 05/11 13:32:47 PASS

PL/SQL procedure successfully completed.
 
TABPARTCOUNTMISMATCH
Checks invalid data between OBJ$-PARTOBJ$ and TABPART$ dbms_hcheck.tabPartCountMismatch;
set serveroutput on

exec dbms_hcheck.tabPartCountMismatch;
.- TabPartCountMismatch ... 2300000000 <= *All Rel* 05/11 13:32:57 PASS

PL/SQL procedure successfully completed.
 
TRGAFTERUPGRADE
Checks valid entries in triggers dbms_hcheck.trgAfterUpgrade;
set serveroutput on

exec dbms_hcheck.trgAfterUpgrade;
.- TrgAfterUpgrade ... 2300000000 <= *All Rel* 05/11 13:33:07 PASS

PL/SQL procedure successfully completed.
 
UET0CHECK
Checks valid first extent in a dictionary-managed tablespace dbms_hcheck.uet0Check;
set serveroutput on

exec dbms_hcheck.uet0Check;
.- Uet0Check ... 2300000000 <= *All Rel* 05/11 13:33:19 PASS

PL/SQL procedure successfully completed.
 
UNDOSEG
Checks that undo segment has a valid entry in SEG$ dbms_hcheck.undoSeg;
set serveroutput on

exec dbms_hcheck.undoSeg;
.- UndoSeg ... 2300000000 <= *All Rel* 05/11 13:33:26 PASS

PL/SQL procedure successfully completed.
 
VALIDATESEG
Checks that a segment in SEG$ has an entry in its parent dbms_hcheck.validateSeg;
set serveroutput on

exec dbms_hcheck.validateSeg;
.- ValidSeg ... 2300000000 <= *All Rel* 05/11 13:33:36 PASS

PL/SQL procedure successfully completed.
 
VALIDATETRIGGER
Checks that triggers have valid entries in their parents dbms_hcheck.validateTrigger;
set serveroutput on

exec dbms_hcheck.validateTrigger;
.- ValidateTrigger ... 2300000000 <= *All Rel* 05/11 13:33:44 PASS

PL/SQL procedure successfully completed.
 
VALIDDEPENDS
Checks for valid dependency timestamps dbms_hcheck.validDepends;
set serveroutput on

exec dbms_hcheck.validDepends;
.- ValidDepends ... 2300000000 <= *All Rel* 05/11 13:33:54 PASS

PL/SQL procedure successfully completed.
 
VALIDDIR
Checks that the directory object has valid entries dbms_hcheck.validDir;
set serveroutput on

exec dbms_hcheck.validDir;
.- ValidDir ... 2300000000 <= *All Rel* 05/11 13:34:06 PASS

PL/SQL procedure successfully completed.
 
VALIDIND
Checks that an index in OBJ$ has a corresponding entry in the index dictionary dbms_hcheck.validInd;
set serveroutput on

exec dbms_hcheck.validInd;
.- ValidInd ... 2300000000 <= *All Rel* 05/11 13:34:16 PASS

PL/SQL procedure successfully completed.
 
VALIDOWNER
Checks that an entry in OBJ$ has a valid user ID dbms_hcheck.validOwner;
set serveroutput on

exec dbms_hcheck.validOwner;
.- ValidOwner ... 2300000000 <= *All Rel* 05/11 13:34:24 PASS

PL/SQL procedure successfully completed.
 
VALIDTAB
Checks that a table in OBJ$ has a corresponding entry in TAB$ dbms_hcheck.validTab;
set serveroutput on

exec dbms_hcheck.validTab;
.- ValidTab ... 2300000000 <= *All Rel* 05/11 13:34:30 PASS

PL/SQL procedure successfully completed.
 
WARNICOLDEP
Checks that an index does not have an ADT (object column) dbms_hcheck.warnIcolDep;
set serveroutput on

exec dbms_hcheck.warnIcolDep;

PL/SQL procedure successfully completed.
 
WARNINGTSMAXSCN
Checks exposed SCN entries in tablespaces dbms_hcheck.warningTSMaxSCN;
set serveroutput on

exec dbms_hcheck.warningTSMaxSCN;

PL/SQL procedure successfully completed.

Related Topics
Built-in Functions
Built-in Packages
Database Security
DBMS_ADR
DBMS_HM
DBMS_IR
DBMS_SQLDIAG
DBMS_SQLHC
ORADEBUG
What's New In 21c
What's New In 23c

Morgan's Library Page Footer
This site is maintained by Dan Morgan. Last Updated: This site is protected by copyright and trademark laws under U.S. and International law. © 1998-2023 Daniel A. Morgan All Rights Reserved
  DBSecWorx