db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Suresh Thalamati (JIRA)" <derby-...@db.apache.org>
Subject [jira] Updated: (DERBY-239) Need a online backup feature that does not block update operations when online backup is in progress.
Date Tue, 15 Nov 2005 02:51:29 GMT
     [ http://issues.apache.org/jira/browse/DERBY-239?page=all ]

Suresh Thalamati updated DERBY-239:

    Attachment: onlinebackup_3.diff

This patch adds code to support real-time online backup with unlogged
operations. A consistent backup can not be made if there are pending
transactions with unlogged operations or if unlogged operations 
occur when backup is in progress. Because container files can  be copied 
to the backup before the transaction is committed and the data pages are 
flushed as part of the commit. As there is no transaction log for unlogged
operations, while restoring from the backup database can not be restored to 
a consistent state. To make a consistent online backup in this scenario, this patch:

1)  blocks  online backup until all the transactions with unlogged operation are
2)  implicitly converts all unlogged operations to logged mode for the duration
    of the online backup, if they are started when backup is in progress. 

This patch also adds a test to test the online backup in parallel with some DML,
DDL and unlogged operations. 
TESTS : derbyall test suite passed on Windows XP/JDK142

It would be great if some can review and commit this patch. 

svn stat:

M      java\engine\org\apache\derby\impl\store\raw\xact\Xact.java
M      java\engine\org\apache\derby\impl\store\raw\xact\XactFactory.java
M      java\engine\org\apache\derby\impl\store\raw\RawStore.java
M      java\engine\org\apache\derby\impl\store\raw\data\BaseDataFileFactory.java

M      java\engine\org\apache\derby\iapi\store\raw\xact\RawTransaction.java
M      java\engine\org\apache\derby\iapi\store\raw\xact\TransactionFactory.java
M      java\testing\org\apache\derbyTesting\functionTests\tests\storetests\st_1.sql
A      java\testing\org\apache\derbyTesting\functionTests\tests\store\OnlineBackupTest1_app.properties
A      java\testing\org\apache\derbyTesting\functionTests\tests\store\OnlineBackup.java
M      java\testing\org\apache\derbyTesting\functionTests\tests\store\copyfiles.ant
A      java\testing\org\apache\derbyTesting\functionTests\tests\store\OnlineBackupTest1.java
M      java\testing\org\apache\derbyTesting\functionTests\master\st_1.out
A      java\testing\org\apache\derbyTesting\functionTests\master\OnlineBackupTest1.out
M      java\testing\org\apache\derbyTesting\functionTests\suites\storemore.runall

> Need a online backup feature  that does not block update operations   when online backup
is in progress.
> --------------------------------------------------------------------------------------------------------
>          Key: DERBY-239
>          URL: http://issues.apache.org/jira/browse/DERBY-239
>      Project: Derby
>         Type: New Feature
>   Components: Store
>     Versions:
>     Reporter: Suresh Thalamati
>     Assignee: Suresh Thalamati
>  Attachments: onlinebackup.html, onlinebackup_1.diff, onlinebackup_2.diff, onlinebackup_3.diff
> Currently Derby allows users to perfoms  online backups using SYSCS_UTIL.SYSCS_BACKUP_DATABASE()
procedure,  but while the backup is in progress, update operations are temporarily blocked,
but read operations can still proceed.
> Blocking update operations can be real issue specifically in client server environments,
because user requests will be blocked for a long time if a 
> backup is in the progress on the server.

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
For more information on JIRA, see:

View raw message