DBA Data[Home] [Help]

PROCEDURE: SYS.DBMS_FEATURE_HEATMAP

Source


1 procedure DBMS_FEATURE_HEATMAP
2     (feature_boolean  OUT  NUMBER,
3      aux_count        OUT  NUMBER,
4      feature_info     OUT  CLOB)
5 AS
6     feature_usage   varchar2(300);
7     num_tbs         number := 0;
8     num_seg         number := 0;
9     num_blocks      number := 0;
10 begin
11     -- initialize
12     feature_boolean := 0;
13     aux_count       := 0;
14     feature_info    := to_clob('Heat Map feature is not used');
15 
16     -- Distinct tablespaces tracked
17     execute immediate 'select count(distinct(ts#)) from heat_map_stat$ where
18                        obj# <> -1'
19        into num_tbs;
20 
21 
22     -- Distinct segments tracked
23     execute immediate 'select count(*) from '||
24             ' (select distinct obj#, dataobj#, ts# from heat_map_stat$ where
25                        obj# <> -1)'
26             into num_seg;
27 
28     -- Blocks tracked in memory
29     execute immediate 'select count(*) from x$ktfsimstat'
30            into num_blocks;
31 
32     if num_tbs > 0 OR num_seg > 0 OR num_blocks > 0 then
33 
34       feature_boolean := 1;
35       feature_usage   :=
36                 'Number of Tablespaces Tracked: ' || to_char(num_tbs) ||
37         ', ' || ' Number of Segments Tracked: ' || to_char(num_seg) ||
38         ', ' || ' Number of Blocks Tracked in Memory: ' || to_char(num_blocks);
39       feature_info    := to_clob(feature_usage);
40 
41     end if;
42 
43 end;