Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.server -> Re: Filesystem device O/S Buffering
Brent Henry wrote in message <74op5h$m68149_at_aegean.jcrew.com>...
>Can anyone explain how Oracle ensures that data gets written to the =
disk
>after a commit when using filesystem devices?
After commit only proper redo entries need to be flushed to the disk =
(online
redo log file). There's no need to write modified data block buffers to =
the
datafiles on commit.
>With Solaris filesystems, data can be stored in the disk cache for up =
to
>20 seconds before being flushed. Does Oracle use some special O/S call =
to
>force the flush? Or does it bypass the O/S disk cache somehow?
As I remember a simple example of flushing OS buffers is fflush(FILE *)
function declared in stdio.h and provided in libc. I don't know, which
function is called in Oracle kernel, but as we see there is a way
to perform OS file buffer flush.
In fact Oracle relies on proper OS library implementation and proper
work of device drivers.
Piotr
--
Piotr Kolodziej pkol_at_otago.gda.pl
Just my private opinion.
Received on Thu Dec 10 1998 - 10:28:07 CST