[cvsnt] Repository Robustness
carl at membersonlysoftware.com
carl at membersonlysoftware.com
Fri Feb 6 22:06:15 GMT 2004
I have had a couple of problems with a CVS repository when using an old, unstable
client against a new CVSNT server. I really don't know what happened, but two files
ended up loosing history.
This occurred from failures associated with one computer that was miss behaving.
I was able to go into the RCS file and patch it together quite well ( and I didn't know
anything about the RCS file format before starting).
As a comparison. I have seen a Visual Source safe repository become so corrupted
that history on many files was unuseable. And source safe used a database back end
(Jet engine) at that time.
The nice thing about a reverse-delta approach is that the latest changes are most likely
to be correct.
Carl
On 6 Feb 2004 at 16:11, Shawn Haigh wrote:
> Thank you for your prompt and very informative reply... I am planning on
> using the standard client/server configuration, suppose that there was a
> disk corruption or failure..? would I still be able to recover to the
> last commit? For example some other databases use a journal file
> (usually on an other volume) to recover all the changes since the last
> full backup of the database. Is there a similar feature with CVSNT if
> not, would it be in the future?
>
> - Shawn
>
> -----Original Message-----
> From: Tony Hoyle [mailto:tmh at nodomain.org]
> Sent: February 6, 2004 3:57 PM
> To: cvsnt at cvsnt.org
> Subject: Re: [cvsnt] Repository Robustness
>
> Shawn Haigh wrote:
> > I was just having a discussion with some colleagues about the scenario
> > in which a repository would become corrupt. First of all, based on
> > everyone's wide range of experience have you ever heard of this
> > happening? Second, what would be the best way to keep a running backup
> > of the repository.
> >
> Assuming you're using a standard client/server configuration, it's
> pretty hard to corrupt a repository unless there's a corruption of the
> disk itself. All file file level operations are atomic, so even if
> there's a power failure your repository will still be OK (you might have
>
> a partial commit, but I don't consider that 'corrupt' as you can recover
>
> it by doing an update/commit on the client).
>
> Over file shares it's a lot more muddy - there have been reports of
> corruption using them, although rare. I don't recommend that
> configuration for that reason (amongst others).
>
> One scenario that could be called 'corrupt' is sharing sandboxes -
> checkout on an NT machine and checkin on a Unix machine. You'll get the
>
> CR/LF pairs stored in the RCS file and the next checkout on NT will
> convert that to CR/LF/LF, etc. The rule of thumb is don't share
> sandboxes across platforms (but if you must, never mix clients).
>
> Tony
>
> _______________________________________________
> cvsnt mailing list
> cvsnt at cvsnt.org
> http://www.cvsnt.org/cgi-bin/mailman/listinfo/cvsnt
> _______________________________________________
> cvsnt mailing list
> cvsnt at cvsnt.org
> http://www.cvsnt.org/cgi-bin/mailman/listinfo/cvsnt
>
More information about the cvsnt
mailing list