Re: Why dba_hist_waitclassmet_history has 0 line?

  • From: Quanwen Zhao <quanwenzhao@xxxxxxxxx>
  • To: Jonathan Lewis <jlewisoracle@xxxxxxxxx>
  • Date: Fri, 3 Dec 2021 13:38:49 +0800

Thanks, Jonathan!

Your ideas is very good! Perhaps I might also found the related DDL info
from dbms_metadata.get_ddl().

I need clarify why I go to check dba_hist_waitclassmet_history - I wanna
check Avtive Sessions Per Wait Class from EMCC 13.5 in the last 24 hours
and more old days (7 or 31 days).

Yes, I can get several data from v$waitclassmetric_history (in the last 60
minutes) and v$waitclassmetric (in the last 1 minute).

I guess Oracle might suggest we go to check dba_hist_active_sess_history if
elapsed time is more than 1 hour. Because I've also noticed that I can see
the historical graph of ASH analysis when clicking the each legend (such
as, cpu_used or cpu_wait) from the graph (Active Sessions Per Wait Class)
of EMCC 13.5.

Best Regards
Quanwen Zhao

在 2021年12月3日星期五,Jonathan Lewis <jlewisoracle@xxxxxxxxx> 写道:


It must be a deliberate coding decision, and there may be a hidden
parameter (or call to an internal package) that changes the way Oracle
access the relevant x$, but if you trace the snapshot code you can see the
SQL statement that ought to populate the relevant wrh$ from the x$ table,
and then see that nothing arrives there.
Regards
Jonathan Lewis

On Sun, 28 Nov 2021 at 08:49, Quanwen Zhao <quanwenzhao@xxxxxxxxx> wrote:

Hello Listeners 😊,
Recently I've found three important views about "v$waitclassmetric",
"v$waitclassmetric_history", and "dba_hist_waitclassmet_history". Here're
the corresponding links from oracle online docs:

https://docs.oracle.com/en/database/oracle/oracle-database/19/refrn/V-WAITCLASSMETRIC.html


https://docs.oracle.com/en/database/oracle/oracle-database/19/refrn/V-WAITCLASSMETRIC_HISTORY.html#GUID-854BB495-19FC-4EB4-A81C-4D0EEA13B83C


https://docs.oracle.com/en/database/oracle/oracle-database/19/refrn/DBA_HIST_WAITCLASSMET_HISTORY.html#GUID-A931DFBF-4023-41F0-A333-E56741DE589D

Quoted the brief introduction for themselves:

9.131 V$WAITCLASSMETRIC

V$WAITCLASSMETRIC displays metric values of wait classes for the most
recent 60-second interval. A history of the last one hour will be kept in
the system.



9.132 V$WAITCLASSMETRIC_HISTORY

V$WAITCLASSMETRIC_HISTORY displays metric values of wait classes for
all intervals in the last one hour.

The columns for V$WAITCLASSMETRIC_HISTORY are the same as those
for V$WAITCLASSMETRIC.

5.84 DBA_HIST_WAITCLASSMET_HISTORY

DBA_HIST_WAITCLASSMET_HISTORY displays the history of the wait event
class metric data kept by the Workload Repository.

But why dba_hist_waitclassmet_history has 0 line? Here's my query from
oracle 21.3 (test db) and found all the same situation from 19.3 and
11.2.0.4:

16:43:23 SYS@ORACDB> select count(*) from v$waitclassmetric;

  COUNT(*)
----------
        13

16:43:29 SYS@ORACDB> select count(*) from v$waitclassmetric_history;

  COUNT(*)
----------
       793

16:43:33 SYS@ORACDB> select count(*) from dba_hist_waitclassmet_history;

  COUNT(*)
----------
         0

 Has anybody else encountered it? Oracle hasn't saved the historical
wait class metric to view dba_hist_waitclassmet_history or is it a bug?
Best Regards
Quanwen Zhao

Other related posts: