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

  • From: "Mark W. Farnham" <mwf@xxxxxxxx>
  • To: <tanel@xxxxxxxxxxxxxx>, <yparesh@xxxxxxxxx>, "'Oracle-L Freelists'" <oracle-l@xxxxxxxxxxxxx>
  • Date: Thu, 7 Jul 2011 11:25:09 -0400

I added my comments on Tanel's blog.

 

From: oracle-l-bounce@xxxxxxxxxxxxx [mailto:oracle-l-bounce@xxxxxxxxxxxxx]
On Behalf Of Tanel Poder
Sent: Wednesday, July 06, 2011 4:59 AM
To: yparesh@xxxxxxxxx; Oracle-L Freelists
Subject: Re: What is the purpose of segment level checkpoint before
DROP/TRUNCATE of a table?

 

I started writing a reply here, but thought others would benefit from it as
well, so turned the answer into a blog entry:

 

http://blog.tanelpoder.com/2011/07/06/what-is-the-purpose-of-segment-level-c
heckpoint-before-droptruncate-of-a-table/

 

This is just my reasoning, there may be other, more fundmental reasons
behind it.

 

--

Tanel Poder

http://blog.tanelpoder.com

 

 

On Wed, Jul 6, 2011 at 4:30 AM, Paresh Yadav <yparesh@xxxxxxxxx> wrote:

Hi,


What is the purpose of segment level checkpoint before DROP/TRUNCATE of a
table? I have tried to find this since quite some time, Only thing I have
found is that it is required for recoverability, specifically point in time
recovery amongst many other things.  I have read about it on so many sites
(as far as I remember Jonathan Lewis, Tom Kyte etc.). I recently saw an
awesome article on check points by Harald Van Breederode titled  "What's the
Point of  Oracle Checkpoints?". How does it help in recoverability? I
thought about point-in-time recovery. All the information to recover dirty
buffers for committed transactions should be in the redo stream (redo log
and/or archived log) so why do a checkpoint at the object level before
truncat//drop? Is it to shorten MTTR etc.? An explanation will be very much
appreciated. Any pointers to other resources that I can read in this matter?

--
Thanks
Paresh
416-688-1003

 

Other related posts: