Skip to content

What is this strange changed_and_untracked_and_renamed failure on main? #1831

Answered by Byron
EliahKagan asked this question in Q&A
Discussion options

You must be logged in to vote

Thanks for persisting it!

I took a look just now and noticed that the failure here seems to originate in the rename tracker, It didn't find the matching pairs.
The answer here must be that it's a problem with the order in which the entries are made known to the rename tracker, which depends on timing. A dirwalk is used in one thread to detect untracked files, whereas another thread traverses the index to find missing and changed files.

It appears that the pair-matching algorithm is to not order-independent as it would expected to be - clearly a bug in the implementation.

I think it would be possible to reproduce this with a test that runs a similar set of files through significant permuta…

Replies: 1 comment 1 reply

Comment options

You must be logged in to vote
1 reply
@EliahKagan
Comment options

Answer selected by EliahKagan
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
2 participants