Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Mailing Lists -> Oracle-L -> Re: buffer busy waits and v$filestat
Not completely true.
If the dbwr is going to write a buffer, it will set a bit that the buffer is being written. In the good old days, this meant that the buffer could be changed until the block was written ('write complete waits'). However in 8.1, cloning of buffers was introduced. So now the dirty buffer is cloned (see stats in v$sysstat), the new clone can be changed, the old clone is written. (old and new are bad words, but you get my drift). So write complete waits should be a whole lot less in 8.1 then before. They may still happen (not sure why yet).
Anjo.
On Wednesday 30 July 2003 03:04, you wrote:
> That's On 2003.07.29 19:59, Diego Cutrone wrote:
> > Another thing I think (I'm sorry to disagree with
> > Mladen on this) is that when DBWR hasn't finished
> > writing a buffer to the disk, and a session wants that
> > buffer in exclusive mode, there's a wait and that wait
> > is computed as a write complete wait and not as BBW.
>
> DBWR works in 2 phases:
> a) It scans for dirty buffers and pins them.
> b) It starts IO, usually using writev.
>
> If IO has been launched and not yet finished, then the wait is
> "write complete wait". If IO hasn't been started yet, we have "buffer
> busy". This "write complete" wait became essential with the advent of
> asynchronous I/O. I was just simplifying things, nothing else.
-- ---------------------------------------------------------------- Anjo Kolk http://www.oraperf.com -- Please see the official ORACLE-L FAQ: http://www.orafaq.net -- Author: Anjo Kolk INET: anjo_at_oraperf.com Fat City Network Services -- 858-538-5051 http://www.fatcity.com San Diego, California -- Mailing list and web hosting services --------------------------------------------------------------------- To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing).Received on Thu Jul 31 2003 - 07:44:29 CDT
![]() |
![]() |