Re: What is the purpose of segment level checkpoint before DROP/TRUNCATE of a table?

  • From: Saibabu Devabhaktuni <saibabu_d@xxxxxxxxx>
  • To: free <oracle-l@xxxxxxxxxxxxx>
  • Date: Wed, 6 Jul 2011 10:04:02 -0700 (PDT)

Here are the reasons I think why object level checkpoint is needed for Truncate 
or Drop operation:

1) Datafiles on primary and standby need to be same bit by bit and block by 
block. This is fundamentally required  for Oracle physical standby and physical 
backups. This will be broken if object level checkpoint wasn't done.

2) Database level flashback can logically corrupt the data, when flashback 
database command is used,  if thread level checkpoint wasn't done as part of 
Truncate or Drop operation.

Marking buffers as invalid for writes is only done in Active DataGuard 
environment on physical standby databases in some situations.

Hope it helps.

Thanks,
 Sai
http://sai-oracle.blogspot.com

Other related posts: