Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Mailing Lists -> Oracle-L -> Re: RAC on OCFS2 acceptance testing
Mladen,
Interesting post, thank you for the info. I've got a question though about one of your statements:
>> Neither OCFS nor OCFS2 support asynchronous I/O.
>> They both allow only direct I/O. By attempting
>> to use asynchronous I/O, you may crash your
>> system or your database.
>> That is well documented on the OCFS site.
Do you happen to have the link? I can't find this statement on http://oss.oracle.com/projects/ocfs2. Not via google, not by browsing the docs directly. Metalink on the other hand in the note 279069.1 "Compatibility Matrix: Linux, Filesystem & I/O Type" appears to state (at least on our SLES 9, update 3 box hosting Oracle 10.2.0.2 on OCFS2) that OCFS2 is quite asynch I/O-capable.
Simple test of "creating a tablespace with datafile residing on OCFS2" shows that while slabinfo kio counters don't change that much, DBW0 trace clearly shows io_submit(2)/io_getevents(2) pair:
stat64("/u02/.../t1.dbf", {st_mode=S_IFREG|0640,
st_size=5251072, ...}) = 0
open("/u02/.../t1.dbf", O_RDONLY|O_DIRECT|O_LARGEFILE)
= 30
fstatfs(30, {f_type=0xa156f7eb, f_bsize=4096,
f_blocks=3556608, f_bfree=787360, f_bavail=787360, f_files=111144, f_ffree=24605, f_fsid={0, 0}, f_namelen=255, f_frsize=4096}) = 0 close(30) = 0open("/u02/.../t1.dbf",
io_submit(0x40fe9000, 0x1, 0xbfffc6a4) = 1 io_getevents(0x40fe9000, 0x1, 0x1, 0xbfffc67c, 0xbfffc69c) = 1
fcntl64(30, F_GETFL) = 0xd002(flags O_RDWR|O_SYNC|O_DIRECT|O_LARGEFILE) fcntl64(30, F_SETLK64, {type=F_RDLCK, whence=SEEK_SET, start=0, len=0}, 0xbfffc6d4) = 0
Isn't it a good indication that asynch i/o is used successfully on OCFS2 ?
>> Mladen Gogala
>> http://www.mladen-gogala.com
Thanks,
Boris Dali.
-- http://www.freelists.org/webpage/oracle-lReceived on Wed Jan 03 2007 - 10:36:20 CST
![]() |
![]() |