Re: [RFC PATCH] multi-pack-index: allow operating without pack files
From: Taylor Blau <hidden>
Date: 2021-08-23 04:05:53
On Sun, Aug 22, 2021 at 08:34:43PM -0400, Derrick Stolee wrote:
On 8/20/2021 3:55 PM, Johannes Berg wrote:quoted
Technically, multi-pack-index doesn't need pack files to exist, but add_packed_git() today checks whether it exists or not.Having a multi-pack-index is supposed to indicate that we have these objects in the objects/pack directory within the specified pack-files. I understand your goal to relax a condition of the multi-pack-index file, but it's triggered by a flag during write and that choice isn't persisted into the file. There is no way for a later Git process to understand that the multi-pack-index doesn't actually guarantee object existence.
We're going to run into problems much earlier than that, though: the MIDX needs to load information about objects from packs in order to break ties when multiple copies of the same object exist in multiple packs (according to that pack's mtime). So I'm not sure how we would even write a MIDX without physical packs on disk that we can open and stat, let along how we would teach Git to handle a situation where packs that did exist when writing a MIDX went away when we tried to read from the same MIDX later on. Thanks, Taylor