Discussion:
[rancid] CVS Problem? Rancid continually gives error "Assertion
Max Palatnik
2008-06-09 04:09:28 UTC
Permalink
Hi all,

I just added two new managment vlans to rancid and had it run through
and poll the switches. On one subnet it did absolutely fine. On the
other -- we continually get the following error lines:

Trying to get all of the configs.
All routers sucessfully completed.

cvs diff: Diffing .
cvs diff: Diffing configs
cvs diff: configs/cd-wohl-0.nts.wustl.edu is a new entry, no comparison
available
cvs commit: Examining .
cvs commit: Examining configs
Assertion failed: key != NULL, file hash.c, line 317
cvs [commit aborted]: received abort signal

The process fails and it seems to start from scratch as if the switches
had never once been contacted. It seems like this is a CVS problem and
I did a google search around and though the error pops up there doesn't
seem to be a clear fix. I tried deleting and recreating the group but
that lead me to this same problem. I am by no means a CVS expert, so
please don't hesitate to mention even the silliest suggestions should
they apply here.

Cheers,
Max
Austin Schutz
2008-06-09 05:29:50 UTC
Permalink
Post by Max Palatnik
cvs diff: Diffing .
cvs diff: Diffing configs
cvs diff: configs/cd-wohl-0.nts.wustl.edu is a new entry, no comparison
available
cvs commit: Examining .
cvs commit: Examining configs
Assertion failed: key != NULL, file hash.c, line 317
cvs [commit aborted]: received abort signal
The process fails and it seems to start from scratch as if the switches
had never once been contacted. It seems like this is a CVS problem and
I did a google search around and though the error pops up there doesn't
seem to be a clear fix. I tried deleting and recreating the group but
that lead me to this same problem. I am by no means a CVS expert, so
please don't hesitate to mention even the silliest suggestions should
they apply here.
Your log output starts at the 'cvs diff' part, which is after
the new routers have been contacted and right before it would be committed.
The thing I think is interesting about this is the
"configs/cd-wohl-0.nts.wustl.edu is a new entry, no comparison" line. When
there is a new router it gets cvs added and committed _before_ the router
is polled and cvs diff run. Therefore when you reach this point it should
_not_ be a new entry.
This implies that cvs add and commit failed above where the router
was added. You would have to look at your log to verify this.

I would try a couple silly things:

1. Remove any files in $CVSROOT/<group>/configs/Attic, just in case
something about a preexisting file is angering cvs. Also remove
$CVSROOT/<group>/configs/cd-wohl-0.nts.wustl.edu,v and any other failing
files.
2. Check your perms on $CVSROOT and all applicable subdirectories.
The fact cvs has been able to add but not commit the file is a little weird.
3. Do a cvs up -dA in <group>. Actually, I would remove (or move)
<group> entirely and do cvs -d $CVSROOT checkout <group> to make sure you
are all fresh and new, in case you have mismatched entries in
CVS/Entries (if you don't know what that is, don't worry about it).

That should be good for a few moments of silliness. Also, when in
doubt create a tar file of $CVSROOT and <group> before you begin, in case
you foo something up while trying out these suggestions.

Austin
Max Palatnik
2008-06-09 15:22:43 UTC
Permalink
Well.. the third item did the trick. I recreated the group after moving
the old broken one and re-ran rancid-run. The error is no more and
everything looks okay. I wonder what happened.

Thanks for your help Austin

Max
Post by Austin Schutz
Post by Max Palatnik
cvs diff: Diffing .
cvs diff: Diffing configs
cvs diff: configs/cd-wohl-0.nts.wustl.edu is a new entry, no comparison
available
cvs commit: Examining .
cvs commit: Examining configs
Assertion failed: key != NULL, file hash.c, line 317
cvs [commit aborted]: received abort signal
The process fails and it seems to start from scratch as if the switches
had never once been contacted. It seems like this is a CVS problem and
I did a google search around and though the error pops up there doesn't
seem to be a clear fix. I tried deleting and recreating the group but
that lead me to this same problem. I am by no means a CVS expert, so
please don't hesitate to mention even the silliest suggestions should
they apply here.
Your log output starts at the 'cvs diff' part, which is after
the new routers have been contacted and right before it would be committed.
The thing I think is interesting about this is the
"configs/cd-wohl-0.nts.wustl.edu is a new entry, no comparison" line. When
there is a new router it gets cvs added and committed _before_ the router
is polled and cvs diff run. Therefore when you reach this point it should
_not_ be a new entry.
This implies that cvs add and commit failed above where the router
was added. You would have to look at your log to verify this.
1. Remove any files in $CVSROOT/<group>/configs/Attic, just in case
something about a preexisting file is angering cvs. Also remove
$CVSROOT/<group>/configs/cd-wohl-0.nts.wustl.edu,v and any other failing
files.
2. Check your perms on $CVSROOT and all applicable subdirectories.
The fact cvs has been able to add but not commit the file is a little weird.
3. Do a cvs up -dA in <group>. Actually, I would remove (or move)
<group> entirely and do cvs -d $CVSROOT checkout <group> to make sure you
are all fresh and new, in case you have mismatched entries in
CVS/Entries (if you don't know what that is, don't worry about it).
That should be good for a few moments of silliness. Also, when in
doubt create a tar file of $CVSROOT and <group> before you begin, in case
you foo something up while trying out these suggestions.
Austin
Loading...