)]}'
{
  "commit": "1ed1e40387c859786cf1932d22fe0001fbd5abb6",
  "tree": "c3fa7738c15745532cf650f2c29314243e9c0567",
  "parents": [
    "3db0f507eee3e552f1bcf7343efb03adf34c9afa"
  ],
  "author": {
    "name": "Christian Halstrick",
    "email": "christian.halstrick@sap.com",
    "time": "Mon Aug 07 14:26:46 2017 +0200"
  },
  "committer": {
    "name": "Matthias Sohn",
    "email": "matthias.sohn@sap.com",
    "time": "Mon Aug 14 21:09:48 2017 +0200"
  },
  "message": "Fix exception handling for opening bitmap index files\n\nWhen creating a new PackFile instance it is specified whether this pack\nhas an associated bitmap index file or not. This information is cached\nand the public method getBitmapIndex() will always assume a bitmap index\nfile must exist if the cached data tells so. But it may happen that the\npackfiles are repacked during a gc in a different process causing the\npackfile, bitmap-index and index file to be deleted. Since JGit still\nhas an open FileHandle on the packfile this file is not really deleted\nand can still be accessed. But index and bitmap index file are deleted.\nFix getBitmapIndex() to invalidate the cached packfile instance if such\na situation occurs.\n\nThis problem showed up when a gerrit server was serving repositories\nwhich where garbage collected with native git regularly. Fetch and\nclone commands for certain repositories failed permanently after a\nnative git gc had deleted old bitmap index files.\n\nChange-Id: I8e620bec74dd3f310ba42024f9a657062f868f0e\nSigned-off-by: Matthias Sohn \u003cmatthias.sohn@sap.com\u003e",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "07a7be74675ade30b1af2604eb12f2ff0ea59614",
      "old_mode": 33188,
      "old_path": "org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/GcConcurrentTest.java",
      "new_id": "776226b4efa83656e9822ee9c597a14652b7510d",
      "new_mode": 33188,
      "new_path": "org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/GcConcurrentTest.java"
    },
    {
      "type": "modify",
      "old_id": "038172f92dbcfd1eae2bd23fe517682c51171c25",
      "old_mode": 33188,
      "old_path": "org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/PackFile.java",
      "new_id": "b5889f2dd4bc774659aa0e52e1c17c884ae93def",
      "new_mode": 33188,
      "new_path": "org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/PackFile.java"
    }
  ]
}
