Re: In AWR, How can 'user calls' be < 'executes'/sec?

From: Tanel Poder <tanel_at_poderc.com>
Date: Thu, 15 Oct 2009 16:34:53 +0800
Message-ID: <4602f23c0910150134j4bbd8c78pade0b22984f2e7dd_at_mail.gmail.com>



You have only one user call reported as there is only one user call executed directly via oracle program interface (OPI).

However you would have one thousand recursive calls executed as well, these are database calls executed via recursive program interface (RPI). These calls are shown as "recursive calls" in v$sesstat.

So, total number of DB calls = user calls + recursive calls.

Tanel.

On Thu, Oct 15, 2009 at 1:41 AM, Alex Fatkulin <afatkulin_at_gmail.com> wrote:

> It's pretty easy to get user calls to be less than executes, if you
> submit the following pl/sql block, for example:
>
> begin
> for i in 1 .. 1000
> loop
> for cur in (select null from dual)
> loop
> null;
> end loop;
> end loop;
> end;
>
> that would be one user call and 1000+ executes. In fact, in certain
> cases you may use this to see how "chatty" the app is, i.e. how much
> "work" is being done per call.
>
>

-- 
Tanel Poder
http://blog.tanelpoder.com

--
http://www.freelists.org/webpage/oracle-l
Received on Thu Oct 15 2009 - 03:34:53 CDT

Original text of this message