Jeff,
I was staying out of this thread for a while, just due to other
commitments, but since you mentioned by name, I think I am
obligated at least to corroborate what you have said.
The issue I have personally faced with async_io is that in the
Oracle realm, until recently where the sun patchset was put out,
it flat was not working. Exactly what you said, the pwrite fails
3 times(I think...haven't had much sleep lately) for every write
call when it tries async writes. It then throws the towel in and
the follows it up, with a normal write.
I have seen this occur over multiple versions of Solaris (2.4 -
2.8) and Oracle (7.3.2 - 8.1.6). In that case, setting multiple
dbwr processes or dbwr io slaves works significantly better, as
the I/O sub-system was not stressed by these 3 failed writes for
every write call from Oracle. Of course on some versions of
Oracle on some platforms, setting multiple dbwr causes datafile
corruption, so one needs to do one's 'homework' before
implementing this.
While at OOW I had a discussion with Richard McDugall (who wrote
the 'Getting to know the Solaris Filesystem' articles) and he
said that the new patchset should fix the problem. I have
personally not tested it as yet, but if it does fix it, then
great. If someone can test that, even better. Basically
'trussing' the DBWR process should open the covers and show what
is happening.
If not we still can go back to using multiple dbwr or dbwr io
slaves. Another note, the issue is less relevant, if you use
Quick I/O or Direct I/O with Veritas's Database Edition for
Oracle. This is because Quick I/O or Direct I/O can and will
provide you comparable performance as async_io, when implemented
correctly.
Cheers,
Gaja
- Jeffery Stevenson <jeff_at_mpv.com> wrote:
> Solaris does seem to support AIO in a bastardized
> manner...I've been doing
> some research on it at home (which is where I have a bunch of
> links to
> articles that discuss it). Basically, the kaio system call
> gets posted and
> on a raw system works fine...on a cooked system it generates
> the same error
> message a few times. Digging a little deeper on this (after
> reading through
> an article on the subject...I'll have to post that to the list
> tonight), I
> noticed that each error created a new light-weight process
> thread that
> started doing other work. These lwp threads would each run
> their course and
> then generate a normal write system call (pwrite64 in the more
> recent
> versions of Solaris). If you take a look at the system calls
> from the DBW0
> process, it just looks like the asynchronous I/O call (kaio)
> is just failing
> and then reverting to normal writes, but if you look at the
> lwp level, you
> can see that each one of these is being handled by multiple
> lwps. It is
> essentially a "mock" asynchronous I/O, and it's probably not
> as efficient as
> creating multiple DB writers like Gaja suggests, but it does
> seem to work.
> I'll try to send the article out to the list later on if
> anyone is
> interested. It is basically a Sun article that explains in
> more detail how
> this mock AIO works. Just some more stuff to think about...
>
> Jeffery Stevenson
> Chief Database Geek
> Medical Present Value, Inc.
> Austin, TX
>
> -----Original Message-----
> Sent: Monday, November 13, 2000 9:50 AM
> To: Multiple recipients of list ORACLE-L
>
>
> It is supported for raw devices and Quick I/O Veritas files.
>
> -----Original Message-----
> Sent: Friday, November 10, 2000 5:26 PM
> To: Multiple recipients of list ORACLE-L
>
>
> Jared,
>
> Do you mean it works pretty bad or it is not supported on
> Solaris? Does it
> work on Solaris at all?
>
> Thank you,
> Michael
> www.atelo.com
>
> ----- Original Message -----
> To: "Multiple recipients of list ORACLE-L"
> <ORACLE-L_at_fatcity.com>
> Sent: Friday, November 10, 2000 16:39
>
>
> > On Fri, 10 Nov 2000, Bill Conner wrote:
> >
> > > At 11:30 AM 11/10/00 -0800, you wrote:
> > > >The default for disk_async_io is true.
> > > >
> > > >Either async i/o is support or not. T'ain't supported on
> > > >Solaris unless you have raw devices.
> > >
> > > This is news, solaris used to support async i/o on cooked
> > > devices when did this change?
> >
> > Well, it's never actually worked on cooked filesystems.
> >
> > Jared
> >
> > --
> > Please see the official ORACLE-L FAQ: http://www.orafaq.com
> > --
> > Author: Jared Still
> > INET: jkstill_at_bcbso.com
> >
> > Fat City Network Services -- (858) 538-5051 FAX: (858)
> 538-5051
> > San Diego, California -- Public Internet access /
> Mailing Lists
> >
>
> > 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).
>
> --
> Please see the official ORACLE-L FAQ: http://www.orafaq.com
> --
> Author: Michael Netrusov
> INET: mn_at_g-fax.com
>
> Fat City Network Services -- (858) 538-5051 FAX: (858)
> 538-5051
> San Diego, California -- Public Internet access /
> Mailing Lists
>
> 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).
> --
> Please see the official ORACLE-L FAQ: http://www.orafaq.com
> --
> Author: Gogala, Mladen
> INET: MGogala_at_oxhp.com
>
> Fat City Network Services -- (858) 538-5051 FAX: (858)
> 538-5051
> San Diego, California -- Public Internet access /
> Mailing Lists
>
> 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).
> --
> Please see the official ORACLE-L FAQ: http://www.orafaq.com
> --
> Author: Jeffery Stevenson
> INET: jeff_at_mpv.com
>
> Fat City Network Services -- (858) 538-5051 FAX: (858)
> 538-5051
> San Diego, California -- Public Internet access /
> Mailing Lists
>
> 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).
Gaja Krishna Vaidyanatha
Director, Storage Management Products, Quest Software Inc.
Office : (972)-304-1170, E-mail : gajav_at_yahoo.com
Author - Oracle Tuning 101 by Osborne McGraw-Hill
Received on Wed Nov 15 2000 - 12:25:45 CST