On Tue, Nov 22, 2016 at 11:35 AM, Duy Nguyen <pclouds@xxxxxxxxx> wrote: [...] >>> In my opinion, "true" _is_ auto, which is a way to say "I trust you to >>> do the right thing, just re-split the index when it makes sense", "no" >>> is disabled of course. If the user wants to be specific, just write >>> "10" or some other percentage.(and either 0 or 100 would mean enable >>> split-index but do not re-split automatically, let _me_ do it when I >>> want it) >> >> The meaning of a future "auto" option for "core.splitIndex" could be >> "use the split-index feature only if the number of entries in whole >> index is greater than 10000 (by default)". > > Well.. with the "just re-split the index when it makes sense" part, > the user entrusts git to do something sensible in all cases, That's an interpretation of what "core.splitIndex=true" could mean, but there could be users who trust Git to re-split when it makes sense, but who do want to use the split-index on all theirs repos even the small ones or who just don't trust Git to choose when it might be better to use it or not. Yeah, a typical git user would most of the time just trust Git for all those things, but on the other hand there are companies out there that are willing to tweak many configuration options to get the better possible behavior for them. In fact I am working on this for Booking.com, and if we find out later that we would gain something significant, like performance improvements or configuration simplification, by adding "auto" and/or other configuration variables to tweak more split-index related things, we might very well post patch series to do that. So if we now mix things up just to avoid one more configuration option, we could very well make things harder to develop, to configure, to parse and to understand later, so it is not a trade off worth making. > and going > with absolute numbers might not be the best way, I think. It's big > responsibility :) About going with absolute number, yeah I am not sure at all it is the best way, but this was just part of an example to try to explain what I am saying above.