public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
From: Zack Weinberg <zack@codesourcery.com>
To: overseers@sources.redhat.com, gcc@gcc.gnu.org
Subject: Re: cvs problems ...
Date: Fri, 08 Oct 2004 23:32:00 -0000	[thread overview]
Message-ID: <87d5ztgdo0.fsf@codesourcery.com> (raw)
In-Reply-To: <NUTMEGJCbyGWGjWzy8f0000031f@NUTMEG.CAM.ARTIMI.COM> (Dave Korn's message of "Fri, 8 Oct 2004 12:51:58 +0100")


Since it doesn't look like a fix for the underlying bug is coming in
short order, I'd like to suggest a custom for ensuring that the
repository gets restored to a usable state as fast as possible.

Whenever anyone does a merge of any kind, or hits ^C on a commit
operation, they should IMMEDIATELY AFTERWARD perform a cvs update from
a separate checkout of the trunk.  If this fails, they should
immediately notify overseers@sources.redhat.com, giving the full text
of the error message.  They should also mention the problem on the IRC
channel #gcc on irc.oftc.net, if possible.  (I do not want to force
people to use IRC if they aren't already familiar with it.  However,
that channel may well be a faster way to raise someone who knows how
to fix the problem.)

In other words, it is the responsibility of the person who did the
operation that might break CVS to find out if they broke CVS, and if
so, to notify someone who can fix it.

----

Fixing CVS requires shell access to gcc.gnu.org/sources.redhat.com and
write privileges on the repository that's busted.  I will outline what
one does, but caution everyone that this is fiddly and somewhat
dangerous - if you're not confident that you will not clobber the
wrong files, please leave it to the sysadmins.

The error message indicates the directory with a broken fileattr
cache, e.g.

> > cvs [update aborted]: branch attribute does not match file 
> > for `/cvs/gcc/gcc/boehm-gc/NT_STATIC_THREADS_MAKEFILE,v'

The specific ,v file is irrelevant - it's just the first file that CVS
tried to access in the directory with the bad cache.  What you do when
you see this is

sourceware $ cd /cvs/gcc/gcc/boehm-gc
sourceware $ : > CVS/fileattr

The effect of that odd all-punctuation command is to truncate the file
to length zero, but leave its inode untouched.  This is important,
because the file has to be owned by the 'anoncvs' user.  If you delete
it, it will get recreated by the next person to access the repository,
with the wrong ownership.  [In case you would be more comfortable with
a longer but less cryptic command, "cp /dev/null CVS/fileattr" also
works.]

Then you immediately try to do a cvs update again.  Odds are that
it will throw the same error with a different pathname.  Truncate that
directory's CVS/fileattr too.  Repeat until the update succeeds.

zw

       reply	other threads:[~2004-10-08 20:26 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <NUTMEGJCbyGWGjWzy8f0000031f@NUTMEG.CAM.ARTIMI.COM>
2004-10-08 23:32 ` Zack Weinberg [this message]
2004-10-11 17:20   ` Dave Korn
2004-10-08 11:56 Andreas Tobler
2004-10-08 12:42 ` Dave Korn
2004-10-08 12:54   ` Dave Korn
2004-10-08 13:15     ` Andrew Haley
2004-10-08 13:28       ` Dave Korn
2004-10-08 13:35         ` Dave Korn
2004-10-08 13:48           ` Diego Novillo
2004-10-08 13:48             ` Andrew Haley
2004-10-08 13:54               ` Diego Novillo
2004-10-08 13:55                 ` Andrew Haley
2004-10-08 14:00                   ` Andreas Tobler
2004-10-08 13:57               ` Christopher Faylor
2004-10-08 14:01                 ` Andrew Haley
2004-10-08 14:04                   ` Christopher Faylor
2004-10-08 14:18                     ` Dave Korn
2004-10-08 14:03                 ` Diego Novillo
2004-10-08 14:12                   ` Christopher Faylor
2004-10-08 14:45                     ` Diego Novillo
2004-10-08 15:30                       ` Christopher Faylor
     [not found]                     ` <4166B278.5040602@gnu.org>
     [not found]                       ` <m38yahtath.fsf@gossamer.airs.com>
2004-10-08 20:10                         ` Paolo Bonzini
2004-10-08 21:14                     ` Mike Stump
2004-10-08 14:11                 ` Dave Korn
2004-10-08 14:26                   ` Christopher Faylor
2004-10-08 17:12                 ` Zack Weinberg
2004-10-08 13:06   ` Andrew Haley
2004-10-08 13:13     ` Andrew Haley
2004-10-08 20:26       ` Phil Edwards
2004-10-08 20:45         ` Andrew Haley
  -- strict thread matches above, loose matches on Subject: below --
2002-10-15  9:28 cvs problems? Andreas Tobler
2002-10-15  9:34 ` Nathan Sidwell

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87d5ztgdo0.fsf@codesourcery.com \
    --to=zack@codesourcery.com \
    --cc=gcc@gcc.gnu.org \
    --cc=overseers@sources.redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).