Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: Forcedirectio In Solaris

Re: Forcedirectio In Solaris

From: Connor McDonald <connor_mcdonald_at_yahoo.com>
Date: Fri, 20 Oct 2000 18:13:07 +0800
Message-ID: <39F01AB3.6377@yahoo.com>

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 guy
Received on Fri Oct 20 2000 - 05:13:07 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US