Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Mailing Lists -> Oracle-L -> Re: Index on status field?
Christo,
Thanks a lot.
> A block can be reused only if all entries from it
are removed, or a new entry's place is arround entries
> in that block (based on your key and rowid)
This is what I want to know more.
My entry will be 0, the same so when it is going into the block that is not fully emptied (put back to the free list).
If it is not by the free list then how?
Regards,
Zoran
> Imagine an ordered list, ordered by YOUR_INDEX_KEY,
> rowid.
>
> Your index will have:
>
> -- Block 1 --
> 0, AAAb... 1
> 0, AAAb... 2
> 0, AAAb... 3
> 0, AAAb... 101
> 0, AAAb... 350
> ...
> -- Block 2 --
> 0, AAAb... 551
> 0, AAAb... 800
> 0, AAAb... 950
> 0, AAAb... 1001
> 0, AAAb... 1002
> ...
>
> As long as you dont leave unprocessed behind, as the
> entries are
> removed, blocks in the begining of the list will be
> emptied, and thus
> reused later on. A block can be reused only if all
> entries from it are
> removed, or a new entry's place is arround entries
> in that block
> (based on your key and rowid)
>
> The approach you have chosen is pretty much optimal.
> The one thing i
> would add is to maybe compress the index, but i am
> not sure wehter you
> will save much at all, given that you field is
> already number(1).
>
> Does that answer your question ?
>
-- http://www.freelists.org/webpage/oracle-lReceived on Fri Apr 08 2005 - 12:01:26 CDT
![]() |
![]() |