Oracle DBMS_STATS_INTERNAL_AGG
Version 21c

General Information
Library Note Morgan's Library Page Header
Which has the higher priority in your organization: Deploying a new database or securing the ones you already have? Looking for a website, and resources, dedicated solely to securing Oracle databases? Check out DBSecWorx.
Purpose Undocumented but related to Optimizer Stats Collection. The package appears to be protected with an ACCESSIBLE BY clause from being run stand-alone.
AUTHID CURRENT_USER
Dependencies
COL$ DBMS_STANDARD DUAL
COLHISTREC DBMS_STATS FINALHIST$
COLHISTTAB DBMS_STATS_INTERNAL MON_MODS_ALL$
DBMS_ASSERT DBMS_STATS_LIB PLITBLM
DBMS_SQLDIAG DBMS_UTILITY WRI$_OPTSTAT_SYNOPSIS_HEAD$
Documented No
First Available 18.1
Security Model Owned by SYS with EXECUTE granted to PUBLIC
Source {ORACLE_HOME}/rdbms/admin/prvtstataggs.plb
Subprograms
 
AGG_PDB_SHARD_TSTATS
Undocumented dbms_stats_internal_agg.agg_pdb_shard_tstats(
owner              IN  VARCHAR2,
tab_name           IN  VARCHAR2,
tab_type           IN  NUMBER,
nrows              OUT NUMBER,
nblks              OUT NUMBER,
im_imcu_count      OUT NUMBER,
im_block_count     OUT NUMBER,
pdb_or_shard_count IN  NUMBER);
TBD
 
CAN_DERIVE_COL_HISTOGRAM
Undocumented dbms_stats_internal_agg.can_derive_col_histogram(
nnv                     IN     NUMBER,
tobjn                   IN     NUMBER,
icol                    IN     NUMBER,
colsize                 IN OUT NUMBER,
derive_global_histogram    OUT BOOLEAN);
TBD
 
CHECK_GLOBAL_TAB_STALENESS
Undocumented

Protected by ACCESSIBLE BY clause
dbms_stats_internal_agg.check_global_tab_staleness(share_type IN NUMBER);
exec dbms_stats_internal_agg.check_global_tab_staleness(1);
 *
ERROR at line 1:
ORA-06550: line 1, column 7:
PLS-00904: insufficient privilege to access object DBMS_STATS_INTERNAL_AGG
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored
 
CONSTRUCT_GLOBAL_HEIGHT_CUR
Undocumented

Protected by ACCESSIBLE BY clause
dbms_stats_internal_agg.construct_global_height_cur(tab_type IN NUMBER)
RETURN VACHAR2;
SELECT dbms_stats_internal_agg.construct_global_height_cur(1)
FROM dual;
       *
ERROR at line 1:
ORA-06553: PLS-904: insufficient privilege to access object DBMS_STATS_INTERNAL_AGG
 
CONSTRUCT_GLOBAL_HYBRID_CUR
Undocumented dbms_stats_internal_agg.construct_global_hybrid_cur(tab_type IN NUMBER)
RETURN VARCHAR2;
SELECT dbms_stats_internal_agg.construct_global_hybrid_cur(1)
FROM dual;
       *
ERROR at line 1:
ORA-06553: PLS-904: insufficient privilege to access object DBMS_STATS_INTERNAL_AGG
 
CONSTRUCT_SEL_AGG_COL_STAT
Undocumented dbms_stats_internal_agg.construct_sel_agg_col_stat(
tab_type  IN NUMBER,
dop       IN NUMBER,
need_ndv  IN BOOLEAN);
TBD
 
CONSTRUCT_SQL_NDV_HISTOGRAM
Undocumented

Protected by ACCESSIBLE BY clause
SELECT dbms_stats_internal_agg.construct_sql_ndv_histogram(2)
FROM dual;
       *
ERROR at line 1:
ORA-06553: PLS-904: insufficient privilege to access object DBMS_STATS_INTERNAL_AGG
TBD
 
COUNT_PDB_OR_SHARD
Undocumented dbms_stats_internal_agg.count_pdb_or_shard(
ownname  IN VARCHAR2,
tabname  IN VARCHAR2,
tab_type IN VARCHAR2);
TBD
 
DERIVE_GLOBAL_HISTOGRAM
Undocumented dbms_stats_internal_agg.derive_global_histogram(
owner       IN     VARCHAR2,
tab         IN     VARCHAR2,
tobjn       IN     NUMBER,
intcoln     IN     NUMBER,
cht         IN OUT sys.colhisttab,
mnb         IN     NUMBER,
cind        IN     NUMBER,
histtype    IN OUT VARCHAR2,
ndv         IN     NUMBER,
nmin        IN     NUMBER,
nnv         IN     NUMBER,
ssize       IN OUT NUMBER,
ssizesq     IN OUT NUMBER,
popcnt      IN OUT NUMBER,
popcntsq    IN OUT NUMBER,
auto_sample IN     BOOLEAN);
TBD
 
FROM_CLAUSE_AGG_COL_STAT
Undocumented dbms_stats_internal_agg.from_clause_agg_col_stat(
tab_type       IN NUMBER,
inner_sel_list IN VARCHAR2)
RETURN VARCHAR2;
TBD
 
FROM_CLAUSE_GLOBAL_HISTOGRAM
Undocumented dbms_stats_internal_agg.from_clause_global_histogram(
tab_type    IN NUMBER,
cursor_type IN VARCHAR2)
RETURN VARCHAR2;
TBD
 
FROM_CLAUSE_NDV_HISTOGRAM
Undocumented dbms_stats_internal_agg.from_clause_ndv_histogram(tab_type IN NUMBER)
RETURN VARCHAR2;
TBD
 
GET_ACT_EPVAL_NULLCNT
Undocumented dbms_stats_internal_agg.get_act_epval_nullcnt(
ownername       IN  VARCHAR2,
tab_name        IN  VARCHAR2,
tobjn           IN  NUMBER,
icol            IN  NUMBER,
col_name        IN  VARCHAR2,
tab_type        IN  NUMBER,
act_nonnull_cnt OUT NUMBER,
act_null_cnt    OUT NUMBER);
TBD
 
GET_AGG_COLSTATS
Undocumented dbms_stats_internal_agg.get_agg_colstats(
tab_ num           IN  NUMBER,
total_rows         IN  NUMBER,
ndv_needed         IN  BOOLEAN,
dop                IN  NUMBER,
hybrid_global_ndv  OUT BOOLEAN,
pdb_or_shard_count IN  NUMBER)
RETURN dbms_stats_internal.aggcoltab;
TBD
 
GET_NNV_HIST
Undocumented dbms_stats_internal_agg.get_nnv_hist(
ownername  IN  VARCHAR2,
tab_name   IN  VARCHAR2,
tobjn      IN  NUMBER,
icol       IN  NUMBER,
col_name   IN  VARCHAR2,
tab_type   IN  NUMBER,
nnvhist    OUT NUMBER,
nnvNonHist OUT NUMBER);
TBD
 
UPDATE_ROOT_OR_COORD_DML
Undocumented

Protected by ACCESSIBLE BY clause
dbms_stats_internal_agg.update_root_or_coord_dml(share_type IN NUMBER);
exec dbms_stats_internal_agg.update_root_or_coord_dml(1);
 *
ERROR at line 1:
ORA-06550: line 1, column 7:
PLS-00904: insufficient privilege to access object DBMS_STATS_INTERNAL_AGG
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored

Related Topics
Built-in Functions
Built-in Packages
DBMS_STATS
DBMS_STATS_ADVISOR
DBMS_STATS_INTERNAL
What's New In 19c
What's New In 20c-21c

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-2019 Daniel A. Morgan All Rights Reserved
  DBSecWorx