[PATCH] lfs: add a progress bar when searching for blobs to upload

Matt Harbison mharbison72 at gmail.com
Fri Aug 31 00:49:09 EDT 2018


On Thu, 30 Aug 2018 07:41:02 -0400, Yuya Nishihara <yuya at tcha.org> wrote:

> On Wed, 29 Aug 2018 23:17:45 -0400, Matt Harbison wrote:
>> On Fri, 24 Aug 2018 18:18:32 -0400, Matt Harbison  
>> <mharbison72 at gmail.com>
>> wrote:
>>
>> > # HG changeset patch
>> > # User Matt Harbison <matt_harbison at yahoo.com>
>> > # Date 1535147146 14400
>> > #      Fri Aug 24 17:45:46 2018 -0400
>> > # Node ID 76eca3ae345b261c0049d16269cdf991a31af21a
>> > # Parent  c9a3f7f5c0235e3ae35135818c48ec5ea006de37
>> > lfs: add a progress bar when searching for blobs to upload
>> >
>>
>> Any ideas how to trim down some of this overhead?  revset._matchfiles()
>> has a comment about reading the changelog directly because of the  
>> overhead
>> of creating changectx[1].  I think that could work here too, but falls
>> apart because of the need to access the filelogs too.  It seems like
>> reading the changelog and accessing the filelogs directly here is too  
>> low
>> level, especially with @indygreg trying to add support for non-filelog
>> storage.
>
> Is there any way to filter lfs files without reading filelog? I suspect  
> it would spend time scanning each filelog revision.

I don't think so.  It looks like REVIDX_EXTSTORED is added to the flags  
when a file log revision is added, and that's really the only marker.

> FWIW, I think it's okay to use storage-level API to scan lfs pointers
> linearly.


More information about the Mercurial-devel mailing list