Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Mailing Lists -> Oracle-L -> Re: Asynch IO and truss question
<html><DIV>
<P><BR><BR></P>
<DIV></DIV>
<P>ave u enabled quick i/o on the files u want to monitor</P></DIV>
<P>can u please let me know as to how u have enabled the quick i/o</P>
<DIV></DIV>
<P>looks like it is not enabled.</P>
<DIV></DIV>
<P>there are two ways to enable the quick i/o</P>
<DIV></DIV>
<P>first enable the filesystem as quick i/o</P>
<DIV></DIV>
<P>2nd create quick i/o file and then create the datafile based on that name.</P>
<DIV></DIV>
<P>or if u have already have a datafile and if u want to enable quick i/o on that then u will have to offline that particular file and then enable quick i/o on it</P>
<DIV></DIV>
<P>the syntax goes like the below for datafiles</P>
<DIV></DIV>
<P>qiomkfile -h 8k -s 100M name_of_the_file</P>
<DIV></DIV>
<P>the above command creates 2 files one is a .(dot)file and another a link which is linked to this .(dot)file</P>
<DIV></DIV>
<P>or if u have already a datafile and u want to enable this as a quick i/o file</P>
<DIV></DIV>
<P>first bring it offline</P>
<DIV></DIV>
<P>mv datafile .datafile(ie dotdatafile there is a dot prior to the filename)</P>
<DIV></DIV>
<P>then create a link on that datafile</P>
<DIV></DIV>
<P>the scene goes as below</P>
<DIV></DIV>
<P>mv log1blink.ora .log1blink.ora</P>
<DIV></DIV>
<P>ln -s log1blink.ora .log1blink.ora</P>
<DIV></DIV>
<P>once this is done bring that file online and voila</P>
<DIV></DIV>
<P>see the quick i/o working</P>
<DIV></DIV>
<P>if u feel it is not working right then</P>
<DIV></DIV>
<P>make that file offline rm the link and rename the .file as a normal file.</P>
<DIV></DIV>
<P>Below is the truss on one of my logwriter which is showing that aio write is going on</P>
<DIV></DIV>
<P> </P>
<DIV></DIV>
<P>994/1: sigprocmask(SIG_BLOCK, 0xEFFFE740, 0x00000000) = 0<BR>994/1: times(0xEFFFE670) = 15661119<BR>994/1: setitimer(ITIMER_REAL, 0xEFFFE670, 0x00000000) = 0<BR>994/1: sigprocmask(SIG_UNBLOCK, 0xEFFFE6E0, 0x00000000) = 0<BR>994/1: semop(131072, 0xEFFFE748, 1) = 0<BR>994/1: sigprocmask(SIG_BLOCK, 0xEFFFE740, 0x00000000) = 0<BR>994/1: !
setitimer(ITIMER_REAL, 0xEFFFE670, 0x00000000) = 0<BR>994/1: sigprocmask(SIG_UNBLOCK, 0xEFFFE710, 0x00000000) = 0<BR>994/1: kaio(AIOWRITE, 306, 0xA7918000, 512, 0x038BE400, 0x01082DE4) = 0<BR>994/1: kaio(AIOWAIT, 0xEFFFE328) = 17313252<BR>994/1: semctl(131072, 232, 8, 1) = 0<BR>994/1: getcontext(0xEFFFE590)<BR>994/1: sigprocmask(SIG_BLOCK, 0xEFFFE740, 0x0000! 0000) = 0<BR>994/1: times(0xEFFFE670) = 15661121<BR>994/1: setitimer(ITIMER_REAL, 0xEFFFE670, 0x00000000) = 0<BR>994/1: sigprocmask(SIG_UNBLOCK, 0xEFFFE6E0, 0x00000000) = 0<BR>994/1: semop(131072, 0xEFFFE748, 1) = 0<BR>994/1: sigprocmask(SIG_BLOCK, 0xEFFFE740, 0x00000000) = 0<BR>994/1: setitimer(ITIMER_REAL, 0xEFFFE670, 0x00000000) = 0<BR>994/1:&n! bsp; sigprocmask(SIG_UNBLOCK, 0xEFFFE710, 0x00000000) = 0<BR>994/1: kaio(AIOWRITE, 306, 0xA7918200, 9216, 0x038BE600, 0x01082D50) = 0<BR>994/1: kaio(AIOWAIT, 0xEFFFE328) = 17313104<BR>994/1: semctl(131072, 214, 8, 1) = 0<BR>994/1: getcontext(0xEFFFE590)<BR>994/1: sigprocmask(SIG_BLOCK, 0xEFFFE740, 0x00000000) = 0<BR>994/1: times(0xEFFFE670) &!nbsp; = 15661135<BR>994/1: setitimer(ITIMER_REAL, 0xEFFFE670, 0x00000000) = 0<BR>994/1: sigprocmask(SIG_UNBLOCK, 0xEFFFE6E0, 0x00000000) = 0<BR><BR></P>
![]() |
![]() |