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
These procedures support Oracle's Feature Usage Reporting: See link at page bottom.
dbms_feature_acfs(
is_used OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_acfs(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2:
3: :num_filesystems:0
DBMS_FEATURE_ACFS_ENCR
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
V$ASM_ACFS_ENCRYPTION_INFO
Detects ACFS Encryption usage
dbms_feature_acfs_encr(
is_used OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_acfs_encr(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2:
3:
DBMS_FEATURE_ACFS_SNAPSHOT
Data Dictionary Objects
V$ASM_ACFSSNAPSHOTS
SYS_STUB_FOR_PURITY_ANALYSIS
Detects ACFS Snapshots usage
dbms_feature_acfs_snapshot(
is_used OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_acfs_snapshot(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2:
3: :num_snapshots:0
DBMS_FEATURE_ACTIVE_DATA_GUARD
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
Detects Active Data Guard usage
dbms_feature_active_data_guard(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_active_data_guard(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: Active Data Guard usage not detected
DBMS_FEATURE_ADAPTIVE_PLANS
Data Dictionary Objects
DBMS_LOB
V$SQL
X$KSPPCV
SYS_STUB_FOR_PURITY_ANALYSIS
V$SQLCOMMAND
X$KSPPI
Tracks Adaptive Execution Plan usage
dbms_feature_adaptive_plans(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_adaptive_plans(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 1
2:
3: Total number of queries: 15691
Number of queries with an adaptive plan: 1512
Percentage of queries with an adaptive plan: 9.63609712574087056274297367917914728188
Are the queries
running in reporting mode ? : No
PL/SQL procedure successfully completed.
DBMS_FEATURE_ADV_IDXCMP
Data Dictionary Objects
PRVT_COMPRESSION
SYS_STUB_FOR_PURITY_ANALYSIS
Detect Advanced Index Compression usage
dbms_feature_adv_idxcmp(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_adv_idxcmp(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: ADVANCED Index Compression not detected
DBMS_FEATURE_ADV_TABCMP
Data Dictionary Objects
PRVT_COMPRESSION
SYS_STUB_FOR_PURITY_ANALYSIS
Detect Advanced Table Compression usage
dbms_feature_adv_tabcmp(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_adv_tabcmp(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: ADVANCED Table Compression Not Detected
DBMS_FEATURE_AFD
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
V$ASM_DISK
Detects ASM Filter Driver usage
dbms_feature_afd(
is_used OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_afd(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2:
3:
DBMS_FEATURE_APEX
Data Dictionary Objects
DBA_REGISTRY
DBMS_STANDARD
SYS_STUB_FOR_PURITY_ANALYSIS
DBMS_ASSERT
Detects APEX usage
dbms_feature_apex(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_apex(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: APEX usage not detected
DBMS_FEATURE_APPROX_QP (new 20c)
Data Dictionary Objects
GV$SQL_PLAN
SYS_STUB_FOR_PURITY_ANALYSIS
Detects Approximate Query Processing
dbms_feature_approx_qp(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_approx_qp(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 1
2:
3: approx_count_distinct: USED
DBMS_FEATURE_ASM
Data Dictionary Objects
DUAL
V$ASM_CLIENT
V$ASM_DISKGROUP
SYS_STUB_FOR_PURITY_ANALYSIS
V$ASM_DISK
Detects ASM usage
dbms_feature_asm(
is_used OUT NUMBER,
total_diskgroup_size OUT NUMBER,
summary OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_asm(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2:
3:
DBMS_FEATURE_AUDIT_OPTIONS
Data Dictionary Objects
AUDIT$
SYS_STUB_FOR_PURITY_ANALYSIS
V$PARAMETER
DBA_OBJ_AUDIT_OPTS
V$OPTION
Detects audit trail type and the number of system and object audit options available
dbms_feature_audit_options(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_audit_options(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 1
2: 0
3: AUDIT_TRAIL=DB; Number of system audit options=234; Number of object audit options=254
DBMS_FEATURE_AUM
Data Dictionary Objects
DBA_DATA_FILES
DBA_TABLESPACES
V$SYSTEM_PARAMETER
DBA_FEATURE_USAGE_STATISTICS
SYS_STUB_FOR_PURITY_ANALYSIS
V$UNDOSTAT
Detects Automatic Undo Management usage
dbms_feature_aum(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_aum(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 1
2: 1
3: (Retention: NOGUARANTEE, TS Count: 1, Size MB: 25) (Undo Blocks: 62345, Max Concurrency: 6) (Snapshot Old Info - Begin Time: 2020-12-03 18:43:59, End Time: 2020-12-07 18:41:11,
SSOLD Error Count: 0)
DBMS_FEATURE_AUTOSTA
Data Dictionary Objects
DBA_ADVISOR_EXECUTIONS
DBA_ADVISOR_RECOMMENDATIONS
DBMS_LOB
DBA_ADVISOR_EXEC_PARAMETERS
DBA_FEATURE_USAGE_STATISTICS
DBMS_STANDARD
DBA_ADVISOR_FINDINGS
DBA_SQL_PROFILES
SYS_STUB_FOR_PURITY_ANALYSIS
DBA_ADVISOR_OBJECTS
Detects auto-implemented SQL profiles usage
dbms_feature_autosta(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_autosta(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 1
2: 1
3: Execution count so far: 8, Executions with auto-implement: 0, SQL profiles recommended so far: 1, Projected DB Time Saved Automatically (s): 0
DBMS_FEATURE_AUTO_MEM
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
V$MEMORY_TARGET_ADVICE
V$SYSTEM_EVENT
V$MEMORY_DYNAMIC_COMPONENTS
V$PGASTAT
Detects Automatic Memory Management usage
dbms_feature_auto_mem(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
dbms_feature_auto_reopt(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_auto_reopt(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 1
2:
3: Total number of queries: 15694
Number of reoptimizable queries: 7
Percentage of reoptimizable queries: .0446030330062444246208742194469223907226
DBMS_FEATURE_AUTO_SGA
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
V$MEMORY_DYNAMIC_COMPONENTS
V$SYSTEM_EVENT
Detects Automatic SGA Management usage
dbms_feature_auto_sga(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_auto_sga(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: Automatic SGA Tuning usage not detected
DBMS_FEATURE_AUTO_SSM
Data Dictionary Objects
DBA_DATA_FILES
DBA_TABLESPACES
SYS_STUB_FOR_PURITY_ANALYSIS
Detects Automatic Segment Space Managed tablespaces usage
dbms_feature_auto_ssm(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_auto_ssm(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 1
2: 4
3: (Segment Space Management: MANUAL, TS Count: 2, Size MB: 955) (Segment Space Management: AUTO, TS Count: 2, Size MB: 1315)
DBMS_FEATURE_AWR
Data Dictionary Objects
DBA_HIST_SNAPSHOT
WRH$_STAT_NAME
WRI$_DBU_USAGE_SAMPLE
SYS_STUB_FOR_PURITY_ANALYSIS
WRH$_SYS_TIME_MODEL
WRM$_SNAPSHOT
V$DATABASE
Counts snapshots since last sample also counts DB time and DB cpu over last 7 days
dbms_feature_awr(
feature_boolean_out OUT NUMBER,
aux_count_out OUT NUMBER,
feature_info_out OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_awr(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2:
3: DBtime:1736.79,DBcpu:1454.66
DBMS_FEATURE_BACKUP_ENCRYPTION
Data Dictionary Objects
DBMS_BACKUP_RESTORE
SYS_STUB_FOR_PURITY_ANALYSIS
Counts RMAN Backup Encryption usage
dbms_feature_backup_encryption(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_backup_encryption(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3:
DBMS_FEATURE_BA_OWNER
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
Detects usage of the Oracle Database Logging Recovery Appliance (DBLRA - see link at page bottom)
dbms_feature_ba_owner(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_ba_owner(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
DECLARE
*
ERROR at line 1:
ORA-06550: line 1, column 14:
PL/SQL: ORA-00904: "DBMS_BA_OWNER": invalid identifier -- this looks to be an Oracle bug
ORA-06550: line 1, column 7:
PL/SQL: SQL Statement ignored
ORA-06512: at "SYS.DBMS_FEATURE_BA_OWNER", line 10
ORA-06512: at line 6
DBMS_FEATURE_CLOUD_EHCC
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
Detects EHCC in Cloud Database usage
dbms_feature_cloud_ehcc(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_cloud_ehcc(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: EHCC in Cloud Database: 0
DBMS_FEATURE_CONCURRENT_STATS
Data Dictionary Objects
DBA_OPTSTAT_OPERATIONS
DBMS_STATS
SYS_STUB_FOR_PURITY_ANALYSIS
DBMS_LOB
DUAL
XMLTYPE
Track concurrent stats gathering usage
dbms_feature_concurrent_stats(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_concurrent_stats(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: Time interval covered by dba_optstat_operations: 11/17/2020 - 12/06/2020
Total Number of All Stats Operations: 297
Total Number of Gather Stats Operations: 209
Total Number of
Concurrent Operations: 0.
Types of concurrent operations with their frequencies:
Current value of CONCURRENT preference: OFF
DBMS_FEATURE_DATABASE_ODM
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
V$OPTION
Detects Oracle Data Mining usage
dbms_feature_database_odm(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_database_odm(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3:
DBMS_FEATURE_DATABASE_VAULT
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
USER$
V$OPTION
Detects Database Vault usage
dbms_feature_database_vault(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_database_vault(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3:
DBMS_FEATURE_DATA_GUARD
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
Detects Data Guard usage
dbms_feature_data_guard(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_data_guard(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: Data Guard usage not detected
DBMS_FEATURE_DATA_REDACTION
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
Detects Data Redaction usage
dbms_feature_data_redaction(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_data_redaction(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: Data Redaction usage not detected
DBMS_FEATURE_DBFS_CONTENT
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
Detects usage of DBFS_CONTENT to display the path items from all available content stores
dbms_feature_dbfs_content(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_dbfs_content(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: DBFS Content feature not in use.
DBMS_FEATURE_DBFS_HS
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
Detects usage of DBFS_HS (hierarchical) content stores
dbms_feature_dbfs_hs(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_dbfs_hs(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: DBFS HS feature not in use.
DBMS_FEATURE_DBFS_SFS
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
Detects usage of DBFS content storage administration sample implementation
dbms_feature_dbfs_sfs(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_dbfs_sfs(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: DBFS SFS feature is not in use.
DBMS_FEATURE_DEFERRED_SEG_CRT
Data Dictionary Objects
IND$
LOBFRAG$
TABPART$
INDPART$
SEG$
TABSUBPART$
INDSUBPART$
SYS_STUB_FOR_PURITY_ANALYSIS
V$SYSTEM_PARAMETER
LOB$
TAB$
Detects usage of Deferred Segment Creation
dbms_feature_deferred_seg_crt(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_deferred_seg_crt(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 2
2: 783
3: Deferred Segment Creation Parameter:1 Total Deferred Segments:783 Total Created Segments:7673 Table Segments:294 Index Segments:399 Lob Segments:82 Table Partition Segments:2
Index Partition Segments:3 Lob Partition Segments:3 Table SubPartition Segments:0 Index SubPartition Segments:0 Lob SubPartition Segments:0
DBMS_FEATURE_DMU
Data Dictionary Objects
PROPS$
SYS_STUB_FOR_PURITY_ANALYSIS
WRI$_DBU_USAGE_SAMPLE
Reports usage of Oracle Database Migration Assistant for Unicode
dbms_feature_dmu(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_dmu(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: DMU usage not detected
DBMS_FEATURE_DYN_SGA
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
V$MEMORY_DYNAMIC_COMPONENTS
V$SYSTEM_EVENT
Detects usage of Dynamic SGA
dbms_feature_dyn_sga(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_dyn_sga(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: Dynamic SGA usage not detected
DBMS_FEATURE_EMX
Data Dictionary Objects
DBA_FEATURE_USAGE_STATISTICS
SYS_STUB_FOR_PURITY_ANALYSIS
XMLTYPE
DUAL
X$KEXSVFU
Detects usage of EM Express
dbms_feature_emx(
feature_boolean OUT NUMBER,
num_cells OUT NUMBER,
feature_info OUT CLOB);
dbms_feature_extadata(
feature_boolean OUT NUMBER,
num_cells OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_exadata(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: EXADATA usage not detected
DBMS_FEATURE_EXTENSIBILITY
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
Detects usage of Extensibility Features
dbms_feature_extensibility(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_extensibility(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: EXTENSIBILITY usage not detected
DBMS_FEATURE_FGA_AUDIT
Data Dictionary Objects
DBA_AUDIT_POLICIES
SYS_STUB_FOR_PURITY_ANALYSIS
Detects usage of Fine Grained Auditing
dbms_feature_fga_audit(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_fga_audit(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: Number of FGA policies=0; Number of Enabled FGA policies=0; Number of FGA policies with audit_condition=0; Number of FGA policies with column-level audit=0; Number of FGA policies with handler=0; Number of FGA policies with DB audit_trail=0; Number of FGA policies with XML audit_trail=0
DBMS_FEATURE_FLEX_ASM
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
Detects usage of Flex ASM
dbms_feature_flex_asm(
is_used OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_flex_asm(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2:
3:
DBMS_FEATURE_GATEWAYS
Data Dictionary Objects
PLITBLM
SYS_STUB_FOR_PURITY_ANALYSIS
Detects usage of Oracle database gateways
dbms_feature_gateways(
feature_boolean OUT NUMBER,
num_cells OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_gateways(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: This feature is not used.
DBMS_FEATURE_GOLDENGATE
Data Dictionary Objects
DBA_APPLY
GV$GOLDENGATE_CAPABILITIES
SYS_STUB_FOR_PURITY_ANALYSIS
DBA_CAPTURE
Detects usage of Golden Gate Replication
dbms_feature_goldengate(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
Detect usage of Hybrid Columnar Compression Row Level Locking
dbms_feature_hccrll(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_hccrll(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: Hybrid Columnar Compression Row Level Locking not detected
DBMS_FEATURE_HCS (new 21c)
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
Tracks HCS PL/SQL
logging
dbms_feature_hcs(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_hcs(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3:
DBMS_FEATURE_HEATMAP
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
Tracks heatmap feature usage
dbms_feature_heatmap(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_heatmap(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 1
2: 0
3: Number of Tablespaces Traced: 1, Number of Segments Tracked: 1, Number of Blocks Tracked in Memory: 0
DBMS_FEATURE_IDH
Data Dictionary Objects
DBA_ROLE_PRIVS
SYS_STUB_FOR_PURITY_ANALYSIS
Detect In-Database Hadoop usage
dbms_feature_idh(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_idh(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: In-Database Hadoop usage not detected
DBMS_FEATURE_ILM
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
Detects Information Lifecycle Management usage
dbms_feature_ilm(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_ilm(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: Information Lifecycle Management not detected
DBMS_FEATURE_IMA
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
Detects In-Memory Aggregation usage
dbms_feature_ima(
feature_boolean OUT NUMBER,
num_cells OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_ima(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: In-Memory Aggregation Not Detected
DBMS_FEATURE_IMC
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
Detects In-Memory Column Store usage
dbms_feature_imc(
feature_boolean OUT NUMBER,
num_cells OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_imc(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: In-Memory Column Store Not Detected
DBMS_FEATURE_IMFS
Data Dictionary Objects
SYSDBIMFS$
SYS_STUB_FOR_PURITY_ANALYSIS
V$TABLESPACE
SYSDBIMFS_METADATA$
Detects usage of In-Memory Fast Start
dbms_feature_imfs(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_imfs(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: In-Memory FastStart enabled on USERS: Current Number of Savepoints in FastStart Area: 0, Current Space Usage: , Total Number of Savepoints in FastStart Area:
DBMS_FEATURE_IM_ADO
Data Dictionary Objects
ILMOBJ$
ILMPOLICY$
SYS_STUB_FOR_PURITY_ANALYSIS
Detects usage of In-Memory Automatic Data Optimization policies
dbms_feature_im_ado(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_im_ado(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3:
DBMS_FEATURE_IM_BASE_LEVEL (new 20c)
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
Detects In-Memory Base Level usage
dbms_feature_im_base_level(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_im_base_level(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: In-Memory Base Level Not Detected
DBMS_FEATURE_IM_EXPRESSIONS
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
Detects usage of In-Memory Expressions and Virtual Column usage
dbms_feature_im_expressions(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_im_expressions(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3:
DBMS_FEATURE_IM_FORSERVICE
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
Detects usage of In-Memory For Service usage
dbms_feature_im_forservice(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_im_forservice(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3:
DBMS_FEATURE_IM_JOINGROUPS
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
Detects usage of In-Memory Join Group usage
dbms_feature_im_joingroups(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_im_joingroups(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3:
DBMS_FEATURE_IOT
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
Detects Index Organized Table usage
dbms_feature_iot(
feature_boolean OUT NUMBER,
num_cells OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_iot(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: Index Organized Tables Not Detected
DBMS_FEATURE_JOB_SCHEDULER
Data Dictionary Objects
ALL_SCHEDULER_DB_DESTS
DBA_SCHEDULER_CHAIN_STEPS
DBA_SCHEDULER_JOB_CLASSES
ALL_SCHEDULER_EXTERNAL_DESTS
DBA_SCHEDULER_CREDENTIALS
DBA_SCHEDULER_NOTIFICATIONS
ALL_SCHEDULER_GROUPS
DBA_SCHEDULER_DB_DESTS
DBA_SCHEDULER_PROGRAMS
ALL_SCHEDULER_JOBS
DBA_SCHEDULER_DESTS
DBA_SCHEDULER_PROGRAM_ARGS
ALL_SCHEDULER_PROGRAMS
DBA_SCHEDULER_FILE_WATCHERS
DBA_SCHEDULER_SCHEDULES
DBA_JOBS
DBA_SCHEDULER_GROUPS
DBA_SCHEDULER_WINDOWS
DBA_SCHEDULER_CHAINS
DBA_SCHEDULER_JOBS
SYS_STUB_FOR_PURITY_ANALYSIS
Detects usage of Job Scheduler
dbms_feature_job_scheduler(
is_used OUT NUMBER,
nr_of_jobs OUT NUMBER,
summary OUT CLOB);
dbms_feature_priv_capture(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_priv_capture(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 1
2: 1
3:
DBMS_FEATURE_QOSM
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
X$KYWMPCTAB
Detects Oracle Quality of Service Manager usage
dbms_feature_qosm(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_qosm(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2:
3:
DBMS_FEATURE_RAC
Data Dictionary Objects
GV$INSTANCE
SYS_STUB_FOR_PURITY_ANALYSIS
V$SYSTEM_PARAMETER
GV$LICENSE
Detects whether the database is part of a RAC cluster
dbms_feature_rac(
is_used OUT NUMBER,
nodes OUT NUMBER,
clob_rest OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_rac(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2:
3:
DBMS_FEATURE_RAS
Data Dictionary Objects
DBA_ROLE_PRIVS
SYS_STUB_FOR_PURITY_ANALYSIS
XS$OBJ
DBA_XS_APPLIED_POLICIES
XS$ACE
XS$PRIN
DBA_XS_ROLE_GRANTS
XS$ACL
XS$PRIV
RXS$SESSIONS
XS$DSEC
XS$SECCLS
Detects Real Application Security User
dbms_feature_ras(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_ras(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 1
2: 0
3: Real Application Security usage not detected
DBMS_FEATURE_REGISTER_ALLFEAT
Data Dictionary Objects
DBA_ADVISOR_DEFINITIONS
DBMS_FEATURE_USAGE
SYS_STUB_FOR_PURITY_ANALYSIS
Run during installation and registers all features
dbms_feature_register_allfeat;
exec dbms_feature_register_allfeat;
DBMS_FEATURE_REGISTER_ALLHWM
Data Dictionary Objects
DBMS_FEATURE_USAGE
SYS_STUB_FOR_PURITY_ANALYSIS
Run during installation and registers all feature high water marks
dbms_feature_register_allhwm;
exec dbms_feature_register_allhwm;
DBMS_FEATURE_RESOURCE_MANAGER
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
Detects Resource Manager usage
dbms_feature_resource_manager(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_resource_manager(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: CPU Management: 1, Other Management: 0
DBMS_FEATURE_RMAN_BACKUP
Data Dictionary Objects
DBMS_BACKUP_RESTORE
SYS_STUB_FOR_PURITY_ANALYSIS
Detects RMAN for backup usage
dbms_feature_rman_backup(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_rman_backup(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3:
DBMS_FEATURE_RMAN_BASIC
Data Dictionary Objects
DBMS_BACKUP_RESTORE
SYS_STUB_FOR_PURITY_ANALYSIS
Detects RMAN BASIC Compression usage
dbms_feature_rman_basic(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_rman_basic(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3:
DBMS_FEATURE_RMAN_BZIP2
Data Dictionary Objects
DBMS_BACKUP_RESTORE
SYS_STUB_FOR_PURITY_ANALYSIS
Detects BZIP2 for Backup Compression usage
dbms_feature_rman_bzip2(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_rman_bzip2(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3:
DBMS_FEATURE_RMAN_DISK_BACKUP
Data Dictionary Objects
DBMS_BACKUP_RESTORE
SYS_STUB_FOR_PURITY_ANALYSIS
Detects usage of RMAN for disk backup
dbms_feature_rman_disk_backup(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_rman_disk_backup(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3:
DBMS_FEATURE_RMAN_HIGH
Data Dictionary Objects
DBMS_BACKUP_RESTORE
SYS_STUB_FOR_PURITY_ANALYSIS
Detects usage of RMAN HIGH compression
dbms_feature_rman_high(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_rman_high(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3:
DBMS_FEATURE_RMAN_LOW
Data Dictionary Objects
DBMS_BACKUP_RESTORE
SYS_STUB_FOR_PURITY_ANALYSIS
Detects usage of RMAN LOW compression
dbms_feature_rman_low(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_rman_low(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3:
DBMS_FEATURE_RMAN_MEDIUM
Data Dictionary Objects
DBMS_BACKUP_RESTORE
SYS_STUB_FOR_PURITY_ANALYSIS
Detects usage of RMAN MEDIUM compression
dbms_feature_rman_medium(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_rman_medium(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3:
DBMS_FEATURE_RMAN_TAPE_BACKUP
Data Dictionary Objects
DBMS_BACKUP_RESTORE
SYS_STUB_FOR_PURITY_ANALYSIS
Detects usage of RMAN for tape backup
dbms_feature_rman_tape_backup(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_rman_tape_backup(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3:
DBMS_FEATURE_RMAN_ZLIB
Data Dictionary Objects
DBMS_BACKUP_RESTORE
SYS_STUB_FOR_PURITY_ANALYSIS
Detects usage of ZLIB Compression
dbms_feature_rman_zlib(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_rman_zlib(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3:
DBMS_FEATURE_ROND
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
X$KJIDT
Detect RAC One Node usage
dbms_feature_rond(
is_used OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB;
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_rond(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: Database is of type SINGLE
DBMS_FEATURE_RULESMANAGER
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
Detects usage of Rules Manager and Expression Filters
dbms_feature_rulesmanager(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_rulesmanager(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: Rules Manager/Expression Filter usage not detected
DBMS_FEATURE_SECUREFILES_SYS
Data Dictionary Objects
LOB$
OBJ$
TAB$
LOBCOMPPART$
PARTLOB$
USER$
LOBFRAG$
SYS_STUB_FOR_PURITY_ANALYSIS
Detects usage of Oracle SecureFiles by SYS, SYSTEM, and XDB
dbms_feature_securefiles_sys(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_securefiles_sys(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 402
2: 402
3:
DBMS_FEATURE_SECUREFILES_USR
Data Dictionary Objects
LOB$
OBJ$
TAB$
LOBCOMPPART$
PARTLOB$
USER$
LOBFRAG$
SYS_STUB_FOR_PURITY_ANALYSIS
Detects usage of Oracle SecureFiles by users other than SYS, SYSTEM, or XDB
dbms_feature_securefiles_usr(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_securefiles_usr(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 327
2: 327
3:
DBMS_FEATURE_SEGADV_USER
Data Dictionary Objects
DBA_ADVISOR_EXECUTIONS
DBMS_LOB
WRI$_ADV_MESSAGE_GROUPS
DBA_ADVISOR_TASKS
SYS_STUB_FOR_PURITY_ANALYSIS
WRI$_ADV_RECOMMENDATIONS
DBA_FEATURE_USAGE_STATISTICS
WRI$_ADV_FINDINGS
Detects usage of Segment Advisor by tasks not named like 'SYS_AUTO_SPCADV%'
dbms_feature_segadv_user(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_segadv_user(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: Executions since last sample: 0, Total Executions: 0, Total Recommendations:
0, Projected Space saving (byte): 0
DBMS_FEATURE_SEG_MAIN_ONL_COMP
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
TABPART$
TABSUBPART$
Tracks the segments compressed as a result of an online partition maintenance operation like MOVE
dbms_feature_seg_main_onl_comp(
isAnyFragCompressed OUT NUMBER,
numFragsCompressed OUT NUMBER,
fragObjNumList OUT CLOB)
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_seg_main_onl_comp(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
DBMS_FEATURE_SEHA (new 21c)
Data Dictionary Objects
KJHAISSEHA
SYS_STUB_FOR_PURITY_ANALYSIS
Detects use of High
Availability options in Standard Edition
If SE then calls kjhaisseha
dbms_feature_seha(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_seha(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3:
DBMS_FEATURE_SERVICES
Data Dictionary Objects
DBA_SERVICES
SYS_STUB_FOR_PURITY_ANALYSIS
V$PARAMETER
GV$ACTIVE_SERVICES
Detects Services Usage
dbms_feature_services(
is_used OUT NUMBER,
hwm OUT NUMBER,
feature_info OUT CLOB);
Detects usage of SecureFile Compression by SYS, SYSTEM, and XDB
dbms_feature_sfcompress_sys(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_sfcompress_sys(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3:
DBMS_FEATURE_SFCOMPRESS_USR
Data Dictionary Objects
LOB$
OBJ$
TAB$
LOBCOMPPART$
PARTLOB$
USER$
LOBFRAG$
SYS_STUB_FOR_PURITY_ANALYSIS
Detects usage of SecureFile Compression by a user other than SYS, SYSTEM, and XDB
dbms_feature_sfcompress_usr(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_sfcompress_usr(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3:
DBMS_FEATURE_SFDEDUP_SYS
Data Dictionary Objects
LOB$
OBJ$
TAB$
LOBCOMPPART$
PARTLOB$
USER$
LOBFRAG$
SYS_STUB_FOR_PURITY_ANALYSIS
Detects usage of SecureFile Deduplication by SYS, SYSTEM, and XDB
dbms_feature_sfdedup_sys(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_sfdedup_sys(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3:
DBMS_FEATURE_SFDEDUP_USR
Data Dictionary Objects
LOB$
OBJ$
TAB$
LOBCOMPPART$
PARTLOB$
USER$
LOBFRAG$
SYS_STUB_FOR_PURITY_ANALYSIS
Detects usage of SecureFile Deduplication by users other than SYS, SYSTEM, and XDB
dbms_feature_sfdedup_usr(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_sfdedup_usr(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3:
DBMS_FEATURE_SFENCRYPT_SYS
Data Dictionary Objects
LOB$
OBJ$
TAB$
LOBCOMPPART$
PARTLOB$
USER$
LOBFRAG$
SYS_STUB_FOR_PURITY_ANALYSIS
Detects usage of SecureFile Encryption by SYS, SYSTEM, and XDB
dbms_feature_sfencrypt_sys(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_sfencrypt_sys(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3:
DBMS_FEATURE_SFENCRYPT_USR
Data Dictionary Objects
LOB$
OBJ$
TAB$
LOBCOMPPART$
PARTLOB$
USER$
LOBFRAG$
SYS_STUB_FOR_PURITY_ANALYSIS
Detects use of SecureFile Encryption by other than SYS, SYSTEM, and XDB
dbms_feature_sfencrypt_usr(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_sfencrypt_usr(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3:
DBMS_FEATURE_SHARD
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
Detects use of database is a database shard
dbms_feature_shard(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_shard(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
DECLARE
*
ERROR at line 1:
ORA-01403: no data found
ORA-06512: at "SYS.DBMS_FEATURE_SHARD", line 22
ORA-06512: at line 6
DBMS_FEATURE_SPD
Data Dictionary Objects
DBA_SQL_PLAN_DIRECTIVES
DBMS_SPD
X$KSPPCV
DBA_SQL_PLAN_DIR_OBJECTS
DUAL
X$KSPPI
DBMS_LOB
SYS_STUB_FOR_PURITY_ANALYSIS
Detect statistics incremental maintenance usage
dbms_feature_spd(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_spd(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 67
2: 21
3: Number of directives with type, DYNAMIC_SAMPLING: 21
Number of Directives with reason, JOIN CARDINALITY MISESTIMATE: 12
Number of Directives with reason, SINGLE TABLE CARDINALITY
MISESTIMATE: 9
Number of Directives with state, USABLE: 21
Number of Directive objects: 54, subobjects: 18
spd_retention_weeks: 53
_sql_plan_directive_mgmt_control: 67
_optimizer_dsdir_usage_control: 0
DBMS_FEATURE_STATS_INCREMENTAL
Data Dictionary Objects
ALL_TAB_STAT_PREFS
DBMS_STATS
SYS_STUB_FOR_PURITY_ANALYSIS
DBMS_LOB
DUAL
WRI$_OPTSTAT_SYNOPSIS_HEAD$
Use of incremental statistics collection
dbms_feature_stats_incremental(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_stats_incremental(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: Incremental global preference on : FALSE, Number of tables with table level incremental maintenance preference turned on: 0, Number of tables with table level incremental
maintenance preference turned off: 0, Number of tables that have had statistics gathered in incremental mode: 0
DBMS_FEATURE_STREAMS
Data Dictionary Objects
DBA_APPLY
DBA_PROPAGATION
SYS_STUB_FOR_PURITY_ANALYSIS
DBA_CAPTURE
Detects Streams use
dbms_feature_streams(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
I hope someone was paid well for this amazing piece of engineering.
dbms_feature_test_proc_1(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_test_proc_1(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 12
3:
DBMS_FEATURE_TEST_PROC_2
Undocumented: Return values are hard coded
I hope someone was paid well for this amazing piece of engineering.
dbms_feature_test_proc_2(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_test_proc_2(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 1
2: 33
3: Extra Feature Information for TEST_PROC_2
DBMS_FEATURE_TEST_PROC_3
Data Dictionary Objects
None
Does nothing but return the value 101. Contains the following comment: "/* doesn't matter what I do here as long as the values get * returned correctly. */"
I hope someone was paid well for this amazing piece of engineering.
dbms_feature_test_proc_3(current_value OUT NUMBER);
set serveroutput on
DECLARE
i NUMBER;
BEGIN
sys.dbms_feature_test_proc_3(i);
dbms_output.put_line('1: ' || i);
END;
/
1: 101
DBMS_FEATURE_TEST_PROC_4
Data Dictionary Objects
DBMS_STANDARD
Intentionally raises an exception. Contains the following comment: "/* raise an application error to make sure the error is being * handled correctly */ raise_application_error(-20020, 'Error for Test Proc 4 ');"
dbms_feature_test_proc_4(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_test_proc_4(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
DECLARE
*
ERROR at line 1:
ORA-20020: Error for Test Proc 4
ORA-06512: at "SYS.DBMS_FEATURE_TEST_PROC_4", line 11
ORA-06512: at line 6
DBMS_FEATURE_TEST_PROC_5
Data Dictionary Objects
None
Does nothing but contains the following comment: "/* What happens if values are not set? */"
Next time perhaps they will just "Ask Tom."
dbms_feature_test_proc_5(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_test_proc_5(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1:
2:
3: TEST PROC 5
DBMS_FEATURE_THP
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
V$ASM_ATTRIBUTE
Detects use of ASM Thin Provisioning
dbms_feature_thp(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_thp(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/ 1: 0
2:
3:
DBMS_FEATURE_TSDP
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
Detects Transparent Sensitive Data Protection Policy usage
dbms_feature_tsdp(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_tsdp(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: Transparent Sensitive Data Protection feature not used
DBMS_FEATURE_UNIFIED_AUDIT
Data Dictionary Objects
AUDIT_NG$
AUD_CONTEXT$
SYS_STUB_FOR_PURITY_ANALYSIS
AUDIT_UNIFIED_POLICIES
AUD_POLICY$
V$OPTION
Detects usage of Unified Audit
dbms_feature_unified_audit(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_unified_audit(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 1
2: 0
3: Number of Unified Audit policies=7; Number of Enabled Unified Audit
policies=1; Number of Unified Audit policies with condition=0; Number of Unified
Audit policies on DV=0; Number of Unified Audit policies on OLS=0; Number of
Unified Audit policies on XS=4; Number of Unified Audit policies on DATAPUMP=0;
Number of Enabled Unified Audit Contexts=0
DBMS_FEATURE_USER_MVS
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
Detects Materialized View Use
dbms_feature_user_mvs(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_user_mvs(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: User MVs do not exist.
DBMS_FEATURE_UTILITIES1
Data Dictionary Objects
DBA_FEATURE_USAGE_STATISTICS
KU_UTLUSE
SYS_STUB_FOR_PURITY_ANALYSIS
Detects usage of DataPump Export and associated compression and encryption
dbms_feature_utilities1(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
dbms_feature_vpd(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_vpd(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3: Number of policies=0, Number of enabled policies=0, Number of objects that have VPD policies=0, Number of policies on
SELECT statement=0, Number of policies on INSERT statement=0, Number of policies on UPDATE statement=0, Number of
policies on DELETE statement=0, Number of policies on INDEX statement=0, Number of DYNAMIC policies=0, Number of STATIC
policies=0, Number of SHARED_STATIC policies=0, Number of CONTEXT_SENSITIVE policies=0, Number of
SHARED_CONTEXT_SENSITIVE policies=0, Number of attribute associated CONTEXT_SENSITIVE policies=0, Number of policies with
long predicate=0, Number of COLUMN LEVEL policies=0, Number of COMMON policies=0, Number of INHERITED policies=0
DBMS_FEATURE_WCR_CAPTURE
Data Dictionary Objects
DBA_FEATURE_USAGE_STATISTICS
DUAL
V$DATABASE
DBA_WORKLOAD_CAPTURES
SYS_STUB_FOR_PURITY_ANALYSIS
Detects usage for Workload Capture
dbms_feature_wcr_capture(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_wcr_capture(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3:
DBMS_FEATURE_WCR_REPLAY
Data Dictionary Objects
DBA_FEATURE_USAGE_STATISTICS
DUAL
V$DATABASE
DBA_WORKLOAD_REPLAYS
SYS_STUB_FOR_PURITY_ANALYSIS
Detects usage for Workload Replay
dbms_feature_wcr_replay(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);
set serveroutput on
DECLARE
i NUMBER;
j NUMBER;
k CLOB;
BEGIN
sys.dbms_feature_wcr_replay(i, j, k);
dbms_output.put_line('1: ' || i);
dbms_output.put_line('2: ' || j);
dbms_output.put_line('3: ' || k);
END;
/
1: 0
2: 0
3:
DBMS_FEATURE_XDB
Data Dictionary Objects
SYS_STUB_FOR_PURITY_ANALYSIS
Detects usage for XDB
dbms_feature_xdb(
feature_boolean OUT NUMBER,
aux_count OUT NUMBER,
feature_info OUT CLOB);