midx: ignore cruft pack with `repack`, `expire`
Get series with b4
b4 am [email protected]Versions newest first
- v1 Latest7 patches 3 repliesIn review
Patches in v1 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/7 | Documentation/git-multi-pack-index.txt: fix typoDocumentation/ | +1 | 0 replies | |
| 2/7 | Documentation/git-multi-pack-index.txt: clarify expire behaviorDocumentation/ | +3 | 0 replies | |
| 3/7 | midx.c: prevent `expire` from removing the cruft packDocumentation/ midx.c t/ | +33 | 1 reply | |
| 4/7 | midx.c: avoid cruft packs with `repack --batch-size=0`midx.c t/ | +25 | 0 replies | |
| 5/7 | midx.c: replace `xcalloc()` with `CALLOC_ARRAY()`midx.c | +3 | 0 replies | |
| 6/7 | midx.c: remove unnecessary loop conditionmidx.c | +1 | 0 replies | |
| 7/7 | midx.c: avoid cruft packs with non-zero `repack --batch-size`midx.c t/ | +43 | 0 replies |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.
Cover letter [PATCH 0/7] midx: ignore cruft pack with `repack`, `expire`
This series fixes a pair of bugs that were originally pointed out by Gregory Szorc in [1].
Namely, that both git multi-pack-index repack and git multi-pack-index expire can cause us to "absorb" the cruft pack, distributing its objects into a new pack, and removing its metadata.
This is worth avoiding, since even though it doesn't result in object corruption, this bug removes semi-important metadata contained in the .mtimes file, which controls how fast objects leave the repository during a pruning GC.
This series teaches both sub-commands to avoid any cruft pack(s), preserving their metadata.
Thanks in advance for your review.
[1]: https://lore.kernel.org/git/CAKQoGanPBec6wRO6uWrETaoJXdszpjRWytXaJwx6jw0mrrj-gQ@mail.gmail.com/
Taylor Blau (7):
Documentation/git-multi-pack-index.txt: fix typo Documentation/git-multi-pack-index.txt: clarify expire behavior midx.c: prevent expire from removing the cruft pack midx.c: avoid cruft packs with repack --batch-size=0 midx.c: replace xcalloc() with CALLOC_ARRAY() midx.c: remove unnecessary loop condition
midx.c: avoid cruft packs with non-zero repack --batch-size
Documentation/git-multi-pack-index.txt | 7 +- midx.c | 12 +++- t/t5319-multi-pack-index.sh | 94 ++++++++++++++++++++++++++ 3 files changed, 107 insertions(+), 6 deletions(-)
Signature · 1 line
2.37.0.1.g1379af2e9d