I am currently studing for 023 using Sybex and do not get everything about log_checkpoint_interv:
*It says "if the redo log file is 1MB, that is 2000 OS blocks , setting the parameter to 500 will initiate a ckpt when the log file is 1500 blocks full"
I get that : you do (size of the log file -log_checkpoint_interv) and you find where (starting from the beginning of the log file), the chkpt will occur.
* There is question which says :
What does log_checkpoint_interval = 60 means ?
A\ A checkpoint occurs every 60s
B\ A chkpt occcurs after writting 60 blocks.
C\ When instance recovery is required, Orcale need not read more than 60 blocks.
D\ When instance recovery is required, Orcale need not read more than 60 s worth of redo log blocks.
The correct answer is C and I do not get why : I thought ( according to the precedent exemple), that would be 60 OS blocks before the end of the log file. Apart if the log file is 120 OS block, I do not see why the answer C is correct ( apart because the others answers are abviously wrong ).
I did not find to much documentation about this parameter.
Thanks to help me on that.
If there is no solution, it is because there is no problem - Shadok -
There are two parameters: log_checkpoint_interval and log_checkpoint_timeout.
Log_checkpoint_interval is TARGET OS blocks in order for instance/crash recovery.
Log_checkpoint_timeout is TARGET time in order for instance./crash recovery.
Supposed you have 2000 blocks and 1500 blocks are full, which means the checkpoint can fire now, so that only next 500 blocks need to be redo to the datafile in case of recovery, which is what target means. If you have only 1400 full and checkpoint happen, then you need to redo 600 blocks.
But if you ask me whether checkpoint will fire at 500, 1000. That will be excellent question. I guess it will, but I never try it.
This two parameters are retired along with fast_start_io_target in Oracle9i, in favor of fast_start_MTTR_target.
LOG_CHECKPOINT_INTERVAL specifies the frequency of checkpoints in terms of the number of redo log file blocks that can exist between an incremental checkpoint and the last block written to the redo log. This number refers to physical operating system blocks, not database blocks.
Set the initialization parameter LOG_CHECKPOINT_INTERVAL to a value n (where n is an integer) to require that the checkpoint position never follow the most recent redo block by more than n blocks. In other words, at most n redo blocks can exist between the checkpoint position and the last block written to the redo log. In effect, you are limiting the amount of redo blocks that can exist between the checkpoint and the end of the log.
Oracle limits the maximum value of LOG_CHECKPOINT_INTERVAL to 90% of the smallest log to ensure that the checkpoint advances into the current log before that log fills and a log switch is attempted.
LOG_CHECKPOINT_INTERVAL is specified in redo blocks. Redo blocks are the same size as operating system blocks. Use the LOG_FILE_SIZE_REDO_BLKS column in V$INSTANCE_RECOVERY to see the number of redo blocks corresponding to 90% of the size of the smallest log file.
It's not about at the end of log file, rather the last redo block written, since number of blocks cannot be bigger than the value specified by the parameter between actual redo byte address and last incremental checkpoint redo by address, in instance recovery it will read less than the value
Exam technique is as important as technical knowledge when sitting the prometric OCP test.
If you look at this question again and first eliminate the completely wrong answers it will help. So in this case you know that interval implies something to do with blocks so that means both A and D can be eliminated immediately as time is not involved. That means you have already given yourself a 50/50 chance on this question. Next if you think about the idea of an 'interval' in terms of blocks you can also eliminate B.
If you get 10-15 questions like this in the exam and use this technique you should get at least 7-8 correct.
This tip might seem like common sense but quite a few people don't get it.