[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
CVS Repository On-Line Backup Capability i.e. Hot Backup
From: |
Conrad T. Pino |
Subject: |
CVS Repository On-Line Backup Capability i.e. Hot Backup |
Date: |
Fri, 13 Feb 2004 07:10:55 -0800 |
Hi All,
=================================================
After searching the info-cvs archive, I see from
time to time someone asking for an on-line backup
utility for CVS repositories.
=================================================
I'm considering developing a program based to do
on-line ("hot") backups of CVS repositories. The
intended audience is different than CVSup users
since I want to save my backup on a Windows 2000
server for backup to tape and the backup product
is a gzipped tar ball.
I'm looking for feedback from the CVS community
to see if the effort is worth while.
================================================
I've done a ksh script to backup up the 4 CVS
repositories I'm using. It's a 2+ phase backup
using CVS read locks to backup the repository
while CVS server processes continue to run.
The script locks only 1 directory at a time
which maximizes CVS repository access.
Phase 1 is a non-stop run through the repository
backing up all directories that can be read locked.
If a read lock fails during phase 1, the directory
in use is placed on a deferred list and phase 1
continues without waiting.
Phase 2 processes all directories on the deferred
list again asserting read locks & without waiting.
At the end of phase 2 the deferred list is checked
and if it still contains entries then a short wait
is performed and phase 2 is repeated until all
directories are backed up.
The backup products are a 1 gzipped tar ball and
1 shell script for each CVS repository.
The tar ball has entries only for files since
attempting to add a directory with tar causes
sub-directory recursion which is not a good
behavior since I'm only locking one directory
at a time.
The output shell script contains commands to
recreate the CVS repository directory structure
since this information is not in the tar ball.
The output script also has a command to extract
the tar ball.
CVS lock files are excluded from the tar ball so
the CVS repository is immediately ready to use
after it's been restored.
=================================================
Any feedback and feature requests would be well
appreciated. Thanks in advance.
=================================================
Conrad Pino
- CVS Repository On-Line Backup Capability i.e. Hot Backup,
Conrad T. Pino <=