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: qio, async_io and control files

Re: qio, async_io and control files

From: NetComrade <andreyNSPAM_at_bookexchange.net>
Date: Tue, 15 Jul 2003 21:21:21 GMT
Message-ID: <3f146f30.699654369@nyc.news.speakeasy.net>


unfortunately the lsof command didn't work.. but i'll read the man page for it..
I did get some feedback on other calls, i'll let the NG know when (and if) i find anything.

lwp calls are in the man pages, with a leading "_".

man _lwp_cond_signal _lwp_cond_wait

The kaio() syscall has no public interface, you have to use the aioXXXX lib
fonctions wrappers instead.

>From /usr/include/sys/syscall.h :

#define SYS_kaio                178
        /*
         * subcodes:
         *      aioread(...)    :: kaio(AIOREAD, ...)
         *      aiowrite(...)   :: kaio(AIOWRITE, ...)
         *      aiowait(...)    :: kaio(AIOWAIT, ...)
         *      aiocancel(...)  :: kaio(AIOCANCEL, ...)
         *      aionotify()     :: kaio(AIONOTIFY)
         *      aioinit()       :: kaio(AIOINIT)
         *      aiostart()      :: kaio(AIOSTART)
         *      see <sys/aio.h>
         */

So : "man libaio" or "man aioread".

On 15 Jul 2003 12:37:59 -0700, yong321_at_yahoo.com (Yong Huang) wrote:

>andreyNSPAM_at_bookexchange.net (NetComrade) wrote in message news:<3f12eb82.600408281_at_nyc.news.speakeasy.net>...
>>
>> We use the qio product, and all data files are qio.
>> trussing ora_<SID>_dbwr shows that most calls success as successful
>> kaio calls (asyc_io is set to true)
>> However, trussing ora_<SID>_ckpt shows that kaio calls fail 3 times in
>> a row to different files, since there are 3 such calls and I have 3
>> control files and control files are not qio files, I assume it's for
>> control files (if anybody can teach me how to read parameters of kaio
>> calls, i'd be very happy!)
>...
>>
>>
>> kaio(AIOWRITE, 299, 0x01A69EA0, 4096, 12288, 0x01A67EA8) Err#48
>> ENOTSUP
>> lwp_cond_signal(0xFEB21FA0) = 0
>> lwp_cond_wait(0xFEB21FA0, 0xFEB21FB0, 0x00000000) = 0
>> kaio(AIOWRITE, 298, 0x01A69EA0, 4096, 12288, 0x01A67DCC) Err#48
>> ENOTSUP
>> pwrite64(299, "1502\0\0\0\0\003\001 ]84".., 4096, 12288) = 4096
>> lwp_cond_signal(0xFEB0FFA0) = 0
>> lwp_cond_wait(0xFEB0FFA0, 0xFEB0FFB0, 0x00000000) = 0
>> kaio(AIOWRITE, 297, 0x01A69EA0, 4096, 12288, 0x01A680F4) Err#48
>> ENOTSUP
>> pwrite64(298, "1502\0\0\0\0\003\001 ]84".., 4096, 12288) = 4096
>>
>> .......
>> We use Oracle 8.1.7.4 on Solaris 2.7 boxes
>
>Hi, NetComrade,
>
>I can't answer other questions. But you don't have to guess about the
>file. lsof (freeware from sunfreeware.com) can tell you what file a
>process is processing on. Your truss output tells you the file
>descriptors 299 and 298. Then lsof -p <pid> -a -d 298,299 shows the
>file path.
>
>The kaio system call is not documented. The arguments are operation
>type, file descriptor, pointer to the buffer where read data will be
>placed or data to be written is placed, read or write buffer size,
>offset where read or write begins. The last argument has something to
>do with read or write result. Not quite sure.
>
>Yong Huang

.......
We use Oracle 8.1.7.4 on Solaris 2.7 boxes remove NSPAM to email Received on Tue Jul 15 2003 - 16:21:21 CDT

Original text of this message

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