You may be having the same problem I am - in my case, I have a repository which was created a very long time ago (pre - pack-0.92).
It has been upgraded (to -2a), but some deltas still cite a fileid of TREE_ROOT.
The trouble is that when we get to merging those deltas into the dirstate, we discover that there is a path '', but that it has no TREE_ROOT fileid associated (because that was removed during the upgrade).
I _think_ that the correct response is to simply not throw in this case, since the only problem is that a delta is citing a root which must be there, albeit under a different fileid.
You may be having the same problem I am - in my case, I have a repository which was created a very long time ago (pre - pack-0.92).
It has been upgraded (to -2a), but some deltas still cite a fileid of TREE_ROOT.
The trouble is that when we get to merging those deltas into the dirstate, we discover that there is a path '', but that it has no TREE_ROOT fileid associated (because that was removed during the upgrade).
I _think_ that the correct response is to simply not throw in this case, since the only problem is that a delta is citing a root which must be there, albeit under a different fileid.
If you were to branch from https:/ /code.launchpad .net/~rrw/ bzr/830947- tree-root- exception , you might find that your problem goes away - I'd be interested to know if it does? (mine did)