-
Direct IO on solaris 10 with VxFS
Hi,
Does any one know or is there any way to find out if my database is using direct I/O on Veritas File system from oracle database. File system is already mounted with direct IO option and filesystemio_options is set to setall.
I followed this metalink document : 555607.1, i got the truss output which has no meaning to it( even as per oracle support could not help on it)
here is the ouput i got.
=====================================================
21919/1: ioctl(326, 0x0403, 0xFFFFFFFF7FFFD04C) Err#25 ENOTTY
The last column supposed to be either 0 or 1 , but i got different results. so that document i followed seems to not useful.
Any help on this greatly appreciated.
Thanks
CSReddy
-
Hi
For direct IO veritas has something called quickio on thier VsFs filesystem.
It involves creating a datafile with . and then making oracle use that.
You need to ask your sys admins if quickio is liscensed in your shop and only then you can use directIo.
google for veritas quick io.
http://seer.entsupport.symantec.com/docs/238079.htm
regards
Hrishy
-
Thanks for the update !!!
But unfortunatly we don't have quick IO licence on this server and its not enable. but we mounted this file system with convosync=direct option. and to our surprise all our dbs are much faster now. but we still don't know if dbs are using direct IO or not and if this is the reason why its faster now.
Thanks
CSReddy
-
Hi
Are you using VxFS filesystem or Solaris UFS ?
regards
Hrishy
-
I am using VxFS, here is mount output for that FS.
/local/oracle/oradata on /dev/vx/dsk/oradg/ORACLE_DATA read/write/setuid/devices/convosync=direct/delaylog/largefiles/ioerror=mwdisable/dev=46ca029 on Sun Feb 15 07:52:49 2009
Thanks
CSReddy
-
here is the output from /etc/fstab for this FS.
/dev/vx/dsk/oradg/ORACLE_DATA /dev/vx/rdsk/oradg/ORACLE_DATA /local/oracle/oradata vxfs 3 yes convosync=direct
Thanks
CSReddy
-
-
Thanks for the doc..
my question was not answered in that doc as its only talks about Performance tuning of VxFS; what i need is to find out if oracle database is using direct I/O even though FS is mounted in direct IO.
thanks
CSReddy
-
My understanding is, if you do not use Direct I/O, OS issues READ() system calls, as
12056: times(0xFFFFFFFF7FFFB610) = 1400029210
12056: write(12, "01F2\0\006\0\0\0\0\01017".., 498) = 498
12056: read(9, "\015\0\006\0\0\0\0\00305".., 2064) = 2112056: times(0xFFFFFFFF7FFFB860) = 1400029210
12056: times(0xFFFFFFFF7FFFB000) = 1400029210
12056: times(0xFFFFFFFF7FFFB000) = 1400029210
But when OS uses Direct I/O calls thru DIRECTIO() system calls instead of READ().
You may read more at
http://docs.sun.com/app/docs/doc/816...ctio-3c?a=view
Well, what options you used foir truss...? I used,
$ truss -aefp ==> try various PIDs - DBWR, LWR and a server process.
There is one parameter "_DB_FILE_DIRECT_IO_COUNT" (8 and above. in Oracle7, it was _DIRECT_IO=TRUE)and according to oracle (documented 8 when it was not hidden), it uses only for certain operations like backups, restore, parallel query execution and large sort or joins. In that case you need to trace a server process created by RMAN for backup or restore. How ever, Direct I/O on file systems is "Synchornus". Anyway, I am yet to do more research on this.
Note 1: If possible, please paste some of the truss output containing READ()/WRITE()/DIRECTIO() calls. Many Thanks.
Note 2: VxFS Quick I/O is based KAIO ( Kernalised Asychonous I/O), KAIO eliminates the AIO API calls, and incorporating the I/O services to the kernal itself - I think that is different story? Again kaio() and aioread() are the respective system calls for KAIO and AIO, different from directio().
-
very useful peice of info @ thomas, thanks for the link.
Rgds
Abhay.
funky...
"I Dont Want To Follow A Path, I would Rather Go Where There Is No Path And Leave A Trail."
"Ego is the worst thing many have, try to overcome it & you will be the best, if not good, person on this earth"
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|