checkrequireslfiles causes very slow push with large repo store

Mads Kiilerich mads at kiilerich.com
Fri Dec 21 16:48:22 CST 2012


olivier.trempe at nobelbiocare.com wrote, On 12/21/2012 06:08 PM:
> Hello,
>
> Our repo store contains 22659 entries. Pushes to remo repo are very 
> slow and I narrowed it down to this method:
>
> C:\Python27\Lib\site-packages\hgext\largefiles\reposetup.py:reposetup.checkrequireslfiles() 
>
>
> If your repo doesn't require largefiles, this method builds a list by 
> walking the repo store:
>
> util.any(*lfutil.shortname+'/' in f[0] for f in repo.store.datafiles()*)

Yeah, that code is both slow and incorrect, but there is no obvious 
elegant way of doing it.

But why do you have largefiles enabled if you don't use it? The best 
workaround might be to avoid setting it globally and only set it in the 
repos where you need it ... or explicitly disable it in the repos where 
you don't need it.

> Should I submit this to http://bz.selenic.com?

You could do that.

/Mads


More information about the Mercurial-devel mailing list