是一个等待事件 free list 存在于段头中,指针指向可以插入记录的块 oracle 在插入记录时,根据进程 ID取模后插入到特定的free list空闲列表中 使用多个进程,高并发插入大量记录,可以触发这个实践,也就是段头来不及处理插入的记录时,就会等待自由列表空闲,也就出现了这个实践 可以通过两个办法解决: 1.使用assm 自动段空间管理特性 2.增加free list groups 和free list 的值
LZ用多个会话同时对一个表做大量insert操作即可看到该等待。 select class,count from v$waitstat where class = 'free list'; 不过该等待也可能在buffer busy wait中,如果block已经读到缓冲区中,那么等待就在segment header上。上面查询改为where class='segment header'
free list 存在于段头中,指针指向可以插入记录的块
oracle 在插入记录时,根据进程 ID取模后插入到特定的free list空闲列表中
使用多个进程,高并发插入大量记录,可以触发这个实践,也就是段头来不及处理插入的记录时,就会等待自由列表空闲,也就出现了这个实践
可以通过两个办法解决:
1.使用assm 自动段空间管理特性
2.增加free list groups 和free list 的值
select class,count
from v$waitstat
where class = 'free list';
不过该等待也可能在buffer busy wait中,如果block已经读到缓冲区中,那么等待就在segment header上。上面查询改为where class='segment header'