[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: CVS and AFS

From: Todd Denniston
Subject: Re: CVS and AFS
Date: Fri, 22 Jun 2001 09:48:03 -0500

"Michael Sperber [Mr. Preprocessor]" wrote:
> >>>>> "Gerhard" == Gerhard Sittig <address@hidden> writes:
> Gerhard> On Thu, Jun 14, 2001 at 22:50 -0400, Charles Karney wrote:
> >>
> >> We use CVS in a mixed Windows and Linux environment.  Recently
> >> we switched from accessing the CVS repository vis ssh to a
> >> Linux machine on which CVSROOT was a local disk to having the

> >> CVS repository in AFS and having all clients access this as a
> >> local file system.
> Gerhard> You did read the few thousand horror stories of what's going to
> Gerhard> happen when accessing repos via networked filesystems in the
> Gerhard> list, didn't you?
> ... because by far most of them don't apply to AFS.  If you'd read the
> report you'd seen that most of the "few thousand horror" stories have
> no relation to what Charles was asking about.
although they do not sound like AFS because they usually say NFS or SMB, they
are exactly the case described by Charles!

Telling CVS on each machine that it accessing the repository on a physical
(local) drive so that all lock files are being cached in the local machines
File System cache.  However the case is that the lock files are being cached
locally, network latency added, and finally being put in the actually
distributing computer's cache to be checked by other cvs clients.  This allows 
a race condition to exist where one client may not know another has a lock and
so it can (insert bad thing) which corrupts or causes other problems with the

Basic summary:
If the repository is being accessed as a local File system, then the repository
should be on a physical disk of the computer, otherwise you have different
clients in a race condition.

Real use:
If the repository is an network file system (NFS/SMB/AFS) mount then it can be
used as a local file system IF and ONLY IF you are using a remote protocol
(RSH/SSH/pserver) to connect to the single computer which accesses the repo as
a local file system, there by making all locks in only one computer's cache.
(Some even indicate this could be bad, but I have YET to experience a problem
with it. YMMV)

I'd crawl over an acre of 'Visual This++' and 'Integrated Development
That' to get to gcc, Emacs, and gdb.  Thank you.
        -- Vance Petree, Virginia Power

reply via email to

[Prev in Thread] Current Thread [Next in Thread]