I guess you have done a 10046 trace, Which datafile/block/segment it's reading when the insert slow down? You can get the rfile# and block# form p1/p2 of db file sequential read and find out the segment select owner, segment_name, partition_name, tablespace_name, extent_id from dba_extents where file_id = rfile# and block# between block_id and block_id + blocks - 1; -- Regards Sidney Chen -- //www.freelists.org/webpage/oracle-l