Re: orasrp SQL*Net message to client as non-idle event

From: LS Cheng <exriscer_at_gmail.com>
Date: Sun, 7 Feb 2010 22:27:18 +0100
Message-ID: <6e9345581002071327t74bab3a3kea2e9bc5b612bf62_at_mail.gmail.com>



You are right, it should be 'SQL*Net message from client'! Sorry about that typo!

From your tracefile you determine 'SQL*Net message from client' as idle because it is the last wait event before the next parse (db call)?

Thanks!

--
LSC


On Sun, Feb 7, 2010 at 5:57 PM, Egor Starostin <egorst_at_gmail.com> wrote:


> Hi
>
> > I wonder how can we determine if SQL*Net message to client is idle or
> not,
> > for instance tkprof just sum them up and show as single wait event, how
> is
> > orasrp accounting the difference?
>
> I think you mean 'SQL*Net message from client' since OraSRP can split
> only a couple of events into an [idle] and [non-idle] parts:
> 'SQL*Net message from client' and 'SQL*Net message from dblink'.
>
> OraSRP decides that 'SQL*Net message from client' is idle when it
> happened between db calls. Otherwise (within db call) it's not
> attributed as [idle].
> If you are familiar with 10046 contents then here's an example from
> real trace (with my small comments inline):
> ***
> =====================
> PARSING IN CURSOR #1 len=43 dep=0 uid=0 oct=3 lid=0 tim=1304096237
> hv=2707617103 ad='89a03e18'
> select * from all_objects where rownum < 20
> END OF STMT
> PARSE #1:c=0,e=143,p=0,cr=0,cu=0,mis=0,r=0,dep=0,og=1,tim=1304096209
> EXEC #1:c=0,e=744,p=0,cr=0,cu=0,mis=0,r=0,dep=0,og=1,tim=1304097036
> WAIT #1: nam='SQL*Net message to client' ela= 3 driver id=1650815232
> #bytes=1 p3=0 obj#=-1 tim=1304097096
> FETCH #1:c=10000,e=6903,p=0,cr=9,cu=0,mis=0,r=1,dep=0,og=1,tim=1304104057
> WAIT #1: nam='SQL*Net message from client' ela= 721 driver
> id=1650815232 #bytes=1 p3=0 obj#=-1 tim=1304104865 # [non-idle]
> WAIT #1: nam='SQL*Net message to client' ela= 1 driver id=1650815232
> #bytes=1 p3=0 obj#=-1 tim=1304105319
> FETCH #1:c=0,e=627,p=0,cr=21,cu=0,mis=0,r=15,dep=0,og=1,tim=1304105524
> WAIT #1: nam='SQL*Net message from client' ela= 253 driver
> id=1650815232 #bytes=1 p3=0 obj#=-1 tim=1304105818 # [non-idle]
> WAIT #1: nam='SQL*Net message to client' ela= 1 driver id=1650815232
> #bytes=1 p3=0 obj#=-1 tim=1304105867
> FETCH #1:c=0,e=63,p=0,cr=6,cu=0,mis=0,r=3,dep=0,og=1,tim=1304105900
> WAIT #1: nam='SQL*Net message from client' ela= 1960753 driver
> id=1650815232 #bytes=1 p3=0 obj#=-1 tim=1306066946 # [idle]
> =====================
> PARSING IN CURSOR #1 len=21 dep=0 uid=0 oct=3 lid=0 tim=1306069444
> hv=2200891488 ad='89913b50'
> select user from dual
> END OF STMT
> PARSE #1:c=0,e=60,p=0,cr=0,cu=0,mis=0,r=0,dep=0,og=1,tim=1306069440
> ***
>
> The first and the second events 'SQL*Net message from client' are
> happened within db call (select * from all_objects ...) and treated as
> non-idle.
> And the third one is happened between db calls and will be attributed
> by OraSRP as [idle].
>
>
> --
> Egor
> http://oracledba.ru
>
-- http://www.freelists.org/webpage/oracle-l
Received on Sun Feb 07 2010 - 15:27:18 CST

Original text of this message