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

EliahKagan Feb 6, 2025
Collaborator Author

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