bugmonotone - Bugs: bug #15994, Invariant 'fetching nonexistent...

 
 
Show feedback again

You are not allowed to post comments on this tracker with your current authentification level.

bug #15994: Invariant 'fetching nonexistent entry from children' violated

Submitted by:  Thomas Keller <tommyd>
Submitted on:  Sat 04 Mar 2006 08:30:21 PM UTC  
Votes:  10  
 
Category: command line UISeverity: 3 - Normal
Item Group: crashStatus: None
Privacy: PublicAssigned to: None
Open/Closed: Open
mtn version --full: 

monotone 0.26pre2 (base revision: 9ca37b918cb5309d8d3b0be000dc8a1151df262f)
Running on: Linux 2.6.14-1.1637_9.rhfc4.cubbi_swsusp2 #1 Fri Nov 25 17:06:18 CET 2005 i686
Changes since base revision: unknown

Generated from data cached in the distribution;
further changes may have been made.

Generated from data cached in the distribution;
further changes may have been made.

Generated from data cached in the distribution;
further changes may have been made.

Generated from data cached in the distribution;
further changes may have been made.

Generated from data cached in the distribution;
further changes may have been made.

Tue 26 Sep 2006 02:12:39 PM UTC, comment #2:

And finally, this problem exists if a directory is renamed in such a way that it becomes its own children (which is of course illegal and should be catched properly instead of erroring out like this):

$ mtn rename src/ src/model/
mtn: fatal: std::logic_error: roster.cc:188: invariant 'fetching nonexistent entry from children' violated

Btw... this is now 0.30. I've grep'ed over the code but couldn't find this specific invariant (roster.cc, line 188 contains "return safe_get(children, pc);" in 0.30)

Thomas Keller <tommyd>
Project Administrator
Wed 21 Jun 2006 10:52:59 AM UTC, comment #1:

The problem persists with monotone 0.27, but the location of the invariant has moved:

std::logic_error: roster.cc:188: invariant 'fetching nonexistent entry from children' violated

What I did: renamed a file and put it in a directory which does not exist physically, i.e. mtn rename foo bar/foo while "bar" is neither accounted for in workspace nor does exists in the workspace at all.

Thomas Keller <tommyd>
Project Administrator
Sat 04 Mar 2006 08:30:21 PM UTC, original submission:

monotone crashes with this output:

monotone: fatal: std::logic_error: roster.cc:180: invariant 'fetching nonexistent entry from children' violated
[...]
terminate called after throwing an instance of 'unix_signal_exception'
segmentation fault

What I did:

A local, uncommitted rename from ./Makefile to ./src/Makefile
A local, uncommitted rename from ./src to ./src.old
A revert acting on ./src

After that repository actions (automate inventory, update) seem to fail with the same invariant error, until `monotone revert .` is called.

Thomas Keller <tommyd>
Project Administrator

 

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

CC list is empty

 

Do you think this task is very important?
If so, you can click here to add your encouragement to it.
This task has 10 encouragements so far.

Only logged-in users can vote.

 

Please enter 421 here (basic anti-spam test):

 

 

Follows 1 latest change.

Date Changed By Updated Field Previous Value => Replaced By
Sat 04 Mar 2006 08:30:21 PM UTCtommydCarbon-Copy-=>Added tommyd
Show feedback again

Back to the top


Powered by Savane 3.1-cleanup