I'm trying to figure out how incremental checkpoints work.
As far as I got it:
In case of full checkpoint all data is flushed to datafiles.
Then controlfiles, all datafiles and the redolog is updated with the current scn.
In case of incremental checkpoint only the oldest data is flushed to disk.
Controlfile and Readolog is updated with scn - but the headers of the updated datafiles are keep unchanged.
This faster as no change in datafile headers have to be applied. So far, so good.
However, what in case of crash recovery?
Lets say the SCN written by checkpoint is set to 5000.
In cases of full checkpoint, the header of the datafile will state 5000 as start of recovery.
However in case of inc checkpoint in redo there will be the SCN 5000, in the datafile headers various other, lower SCNs.
So each of them has to be checked and recovered - but incremental checkpointing should decrease the time needed to restore?
Thx
Christian
edit:
I found this one:
http://www.vldb.org/conf/1998/p665.pdf
I gues that the information about the RBA redo byte address in the control file is enough to find out at which point to start the recovery process, right?
The recover process will "jump into redo" at the adress and start its work?