difference between CURRENT_SCN and CHECKPOINT_CHANGE# in v$database
My understanding is CURRENT_SCN is the most recent SCN (most recent transaction). CHECKPOINT_CHANGE# is the most recent SCN in all the datafiles and controlfile when the most recent CHECKPOINT process executed (CKPT event).
So CURRENT_SCN is > CHECKPOINT_CHANGE# in v$database.
But i am expecting that both these values become equal "at that MOMENT of TIME" when the CKPT event happens. I tried to simulate this by doing a manual "alter system checkpoint". When i do this, both CURRENT_SCN and CHECKPOINT_CHANGE# advances, but i was expecting that only CHECKPOINT_CHANGE# will advance and will become equal to CURRENT_SCN "at that MOMENT of TIME".
But it never happens. Whenever i check (even after a force "alter system checkpoint") CURRENT_SCN and CHECKPOINT_CHANGE# are different.
Can somebody explain ? I did not find enough information from the Oracle documentation pdfs. I scanned the concepts, backup and recovery and admin guides, but nowhere it explains this.
Any answers ??
-Srinivas