You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by Rick Hillegas <ri...@oracle.com> on 2011/05/02 17:58:06 UTC

truncating a table vs online backup

According to the Admin Guide, uncommitted unlogged operations prevent 
you from starting an online backup. These unlogged operations include 
index creation and bulk import.

An uncommitted TRUNCATE TABLE does not block online backup. Is that OK?

Thanks,
-Rick

Re: truncating a table vs online backup

Posted by Rick Hillegas <ri...@oracle.com>.
On 5/2/11 2:20 PM, Mike Matrigali wrote:
> o uncommitted truncate table followed by online backup and then access 
> the backup copy and access the table.  should see the old data.
> o uncommitred truncate table, followed by online backup that keeps logs,
>   then commit the truncate, and then access the table in the backup.
Thanks, Mike. I  have logged DERBY-5213 to track this issue.

Thanks,
-Rick

Re: truncating a table vs online backup

Posted by Mike Matrigali <mi...@sbcglobal.net>.
Rick Hillegas wrote:
> According to the Admin Guide, uncommitted unlogged operations prevent 
> you from starting an online backup. These unlogged operations include 
> index creation and bulk import.
> 
> An uncommitted TRUNCATE TABLE does not block online backup. Is that OK?
> 
> Thanks,
> -Rick
> 
I think it would be all right as the problem part of index creation and
bulk inport is the "insert" part of the operations not being logged.  In
all cases I believe the ddl/system catalog parts are logged. The 
"delete" part of truncate in this case can sort of be thought of as 
logged in that we save an old copy of the table so that the backout of
the uncommitted truncate can restore the table.

Logically truncate table should act as a drop table followed by a create
table.  These operations should be ok.

But would be best to confirm with a test.  Should at least log a JIRA
to add tests for at least the following:
o uncommitted truncate table followed by online backup and then access 
the backup copy and access the table.  should see the old data.
o uncommitred truncate table, followed by online backup that keeps logs,
   then commit the truncate, and then access the table in the backup.