RE: db_file_sequential_reads takes over 7 seconds per seq# change jump for single block read.

  • From: Jonathan Lewis <jonathan@xxxxxxxxxxxxxxxxxx>
  • To: "jithinsarath@xxxxxxxxx" <jithinsarath@xxxxxxxxx>, "oracle-l@xxxxxxxxxxxxx" <oracle-l@xxxxxxxxxxxxx>
  • Date: Wed, 2 Mar 2016 08:26:11 +0000



This means you spend some time waiting for a db file sequential read and then 
spend 6 or 7 seconds on CPU.
The column seconds_in_wait would be better named "second since this wait 
started" - you need to look at STATE and WAIT_TIME to find out if the session 
is still waiting, and how long it waited for if it isn't.

Better still, look at v$session_wait_history to get information on the last 10 
waits for the session; even better - if you are licensed to view 
v$active_session_history, check the per-second history for the session and 
you'll probably get 6 or 7 explcit "ON CPU" rows for the time you've 
interpreted as wait time.


Regards
Jonathan Lewis
http://jonathanlewis.wordpress.com
@jloracle
________________________________
From: oracle-l-bounce@xxxxxxxxxxxxx [oracle-l-bounce@xxxxxxxxxxxxx] on behalf 
of Jithin Sarath [jithinsarath@xxxxxxxxx]
Sent: 02 March 2016 07:18
To: oracle-l@xxxxxxxxxxxxx
Subject: db_file_sequential_reads takes over 7 seconds per seq# change jump for 
single block read.

All, I have a strange problem and need guidance.

I support databases for Oracle E-Business Suite, and in one of our production 
instances, a job is long running. This in itself is not new, but what perplexes 
me is that when I look at v$session_waits for this session, I see that the 
seconds_in_wait climbs to 6 or 7 per db_file_sequential_read. Once it reached 
this situation, the seq# will increment slowly as opposed to quick jumps in 
1000s.

If I flush the buffer_cache, the processing speeds up and after a while it hit 
the slow db_file_sequential_reads again. Other DB session do not show this 
problem. I tried to dump the blocks that are referenced when it is slow, and it 
points to one of the tow indexes. When I query the table directly using the 
index, the results are quick. The execution plan doesn't show any "outliers" 
and the expected execution is < 2 sections.

How do I explain this?

Thanks in advance, Jithin

Other related posts: