Originally posted by rameshk
when you insert data into extents, DBWR looks for an extent which is bigger than the current extent (if PCTINCREASE > 0). If SMON doesn't coalesce the free space into larger extents, data never gets inserted into those extents and the tablespace gets fragmented.
The space allocation in Oracle is not that simple, it depends on several things: if the request for space would occupy more or less than 5 blocks, if Oracle needs to split the extent or find an exact match and on the order of the listed free extents in the SGA.