Skip to content

fscache: 3 tests in t7063-status-untracked-cache.sh fail with fscache enabled #1940

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
benpeart opened this issue Nov 20, 2018 · 4 comments
Labels
Help Wanted help is requested from collaborators, please!

Comments

@benpeart
Copy link

With the recent addition of the GIT_TEST_FSCACHE=true environment variable, running the test suite with the fscache turned on causes 3 tests in t7063-status-untracked-cache.sh to fail.

Test Summary Report

./t7063-status-untracked-cache.sh (Wstat: 256 Tests: 50 Failed: 3)
Failed tests: 29-31
Non-zero exit status: 1
Files=839, Tests=19846, 1937 wallclock secs ( 9.70 usr 17.19 sys + 1362.22 cusr 4527.29 csys = 5916.40 CPU)
Result: FAIL

  • [x ] I was not able to find an open or closed issue matching what I'm seeing

Setup

  • Which version of Git for Windows are you using? Is it 32-bit or 64-bit?
$ git --version --build-options

git version 2.18.0.windows.1
cpu: x86_64
built from commit: cd1a74fc9dc8a07626c216940db9a51f25206e03
sizeof-long: 4

  • Which version of Windows are you running? Vista, 7, 8, 10? Is it 32-bit or 64-bit?
$ cmd.exe /c ver

Microsoft Windows [Version 10.0.17763.55]

  • What options did you set as part of the installation? Or did you choose the
    defaults?

NA

  • Any other interesting things about your environment that might be related
    to the issue you're seeing?

NA

Details

  • Which terminal/shell are you running Git from? e.g Bash/CMD/PowerShell/other

Bash

GIT_TRACE_FSCACHE=true sh t7063-status-untracked-cache.sh
  • What did you expect to occur after running these commands?

The tests to pass

  • What actually happened instead?

failed 3 among 50 test(s)

  • If the problem was occurring with a specific repository, can you provide the
    URL to that repository to help us with testing?

NA

@benpeart
Copy link
Author

I've looked at this a little but still don't have a root cause. When I run the steps manually, they succeed which makes me wonder if it is timing related. Another area to investigate is the fact that the untracked cache is explicitly invalidating a directory but the fscache is not impacted by that. Given the error is that the new/modified directory doesn't show up in the fscache, it makes me wonder if those two are somehow related.

@dscho
Copy link
Member

dscho commented Nov 23, 2018

That's really curious. It seems that the untracked cache has some bugs. What I see in wt_status_collect_untracked() is that the first time I call git status --porcelain, the following entries come in from the untracked cache:

.gitignore
done/five
dtwo/
dtwo/

Note not only the absence of done/sub/ but the double entry dtwo/.

Now, if I run the command immediately after that, there is an additional entry:

.gitignore
done/five
done/sub/
dtwo/
dtwo/

Note that now there is an entry for done/sub/.

Even more curious: if I run this without FSCache, the first time it looks like this (i.e. like the second time with FSCache):

.gitignore
done/five
done/sub/
dtwo/
dtwo/

and the second time it looks like this:

.gitignore
done/five
done/sub/
done/sub/
dtwo/
dtwo/

(Note the double done/sub/ entry).

There seems to be something completely wrong with the untracked cache, and I think the next step should be to see whether the same symptoms happen on Linux (i.e. whether this is anything Windows-specific). I will try to find the time to investigate further next week, unless you beat me to it.

@dscho dscho self-assigned this Feb 27, 2019
dscho added a commit to dscho/git that referenced this issue Jan 2, 2020
This is intended to make sure that the three test failures reported in
git-for-windows#1940 are the only affected
ones (or to find a test failure that will make it easier to investigate
the issues).

Signed-off-by: Johannes Schindelin <[email protected]>
@dscho
Copy link
Member

dscho commented Jan 2, 2020

So there is now also t7300.51 that fails with FSCache, strangely with an "Illegal instruction"...

@dscho
Copy link
Member

dscho commented Mar 17, 2022

It would be so grand if a volunteer showed up and magically took care of this...

@dscho dscho added the Help Wanted help is requested from collaborators, please! label Mar 17, 2022
@dscho dscho removed their assignment Mar 17, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Help Wanted help is requested from collaborators, please!
Projects
None yet
Development

No branches or pull requests

2 participants