[PATCH 10 of 14] obsstore: pass a repository object for initialisation

Augie Fackler raf at durin42.com
Fri Jul 14 14:28:48 EDT 2017


> On Jul 14, 2017, at 14:27, Boris Feld <boris.feld at octobus.net> wrote:
> 
> On Fri, 2017-07-14 at 14:16 -0400, Augie Fackler wrote:
>>> On Jul 14, 2017, at 14:15, Boris Feld <boris.feld at octobus.net>
>>> wrote:
>>> 
>>> On Fri, 2017-07-14 at 14:11 -0400, Augie Fackler wrote:
>>>> On Sun, Jul 09, 2017 at 07:55:22PM +0200, Boris Feld wrote:
>>>>> # HG changeset patch
>>>>> # User Boris Feld <boris.feld at octobus.net>
>>>>> # Date 1495197862 -7200
>>>>> #      Fri May 19 14:44:22 2017 +0200
>>>>> # Node ID 985d753d4f5799f2a332140adedb06efd465d62b
>>>>> # Parent  63214f4d9a766761259b650539eede424413e6a2
>>>>> # EXP-Topic obs-cache
>>>>> obsstore: pass a repository object for initialisation
>>>>> 
>>>>> The cache will needs a repository object (to grab a 'vfs'), so
>>>>> we
>>>>> pass a repo object instead of just the 'svfs' and we grab the
>>>>> 'svfs'
>>>>> from there.
>>>> 
>>>> I suspect I'll get to it, but why does this cache want to know
>>>> about
>>>> anything outside of svfs?
>>>> 
>>>> I'm pretty uncomfortable (architecturally) with passing all of
>>>> `self`
>>>> into the cache layer.
>>> 
>>> The obscache need the vfs and not the svfs because caches lives in
>>> .hg
>>> and not in .hg/store.
>>> 
>>> Passing the whole repo and grabbing what we need seemed simpler.
>> 
>> It's simpler today, but more of a potential headache later if someone
>> decides to just retain the whole repo in the cache. I'd rather not do
>> it.
> 
> I understand the danger.
> 
> Should we pass vfs and svfs explicitly in the V2 then?

Yep. But let's wait until after the freeze, we've got enough other stuff pouring through the list I don't know that we have time to get through another round on this series.

(If you can do the first two patches and move branch cache to that infrastructure, feel free to send that though)



More information about the Mercurial-devel mailing list