Re: Access and Filter Predicate on same execution plan line

  • From: Jonathan Lewis <jlewisoracle@xxxxxxxxx>
  • To: Mladen Gogala <gogala.mladen@xxxxxxxxx>
  • Date: Wed, 18 Aug 2021 13:02:15 +0100

Not true.
But thanks to (relatively) recent changes in the costing of index skip
scans it will appear this way if the number of index entries per value of
the skipped column(s) is so small that that take less than two blocks
(which often means you need 3 or 4 hundred rows per leading values) before
you'd want to see Oracle switch to an index fast full scan followed by
table access by rowid (which is rarely does).

In fact I have a blog note about this costing change where I have 1Million
values in col1, 1Million values in col2 and Oracle still does an index skip
scan for "col2= constant".
https://jonathanlewis.wordpress.com/2018/05/11/skip-scan-3/


Regards
Jonathan Lewis



On Tue, 17 Aug 2021 at 19:22, Mladen Gogala <gogala.mladen@xxxxxxxxx> wrote:

To tell the truth, skip scan is far from ideal. It is similar to fast full
index scan.

Other related posts: