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: multiple dbwr's and deadlock

Re: multiple dbwr's and deadlock

From: Anjo Kolk <k.kolk_at_chello.nl>
Date: Tue, 08 May 2001 18:54:40 GMT
Message-ID: <3AF841CA.79643C6D@chello.nl>

James,

db writer processes have in principle nothing to do with CPU's (they spend more time waiting for an write to complete than that it takes CPU). So take 2-4 per disk.

Anjo.

James Mu wrote:

> Hi,
> I have some questions about Anjo's post. I think there is a basic
> principal that is db_writer_processes should equal or less than the number
> of the cpus. And if your system support AIO, maybe this problem will be some
> relief.
>
> James
> Anjo Kolk <k.kolk_at_chello.nl> wrote in message
> news:3AF79C25.1EAE31E_at_chello.nl...
> >
> > Here is the problem that you *could* be facing:
> >
> > 1) multiple insert process make buffers dirty in a rate that is higher
 than the
> > DBWR(s) can write out
> > 2) at some stage the insert processes will wait on the DBWR(s).
> > 3) such a wait will most likely be in the middle of an insert when you are
> > holding other resources (memory and enqueues)
> > 4) increase the number of DBWR(s) and you problems could go away (assuming
 that
> > you have locking problems because of this).
> >
> > Infact I just had the same scenario at a customer site. They complained
 about
> > 'hanging locks' (some process would hold on too locks for a long time and
> > others would wait very long). So they assumed a locking problem. The
 locking
> > problem in their case was a symptom of not having enough DBWRs.
> >
> > So what to do in your case:
> >
> > 1) db_block_lru_latches = 4-8
> > 2) db_writers = 16 or even higher
> > 3) _db_block_write_batch = <something decent, less than (db_files *
> > db_file_multi_block_read_count)/2).
> >
> > Anjo.
> >
> >
> > James Mu wrote:
> >
> > > hi,
> > > You ask a big question. To let it some clear, I think you should
 record
> > > the ora number, then go to metalink to query some info.
> > > James
> > >
> > > Maurice Samuels <samuels_at_red.seas.upenn.edu> wrote in message
> > > news:9crsph$o3r$1_at_netnews.upenn.edu...
> > > > hi,
> > > > recently i turned on multiple dbwr's (4) and increased the
 db_block_lru_latches (24) on an 8-CPU Sun 5500
> > > > server with 8G of memory (oracle 8.0.x). a few times when i've tried
 to
 run 5 insert /*+append ..
> > > > operations, i get
> > > > deadlock messages written to the alert.log and some of the operations
 outright fail. but i have no problems
> > > > running 4 of those types of operations at a time (is this related to
 how
 many writer's there are).
> > > > had anyone ever run into anything like this?
> > > > what performance views should i be watching to see how oracle is
 managing
 the buffer cache and locks?
> > > > can anyone point to a good book on the topic of multiple dbwr's and
 locks?
> > > > the oracle documentation regarding the multiple dbwr's is a bit
 confusing
 on this topic.
> > > > thanks in advance
> > > > -maurice
> > > > samuels_at_seas.upenn.edu
> >
> >
> >
> >
> >
  Received on Tue May 08 2001 - 13:54:40 CDT

Original text of this message

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