Skip to Main Content

Chinese

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

执行alter system flush buffer_cache命令后不能马上释放x$bh

972446Nov 5 2012 — edited Nov 6 2012
近日在测试延迟块清除时,发现一下情况:
1、通过alter system flush buffer_cache命令强制将数据块A保存到硬盘;
2、再commit事务;
3、通过命令alter system dump datafile 5 block 5688;发现数据块已经发生fast commit cleanout,itl上的flg已标识为U;
4、后来发现,flush buffer_cache后马上查询SELECT * FROM x$bh WHERE dbarfil=5 AND dbablk=5688 AND state<>0会有结果;等几分钟后再执行x$bh查询语句,就不会有结果啦;这时再commit的话,dump出的数据块内容是没有问题的,itl上flg标识为------。

请问:这个命令alter system flush buffer_cache不能马上刷新buffer吗?或者有其它的情况?内部原因是什么?

谢谢!

环境:xp操作系统,oracle 10.2.0.1
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Dec 4 2012
Added on Nov 5 2012
6 comments
1,057 views