Manifest Feature MatrixΒΆ

Original spreadsheet

Num Hash Client On-Disk Manifest Format Client Tree Manifest On-Desk Tree Manifest in Exchange Consequences: Read-delta works Sane? Use Case Benefits Interesting?
2 Current V1 No No Yes Yes Existing Projects Mostly read-delta Obviously
6 Current V2 No No No ?   Size: 30% smaller without general delta ?
8 Current V2 Yes No No Yes Mozilla Rebase et. al faster on client, old clients won’t break ?
9 Current V2 Yes Yes No Kind of Exchange for modern client and server in above case    
14 Tree V2 No No No Maybe Small new project Compact representation, less disk seeks  
17 Tree V2 Yes Yes No Yes Google Narrow clones Obviously
  • Next step: analyze storange and perf of 14 and 17 on normal-size and mozilla-size repos to see if we should support 6 and 8.
  • Concern: if exchange uses v1 format and disk uses v2, we have to do transformation between formats to apply deltas.
  • If we can’t do old client compat, then we should only do row 2 and 17
  • New delta encoding might also be worth considering, but completely orthogonal to this.