Re: sb/submodule-move-nested breaks t7411 under GIT_FSMONITOR_TEST
- From
Stefan Beller <sbeller@google.com>
- Date
- Sep 6, 2018, 20:14 UTC
- Message-ID
- <CAGZ79kY_+jNAu4jwVOhd+gVMELDSjk_MACKBRf51tksrzZMx-A@mail.gmail.com>
- In-Reply-To
- <MW2PR2101MB0970C7744A6FA72940DCB252F4010@MW2PR2101MB0970.namprd21.prod.outlook.com>
Show 7 quoted lines
> > Ben, do you have an idea? > > > > I'll take a look as soon as I can (and at the other fsmonitor test issue Ævar sent email about) but it may be a few days before I get a chance. > > I haven't had a chance to look into this yet but here are a couple of SWAG's I'd start with: >
> is it possible that "git mv" is triggering it early, making a change, and then updating the index with stale fsmonitor data?
This is exactly what is happening. Thanks for describing the situation precisely.
> I wonder if there is a missing call to mark_fsmonitor_invalid() in the "git mv" codepath somewhere. > > refresh_fsmonitor() only runs once per git command
Just naively adding mark_fsmonitor_invalid doesn't work, as then we have a sequence of
fsmonitor process '/u/git/t/t7519/fsmonitor-all' returned success mark_fsmonitor_clean '.gitmodules' mark_fsmonitor_invalid '.gitmodules' write fsmonitor extension successful
and the marking invalid doesn't seem to override the first mark as valid ?
> > Sorry, I'll look as soon as I can. > > Ben
Thanks! Stefan