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: Default value for log_buffer parameter

Re: Default value for log_buffer parameter

From: Jonathan Lewis <jonathan_at_jlcomp.demon.co.uk>
Date: Thu, 27 Oct 2005 09:55:29 +0000 (UTC)
Message-ID: <djq86h$7sn$1@nwrdmz02.dmz.ncs.ea.ibs-infra.bt.com>


"David Hollenberg" <dhollen_at_marten.isi.edu> wrote in message news:djop02$142_at_marten.isi.edu...
>
> Using Oracle 10.2.0.1.0 on Solaris 9.
> Value for parameter sga_target = 1G. I let the value for parameter
> log_buffer default.
>
> SQL> show parameter log_buffer
>
> NAME TYPE VALUE
> ------------------------------------ ----------- ------------------------------
> log_buffer integer 6203392
>
> SQL> select name, value, isdefault from v$parameter
> where name = 'log_buffer';
>
> NAME VALUE ISDEFAULT
> -------------------- -------------------- ---------
> log_buffer 6203392 TRUE
>
> Documentation says that redo log buffer size is controlled manually
> (not part of automatic sizing) and has a default value of "512 KB or
> 128 KB * CPU_COUNT, whichever is greater". Machine has 4 CPUs, so log
> buffer size should be 512 KB. Documentation bug or code bug?
>
> --
>
> David Hollenberg dhollen@NOmosisSPAM.org http://www.mosis.org/
> MOSIS Service Voice 310-448-8704
> Information Sciences Institute FAX 310-823-5624

This is probably a documentation error.
There have been a number of changes to the redo log mechanism that have not yet been reflected in all the manuals.

10g automatically allows for parallel redo allocation, using shared and private redo threads. Have a look in v$latch_children for latch 'redo allocation latch', you'll also find a multi-child latch called something like 'undo allocation latch'.

For your system I'll guess that there are 4 more redo allocation latches than undo allocation latches (you have 4 CPUs, so the four extra are the shared redo threads, the rest are private).

If you look in the background_dump_dest, you will probably find that on each startup, lgwr dumps a little trace file which says something about

    largest redo change record
    largest redo change vector

If you multiple "largest redo change record plus a bit" by the number of private latches, then I think you might get an answer close to the log buffer size (possibly out by a factor of 2 or 4 - I'm not sure that the impact of 4 CPUs with their 4 shared threads might have on the way things are counted).

-- 
Regards

Jonathan Lewis

http://www.jlcomp.demon.co.uk/cbo_book/ind_book.html
Cost Based Oracle: Fundamentals
Now available to pre-order.

http://www.jlcomp.demon.co.uk/faq/ind_faq.html
The Co-operative Oracle Users' FAQ

http://www.jlcomp.demon.co.uk/appearances.html
Public Appearances - schedule updated 4th Sept 2005
Received on Thu Oct 27 2005 - 04:55:29 CDT

Original text of this message

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