Hi! > You should only need to use rebuild freelists if your freelists are in some > way "broken." Or block space is inefficiently used due prematurely unlinked blocks (caused by highly varying row sizes and suboptimal pctfree/used parameters). > > Freelist information does not reside in individual blocks. Actually every datablock has a pointer to next block in freelist. Segment header (or freelist group block) just has pointer to first block that would be considered for insert (thus being in freelist), this block contains pointer to next one etc... > segment allocation is from the tablespace (relatively big overhead) > master freelist keeps some free headroom in reserve and gets back blocks > that get "empty enough." If the master freelist runs low on demand, bump > goes the high water mark, and if needed gets some segment allocation. Its somewhat more complicated - "free" blocks go to master freelist in rare cases, like fixing freelist information, some cases with HWM increasing, usually the free blocks will stay in process freelists or transaction freelists. You could get some additional information out from http://integrid.info/Poder_Freelists_vs_ASSM.ppt Tanel. ---------------------------------------------------------------- Please see the official ORACLE-L FAQ: http://www.orafaq.com ---------------------------------------------------------------- To unsubscribe send email to: oracle-l-request@xxxxxxxxxxxxx put 'unsubscribe' in the subject line. -- Archives are at //www.freelists.org/archives/oracle-l/ FAQ is at //www.freelists.org/help/fom-serve/cache/1.html -----------------------------------------------------------------