Re: Delete based on rowid

  • From: Nuno Souto <dbvision@xxxxxxxxxxxx>
  • Date: Mon, 05 Oct 2009 23:12:22 +1000

Agreed, but it sounds like a bug to me.
It would be much faster to read the row
given the rowid and then use whatever
column values(s) come up in indexes
to get rid of the index entry.
I can sort of understand a non-unique index
maybe using an index ffs, but a unique one?
Yet, stranger things have been seen...
I suppose it'd also depend on the index depth
as well?
Plenty of ideas for some in-depth investigation,
I reckon!

--
Cheers
Nuno Souto
in wet Sydney, Australia
dbvision@xxxxxxxxxxxx


rjamya wrote,on my timestamp of 5/10/2009 9:26 PM:
I think you are right ... when delete happens on a (indexed) column value, the index deletion should be quick but since rowid is used, a index ffs is probably the fastest oracle can do.

On Mon, Oct 5, 2009 at 7:10 AM, <troach@xxxxxxxxx <mailto:troach@xxxxxxxxx>> wrote:

    Since a btree index is organized by columns, not rowid (assuming its
    a btree index) oracle need to full scan it for that rowid. Since
    rowid points to the row in the table and not the index, it has no
    choice but to full scan the index. Someone please correct me if I'm
    wrong?


--
//www.freelists.org/webpage/oracle-l


Other related posts: