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: log_checkpoint_timeout : what is exactly the meaning ?

Re: log_checkpoint_timeout : what is exactly the meaning ?

From: Jonathan Lewis <jonathan_at_jlcomp.demon.co.uk>
Date: Fri, 31 May 2002 10:03:15 +0100
Message-ID: <1022835785.7919.0.nnrp-10.9e984b29@news.demon.co.uk>

Richard,
Thanks for the correction. I think in future I'll avoid making any comments about Oracle behaviour when I've just spent 22 hours on a plane.

Vigi98,
The choice of FIRST is deliberate and correct. Looking at it another way around - when you first change a data block it goes onto a 'checkpoint queue' waiting to be written to disc. This queue is a linked list of buffer headers, protected by a latch. Once a buffer header is in the list, its position is not changed regardless of how many times the content of the block change. Setting the checkpoint timeout to 900 seconds ensures that the length of the queue is never allowed to get too long - any block that joined the queue more than 900 seconds ago will have been written back to disc.

Alternatively - if I look for a piece of the redo log that I generated over 900 seconds ago, then the block that I applied it to has definitely been written to disc at some time in the interim.

--
Jonathan Lewis
http://www.jlcomp.demon.co.uk

Author of:
Practical Oracle 8i: Building Efficient Databases

Next Seminar - Australia - July/August
http://www.jlcomp.demon.co.uk/seminar.html

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



Vigi98 wrote in message <3cf73625$0$247$626a54ce_at_news.free.fr>...

>
>"Richard Foote" <richard.foote_at_bigpond.com> wrote in message
>news:%6EJ8.1685$Hj3.5395_at_newsfeeds.bigpond.com...
>> Just a slight clarification to Jonathan's post.
>>
>> "... you are telling Oracle (not) to ensure that no block may remain
>> unwritten if its first change occurred more than 900 seconds ago" (Note
>the
>> elimination of the "(not)" after Oracle correctly changes the meaning of
>the
>> sentence)
>>
>> Cheers
>>
>> Richard
>
>Thanks for that precision, but the sentence remains unclear for me. Isn't
it
>"you are telling Oracle to ensure that no block may remain unwritten if its
>LAST change occurred more than 900 seconds ago" ?
>
>
>>
>> "Jonathan Lewis" <jonathan_at_jlcomp.demon.co.uk> wrote in message
>> news:1022789937.15172.0.nnrp-12.9e984b29_at_news.demon.co.uk...
>> >
>> > The answer depends on your version of Oracle.
>> > Recently the meaning has changed - Oracle uses
>> > an incremental checkpoint strategy to ensure that
>> > the I/O subsystem is not flooded so ferociously at
>> > end of log file. The log_checkpoint_interval and
>> > log_checkpoint_timeout had their implementation
>> > changed so that they act as lag events, rather
>> > than triggering a checkpoint.
>> >
>> > For log_checkpoint_timeout=900, you are telling
>> > Oracle not to ensure that no block may remain
>> > unwritten if its first change occurred more than
>> > 900 seconds ago.
>> >
>> >
>> > --
>> > Jonathan Lewis
>> > http://www.jlcomp.demon.co.uk
>> >
>> > Author of:
>> > Practical Oracle 8i: Building Efficient Databases
>> >
>> > Next Seminar - Australia - July/August
>> > http://www.jlcomp.demon.co.uk/seminar.html
>> >
>> > Host to The Co-Operative Oracle Users' FAQ
>> > http://www.jlcomp.demon.co.uk/faq/ind_faq.html
>> >
>> >
>> >
>> > vigi98 wrote in message ...
>> > >Hi all,
>> > >
>> > >In my init.ora, the only two parameters about checkpoints are the
>> > >following :
>> > >
>> > >log_checkpoint_timeout = 900
>> > >log_checkpoints_to_alert=true
>> > >
>> > >Shouldn't I observe in the alert file the beginning of a new
>> > >checkpoint every 15 minutes ? Apparently checkpoints behave as if I
>> > >had not set the log_checkpoint_timeout, i.e. checkpoints are launched
>> > >only when a redo log switch occurs. As my redo logs are 200Mb wide,
>> > >there can be a very long time before a redo log switch occurs, in case
>> > >of low traffic on the database.
>> > >
>> > >Have I misunderstood the signification of this parameter (I mean
>> > >log_checkpoint_timeout ) ?
>> > >
>> > >Thanks in advance.
>> >
>> >
>>
>>
>
>
Received on Fri May 31 2002 - 04:03:15 CDT

Original text of this message

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