Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.server -> Re: Does it read empty blocks into buffer cache ?
Sorry I was wrong about that. It does indeed read in the empty blocks after
a little experiment.
"tingl" <one4all_at_all4one.not> wrote in message
news:NAlX9.4937$Sv3.524551_at_newsread1.prod.itd.earthlink.net...
> No, Oracle does not scan empty blocks. It would be inefficient to do so.
>
> "Bass Chorng" <bchorng_at_yahoo.com> wrote in message
> news:bd9a9a76.0301201619.19d6d03f_at_posting.google.com...
> > If I have a table with 0 rows but it has a very high highwater mark
> > and if I do a select *, would Oracle scan all empty blocks into
> > the buffer cache ?
> >
> > The known factor is Oracle will perform a full table scan to the
> > highwater mark although the table is empty, and the question
> > is,is Oracle going to flood the buffer cache with all the
> > empty blocks it reads ?
> >
> > I don't see any reason why it wouldn't, as it is the same
> > as if the table is loaded with rows. But then the state of
> > x$bh would be 0 or 1 for those empty blocks that are read
> > in ?
> >
> > I did a test and observed no state change. But I can not
> > tell if it did not read the empty blocks in the first place
> > or if it did, but since the blocks are empty, they are
> > still marked as state 0.
> >
> > Wonder if any body knows the answer.
> >
>
>
>
Received on Tue Jan 21 2003 - 18:57:07 CST