Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.server -> Re: Odd maximum elapsed event times in raw 10046 trace
mathewbutler_at_yahoo.com (Matt) wrote in message news:<19f48a45.0408081714.36f797d8_at_posting.google.com>...
> Niall,
>
> What you describe, seems plausible.
I think what I describe is plausible, the backward attribution is just wrong and I'm annoyed at myself at having posted it.
> Except for the fact that the Cary
> Millsap/Jeff Holt (Optimizing Oracle Performance) book describes using
> "forward attribution" ie: "You should attribute each wait #n duration
> to the first database call for cursor #2 that follows the WAIT line in
> the trace file". It's not that I take everything that I read as
> gospel, it's just that statement this tallys with my experience.
> Clearly something is going on that I don't yet understand.
I assume you are talking about this snippet from the trace file with a circa 28 minute wait on sqlnet?
WAIT #2: nam='SQL*Net message from client' ela= 338 p1=1413697536 p2=1 p3=0
STAT #2 id=1 cnt=0 pid=0 pos=1 obj=60308 op='TABLE ACCESS BY INDEX ROWID EV_CONFIGURATION (cr=1 r=1 w=0 time=3275 us)' STAT #2 id=2 cnt=0 pid=1 pos=1 obj=60309 op='INDEX UNIQUE SCANPKEV_CONFIGURATION (cr=1 r=1 w=0 time=3271 us)' WAIT #2: nam='SQL*Net message to client' ela= 2 p1=1413697536 p2=1 p3=0
Now it looks like you have a between call event (as described on p103) here. (the STAT lines get written (in my understanding) only when the previous dbcall is finished.
From the extract you posted your other sqlnet message from client events are in the sub 500 microsecond range. Then suddenly we wait for 28 minutes. I'd *love* to know what the app/user was doing at this point. In other words - yes you should forward attribute - I was wrong - but is it actually reasonable to associate a 28 minute wait for the next dbcall to be issued with that dbcall, or have you in fact merely determined that 28 minutes of your response time is not attributable in any meaningful sense to the db at all (that would be my guess).
It also seems to me that I was misled by the term 'associated with' as meaning 'caused by'.
I'd rewrite my 'explanation' as
in db
wait --- on dbfile.... #1 dbcall --- select 1 million rows. #1 wait --- on sqlnet (and any others) #2 dbcall --- select value from lookup that tells me to update,delete orwhatever #2
-- Niall Litchfield Oracle DBA Audit Commission UK.Received on Mon Aug 09 2004 - 04:11:05 CDT