Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Mailing Lists -> Oracle-L -> DBWn performs batched (multiblock) writes to improve efficiency

DBWn performs batched (multiblock) writes to improve efficiency

From: zhu chao <chao_ping_at_vip.163.com>
Date: Sun, 18 Apr 2004 22:34:53 +0800
Message-ID: <000a01c42552$51825b20$2552fc0a@corp.ebay.com>


>From oracle 9i database concepts manual, I saw note:
In all cases, DBWn performs batched (multiblock) writes to improve efficiency. The number of blocks written in a multiblock write varies by operating system.

link: http://www.cise.ufl.edu/help/database/oracle-docs/server.920/a96524/c09procs.htm

I have difficulty understanding this.

I did several test on my database, no matter datafiles on raw device, or on general ufs/vxfs, I never saw dbwr do batched(multiblock) write.

The following is the result of truss -p dbwr:

datafiles on raw device:

aio(AIOWRITE, 407, 0x3870AA000, 8192, 0xB383800001FF0980) = 0

kaio(AIOWRITE, 407, 0x3830A2000, 8192, 0xB38400000223E458) = 0
kaio(AIOWRITE, 403, 0x38242E000, 8192, 0x3AAD400001FCA8C8) = 0
kaio(AIOWRITE, 407, 0x382A2A000, 8192, 0xB38460000205ABF0) = 0
kaio(AIOWRITE, 403, 0x380EB6000, 8192, 0x3AAE00000202AE80) = 0
kaio(AIOWRITE, 404, 0x385D58000, 8192, 0x0D578000020AF8D0) = 0

datafiles on vxfs filesystem without QuickIO:

pwrite(397, "0602\0\00301AC 0 & C90 ~".., 8192, 0x35860000) = 8192 lwp_mutex_lock(0xFFFFFFFF7DD09EC0) = 0 pwrite(373, "0602\0\016\09D x & C89 V".., 8192, 0x13AF0000) = 8192 pwrite(396, "0602\0\003 CC0DE & C x }".., 8192, 0x781BC000) = 8192

lwp_mutex_wakeup(0xFFFFFFFF7DD09EC0)            = 0
lwp_mutex_wakeup(0xFFFFFFFF7DD09EC0)            = 0
pwrite(399, "0602\0\00281EC ] & BB6F7".., 8192, 0x3D8BA000) = 8192
lwp_mutex_lock(0xFFFFFFFF7DD09EC0)              = 0
pwrite(397, "0602\0\00301ABCD & CC0FF".., 8192, 0x3579A000) = 8192

I trussed many times, I never saw any os call like pwrite(xxx)=16384 etc. Nor have I saw kaio(aiowrite,xxx,xxx,16384,xxx) etc.

Can someone confirm it? Do I misunderstand the manual, or the manual itself is wrong, or simply I did not understand the truss output correctly?

Hope someone can give guidance.

Regards

Zhu Chao.



Please see the official ORACLE-L FAQ: http://www.orafaq.com

To unsubscribe send email to: oracle-l-request_at_freelists.org put 'unsubscribe' in the subject line.
--
Archives are at http://www.freelists.org/archives/oracle-l/
FAQ is at http://www.freelists.org/help/fom-serve/cache/1.html
-----------------------------------------------------------------
Received on Sun Apr 18 2004 - 09:31:20 CDT

Original text of this message

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