git/list[1] front-page[2] threads[3] people[4] search[5] about
 

WIth git-next, writing bitmaps fails when keep files are present

From
SASiddharth Agarwal <sid0@fb.com>
Date
Jan 23, 2014, 02:38 UTC
Message-ID
<52E080C1.4030402@fb.com>

Running git-next, writing bitmap indexes fails if a keep file is present from an earlier pack.

With git at b139ac2, the following commands demonstrate the problem:

git init test cd test touch a git add a git commit -m "a"

git repack -ad # generate a pack file for f in .git/objects/pack/*.pack; touch ${f/%pack/keep} # mark it as to keep

touch b git add b git commit -m "b" git repack -adb

This fails at the bitmap writing stage with something like:

Counting objects: 2, done. Delta compression using up to 24 threads. Compressing objects: 100% (2/2), done. Writing objects: 100% (2/2), done. fatal: Failed to write bitmap index. Packfile doesn't have full closure (object 7388a015938147155b600eaacc59af6e78c75e5a is missing)

In our case we have .keep files lying around from ages ago (possibly due to kill -9s run on the server). It also means that running repack -a with bitmap writing enabled on a repo becomes problematic if a fetch is run concurrently.

Even if we practice good .keep hygiene, this seems like a bug in git that should be fixed.

Next: Siddharth Agarwal
Message 1 of 27 in “WIth git-next, writing bitmaps fails when keep files are present”
  1. Siddharth AgarwalJan 23, 2014
  2. Siddharth AgarwalJan 23, 2014
  3. pack-objects: turn off bitmaps when skipping objectsJeff King, Jan 23, 2014
  4. Siddharth AgarwalJan 23, 2014
  5. Siddharth AgarwalJan 23, 2014
  6. Jeff KingJan 24, 2014
  7. Siddharth AgarwalJan 24, 2014
  8. repack: add `repack.honorpackkeep` config varJeff King, Jan 28, 2014
  9. Junio C HamanoJan 28, 2014
  10. Jeff KingFeb 24, 2014
  11. Junio C HamanoFeb 24, 2014
  12. Jeff KingFeb 26, 2014
  13. Junio C HamanoFeb 26, 2014
  14. Jeff KingFeb 27, 2014
  15. Junio C HamanoFeb 27, 2014
  16. Jeff KingFeb 28, 2014
  17. Nasser GrainawiFeb 28, 2014
  18. Jeff KingMar 1, 2014
  19. Shawn PearceMar 3, 2014
  20. Junio C HamanoFeb 28, 2014
  21. Jeff KingMar 1, 2014
  22. Junio C HamanoMar 3, 2014
  23. Jeff KingMar 3, 2014
  24. Junio C HamanoMar 3, 2014
  25. Jeff KingMar 3, 2014
  26. Vicent MartíJan 23, 2014
  27. Jeff KingJan 24, 2014

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.