Re: [PATCHv4 08/12] Teach the notes lookup code to parse notes trees with various fanout schemes
From: Johannes Schindelin <hidden>
Date: 2016-06-15 22:47:19
Hi, On Fri, 28 Aug 2009, Johan Herland wrote:
On Friday 28 August 2009, Johannes Schindelin wrote:quoted
And I can easily imagine a repository that has a daily note generated by an automatic build, and no other notes. The date-based fan-out just wastes our time here, and even hurts performance.What about a month-based fanout?
Well, I hoped to convince you that the date-based approach is too rigid. You basically cannot adapt the optimal data layout to the available data. (I like to think of this issue as related to storing deltas: we let Git choose relatively freely what to delta against, and do not force a delta against the parent commit like others do; I think it is pretty obvious that our approach is more powerful.) So the simplest (yet powerful-enough) way I could imagine is to teach the reading part to accept any fan-out (but that fan-out is really only based on the object name, nothing else), and to adjust the writing/merging part such that it has a maximum bin size (i.e. it starts a new fan-out whenever a tree object contains more than a config-specifyable limit). I was certainly not thinking of something as complicated as Huffman. Ciao, Dscho