Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.server -> Re: Forcedirectio In Solaris
EnderW wrote:
>
> One thing I couldnot understand is why it is not correct for large
> table full scans ? Doesnot Oracle buffer anyhow ? Why should we not
> turn on forcedirectio option for such tablespaces ? After all we don't
> need kernel buffering, do we ? Thanks
>
> In article <8smmj3$m4q$1_at_news.syseca.fr>,
> Philippe.Michel_at_syseca.thomson-csf.com (Philippe Michel) wrote:
> > In article <8slefp$qnd$1_at_nnrp1.deja.com>, EnderW <ender29_at_my-
deja.com> wrote:
> > >Hi,
> > > Quick question about mounting a ufs with forcedirectio option... I
> > >would always think this should be on when the fs contains Oracle
> > >datafiles. Is that true ? Thanks
> >
> > IMHO it is almost always true. A possible exception may be tablespaces
> > containing tables of reasonable size, accessed via full scans fairly
often,
> > but not explicitly cached.
> >
> > My experience with Solaris' directio is that :
> > - using it for online redo logs is a must ; log file write waits
> > (from v$system_event) are considerably decreased.
> > - db file write waits decrease is less obvious, but using it on
> > datafiles frees plenty of memory for a better use.
> > - you don't need to mount filesystems with forcedirectio option, you
> > may prefer to set directio on individual files with something like :
> >
> > #include <sys/types.h>
> > #include <sys/fcntl.h>
> > #include <errno.h>
> >
> > int main(int argc, char *argv[])
> > {
> > extern int errno;
> > int fd;
> >
> > errno = 0;
> >
> > if ((fd = open(argv[1], O_RDWR)) < 0)
> > perror("open"), exit(1);
> >
> > if (directio(fd, DIRECTIO_ON))
> > perror("directio"), exit(2);
> >
> > return 0;
> > }
> >
> > Moreover, this kind of program (and another with DIRECTIO_OFF) can be
used
> > to experiment more easily than mounting filesystems with varying
options.
> >
>
> --
> Ender Wiggin
>
> Sent via Deja.com http://www.deja.com/
> Before you buy.
I agree - unless the sga is badly undersized, I've yet to see any benefit from not using directio on all database files...
HTH
-- =========================================== Connor McDonald http://www.oracledba.co.uk (mirrored at http://www.oradba.freeserve.co.uk) "Early to bed and early to rise, makes a man healthy, wealthy and wise." - some dead guyReceived on Fri Oct 20 2000 - 05:13:07 CDT
![]() |
![]() |