28 lines
1.5 KiB
Markdown
28 lines
1.5 KiB
Markdown
Been having a difficult time fixing the two remaining test suite failures
|
|
when run on a FAT filesystem.
|
|
|
|
On Friday, I got quite lost trying to understand the first failure. At
|
|
first I thought it had something to do with queued git staging commands not
|
|
being run in the right git environment when git-annex is using a different
|
|
index file or work tree. I did find and fix a potential bug in that area.
|
|
It might be that some reports long ago of git-annex branch files getting
|
|
written to the master branch was caused by that. But, fixing it did not
|
|
help with the test suite failure at hand.
|
|
|
|
Today, I quickly found the actual cause of the first failure.
|
|
Of course, it had nothing to do with queued git commands at
|
|
all, and was a simple fix in the end.
|
|
|
|
But, I've been staring at the second failure for hours and am not much
|
|
wiser. All I know is, an invalid tree object gets generated by the adjusted
|
|
branch code that contains some files more than once. (git gets very
|
|
confused when a repository contains such tree objects; if you wanted to break a
|
|
git repository, getting such trees into it might be a good way. *cough*) This
|
|
invalid tree object seems to be caused by the basis ref for the adjusted branch
|
|
diverging somehow from the adjusted branch itself. I have not been able to
|
|
determine why or how the basis ref can diverge like that.
|
|
|
|
Also, this failure is somewhat indeterminite, doesn't always occur and
|
|
reordering the tests in the test suite can hide it. Weird.
|
|
|
|
Well, hopefully looking at it again later with fresh eyes will help.
|