[PATCH 1 of 8] largefiles: replace "_isXXXXing" attributes with "_lfautocommit"

Sean Farley sean.michael.farley at gmail.com
Mon Sep 22 12:41:37 CDT 2014


Mads Kiilerich writes:

> On 09/22/2014 07:02 PM, Sean Farley wrote:
>> Mads Kiilerich writes:
>>
>>> I wonder if we should try a different approach. As you point out, it is
>>> almost impossible to do the right thing in the internal commit functions
>>> - they don't have enough context. One alternative could be to hook in at
>>> the very low level, updating the standin files whenever they are read
>>> and propagate their change whenever they are written. Another approach
>>> would be to do all synchronization before/after calling in to core
>>> Mercurial and let the core pretty much treat standin files like any
>>> other file. I have played around with that approach and posted a proof
>>> of concept.
>> Just a shot in the dark here, but what about using a custom context
>> object (that will soon grow a commit method)?
>
> I doubt that would help.
>
> The problem (or a part of it) is that commands like rebase, transplant 
> and histedit do several commits and updates - and that it is quite a bit 
> blurry when they should propagate largefiles to standins or the other 
> way around. I guess it would require quite a bit of largefile awareness 
> in creation/initialization of these context objects to handle that 
> "correctly".

Hopefully in the future, those commands will just take arbitrary context
objects (I am the bottleneck in that, though).


More information about the Mercurial-devel mailing list