This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Creating a tag


On Sat, Jun 22, 2002 at 06:41:45PM -0700, Jason Molenda wrote:
> > In the case of GCC, if CVS wasn't so stupid to lock files during a `diff'
> > or `update' operation you'd get a lot less of the "waiting for...".  See
> > the FreeBSD src/contrib/cvs for the "readonly" patches.
> 
> I looked at this patch a while back.  cvs' file updates are atomic
> on a file level, but not at a directory level.  So it's entirely
> possible for someone to make a change to foo.c and foo.h, and an
> anoncvs read-only user doing an update at the same time could get
> the new version of foo.c but the old version of foo.h.
> 
> If that tradeoff is accepted, then yes, it'll work fine.  cvs only
> locks directories at a time, so it's still possible for a checkin
> to foo/bar.c and baz/bam.h to be half-seen by another user.  
> 
> rsyncs of the repository ignore cvs locks altogether, so you've
> got the same consistency problems as the read-only-users-don't-lock
> setup.

For what it's worth, I think this tradeoff is entirely worth making.

> It's been a while since I looked, but I don't think the OpenBSD
> CDROM-repository patch (the FreeBSD readonly patches David refers
> to are originally from OpenBSD) are selectable on a per-repository
> basis; without modification I imagine this change would have to be
> made for all repositories hosted on the site.

Or some voodoo used to select a CVS binary per-repository; that should
be fairly straightforward.

-- 
Daniel Jacobowitz                           Carnegie Mellon University
MontaVista Software                         Debian GNU/Linux Developer


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]