[PATCH 1 of 8] largefiles: replace "_isXXXXing" attributes with "_lfautocommit"
Mads Kiilerich
mads at kiilerich.com
Mon Sep 22 04:14:56 CDT 2014
Hi
I like that this patch series improve largefiles to handle more corner
cases correctly. Nice work!
I do not so much like increasing amount of hacks we have to use. It is
not like I feel we finally got it right and now can start cleaning up
and simplifying the code. Instead, in order to take the next steps, this
series has to introduce more complexity and more callbacks in core
Mercurial.
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.
/Mads
More information about the Mercurial-devel
mailing list