RE: one hour checkpoints

  • From: Tanel Poder <tanel.poder.003@xxxxxxx>
  • To: kutrovsky.oracle@xxxxxxxxx, ax.mount@xxxxxxxxx
  • Date: Thu, 25 Jan 2007 20:25:09 +0800

Hi,

Oracle relies on incremental checkpoint since 8i. So when a logswitch
happens, Oracle just states it started the checkpoint, while in reality it
just defers all the work to dbwr which works at its own pace.

Depending on number of IO writes and log_checkpoint_* and fast_start_*
parameters the full checkpoints may not finish for quite some time, but it's
not a problem. 

Should your database crash, Oracle reads the checkpoint progress record from
controlfiles (stored there every 3 seconds) and knows to start the recovery
from latest incremental checkpoint RBA, despite the way older checkpoint
progress RBA stored in datafile headers.

Tanel.

 

> -----Original Message-----
> From: oracle-l-bounce@xxxxxxxxxxxxx 
> [mailto:oracle-l-bounce@xxxxxxxxxxxxx] On Behalf Of Christo Kutrovsky
> Sent: Thursday, January 25, 2007 00:17
> To: ax.mount@xxxxxxxxx
> Cc: oracle-l@xxxxxxxxxxxxx
> Subject: Re: one hour checkpoints
> 
> Well, in theory, 600mb of redo log could be 1'228'800 blocks changed.
> That's 629145600 bytes of redo log, with a redo record been 512 bytes.
> 
> That's only an approximation, since you could have merged 
> records, multiple changes in a single record and etc.
> 
> Let's assume a typical IO time of 5 ms. That would be 
> 1228800*5ms = 6'144'000 ms = 6'144 seconds = 1.7 hours.
> 
> So it could've taken 1.7 hours. And that's been optimistic 
> about the 5ms IO. It could've been 10 ms during busy times.
> 
> It's not as bad as it sounds.

--
//www.freelists.org/webpage/oracle-l


Other related posts: