On 6/22/2023 6:27 PM, Jonathan Tan wrote: > It looks like we can't avoid writing both versions (we need to write > version 1 so that we can reuse existing Bloom filters when writing, if > the repo has version 1 Bloom filters) so a config that tells us which to > write sounds doable. I'll take a look. I don't fully understand what you're saying here. We need to be able to write both versions (not simultaneously, but toggled via config) so we can roll out this change carefully instead of suddenly due to the Git executable changing. But we don't need to be able to write version 1 just so we can reuse version 1 filters. In fact, we should be able to upgrade to version 2 if the config points at that, but we should _not_ re-use the filters in that case. This does present an interesting challenge for the upgrade: we have the commitGraph.maxNewFilters option to limit the amount of new filters we write at a given time. When shifting to version 2, we will start from scratch, so that could have some effect. I will consider how to handle this, perhaps by raising the number temporarily. Thanks, -Stolee