On Sun, Jul 16, 2017 at 2:13 PM, Dave Borowitz <dborowitz@xxxxxxxxxx> wrote: > On Sun, Jul 16, 2017 at 3:43 PM, Shawn Pearce <spearce@xxxxxxxxxxx> wrote: >> True... but... in my "android" example repository we have 866,456 live >> refs. A block size of 64k needs only 443 blocks, and a 12k index, to >> get the file to compress to 28M (vs. 62M packed-refs). >> >> Index records are averaging 28 bytes per block. That gives us room for >> about 1955 blocks, or 4,574,700 refs before the index block exceeds >> 64k. > > That's only a 5x increase over the current number of refs in this > android repo. I would not be so sure this repo doesn't grow another 5x > in the next few years. Especially as the other optimizations for > working with large repos start to be applied, so it won't be > prohibitively painful to work with such a repo. > > Are we ok with increasing the block size when this eventually happens? > (At least I think that's what we would have to do, I haven't been > following closely the discussion on scaling limits.) I think I'd try letting the index grow to 4 blocks (256k) before I considered increasing the block size. Remember pack idx files are much larger, and are loaded wholesale into memory by JGit. A ref idx at 256k might not be problematic.