Re: db_writer_processes and Async IO ???

From: Jared Still <>
Date: Mon, 17 Aug 2009 10:16:01 -0700
Message-ID: <>

 On Mon, Aug 17, 2009 at 9:39 AM, Jared Still <> wrote:

> On Sat, Aug 15, 2009 at 3:36 PM, dba1 mcc <> wrote:
>> db_writer_processes = 2
>> filesystemio_options = asynch
>> DISK_ASYNCH_IO = true
>> TAPE_ASYNCH_IO = true
>> Based on what I know "db_writer_processes " and "filesystemio_options =
>> asynch" are exclusive. Can anyone tell me database will use whiche one?
> This should help answer your question:
> ps -flu<oracle_owner> | grep dbw.*$ORACLE_SID

After re-reading this I realized it wasn't terrible helpful.

Here's a test I performed:

This is 10gR2 on Linux ES 4

alter system set db_writer_processes=2 scope=spfile;

verify the sync parameters:

NAME                      VALUE

------------------------- --------------------------------------------------
---- ---- ----
disk_asynch_io            TRUE
Y    N    N
tape_asynch_io            TRUE
Y    N    N
filesystemio_options      ASYNCH


restart the database in nomount mode
start a trace on each of the 2 db writer processes

alter database mount
alter database open

logon and create a table:

create table xxx
select * from dba_objects
where 1=0;

insert /*+ append */ into xxx
select * from dba_objects

Now shutdown the database.

Examine the trace files and find lots of io_submit calls Linux man page says that this is an async_io call.

So, it would appear that both multiple db writers and async IO are being used.

One parameter does not preclude the use of the other.

I am sure someone else can give a better explanation of the async IO calls, as I only know what I read in the man page about them

Jared Still
Certifiable Oracle DBA and Part Time Perl Evangelist

Received on Mon Aug 17 2009 - 12:16:01 CDT

Original text of this message