D6711: branchheads: store wdir-dependent caches in wcache (issue6181)
marmoute (Pierre-Yves David)
phabricator at mercurial-scm.org
Thu Aug 8 13:01:25 EDT 2019
marmoute added a comment.
In D6711#98318 <https://phab.mercurial-scm.org/D6711#98318>, @spectral wrote:
> In D6711#98248 <https://phab.mercurial-scm.org/D6711#98248>, @marmoute wrote:
>> The change looks good to me, However we probably want to introduce a new filter level 'wdir-independent-visible' to ensure we a good branchcache cache in .hg/cache that most share can use and that will be kept up to date. This also means we need to make sure it is warmed after transaction.
> I agree such a thing would be useful, and pretty easy to add (just needs to not remove items considered "pinned" during computehidden, but I'm a little concerned about the proliferation of these things. I think ideally we'd end up with:
> visible-hidden > visible > wdir-independent-visible > wdir-independent-served > wdir-independent-served.hidden > immutable > base
> served > wdir-independent-served > wdir-independent-served.hidden > immutable > base
> served.hidden > wdir-independent-served.hidden > immutable > base
> I think?
Yeah, this makes a lot of them, but the alternative (having non-up-to-date cache in the share-source would a significant issue). In the current situation you fix one bug, reintroducing another. I wonder if we have a "simpler or saner" way to introduce these various disctinction. Let me think about it a bit.
> (Not sure if we need a wdir-independent-visible-hidden, I still don't really understand visible-hidden, I just know that updating it actually breaks a Lot of stuff, so I avoided doing so in the first commit in the stack. :))
`visible-hidden` still exclude all the `internal` phase commit that we never want to expose to anyone. (yeah the name is … confusing)
CHANGES SINCE LAST ACTION
To: spectral, #hg-reviewers
Cc: marmoute, mercurial-devel
More information about the Mercurial-devel