From: David Turner Date: Thu, 23 Jun 2016 06:24:42 GMT Subject: Re: [PATCH v12 11/20] index-helper: use watchman to avoid refreshing, index with lstat() Message-ID: <576B80AA.4040508@novalis.org> In-Reply-To: <57662876.3070209@novalis.org> On 06/19/2016 01:07 AM, David Turner wrote: > Duy Nguyen wrote: > > On Fri, May 20, 2016 at 4:45 AM, David Turner > wrote: > > > diff --git a/read-cache.c b/read-cache.c > > > index 1719f5a..8ec4be3 100644 > > > --- a/read-cache.c > > > +++ b/read-cache.c > > > @@ -1235,7 +1235,7 @@ int refresh_index(struct index_state *istate, > unsigned int flags, > > > if (!new) { > > > const char *fmt; > > > > > > - if (really && cache_errno == EINVAL) { > > > + if (really || cache_errno == EINVAL) { > > > /* If we are doing --really-refresh > that > > > * means the index is not valid > anymore. > > > */ > > > > This looks really odd. I don't see why we would need this. It seems > > first appeared in your "do not apply" patch [1]. Maybe leftover? > > > > I found this while re-reading the series and I have not put much time > > in studying this code yet. So I may be wrong. I'll post again if I > > find that it's true after some more staring. > > I don't remember the exact details here, but I think we needed this so > that we would ever refresh a file that watchman told us had been > modified. We definitely were missing some invalidation if we didn't > have it. ... and now I can't repro the problem. So I'll remove it and re-roll (with some other changes)