)]}'
{
  "commit": "3deed5e078f2998573589b1ca03d89f41ea346e9",
  "tree": "7d2c3fd209beb8884a1b0ac3318c16a10c224846",
  "parents": [
    "8fa0abf830ef3c8e97846cef0986589b49bcfe6f"
  ],
  "author": {
    "name": "Luke Diamand",
    "email": "luke@diamand.org",
    "time": "Fri Jun 08 21:32:48 2018 +0100"
  },
  "committer": {
    "name": "Junio C Hamano",
    "email": "gitster@pobox.com",
    "time": "Tue Jun 12 14:46:09 2018 -0700"
  },
  "message": "git-p4: auto-size the block\n\ngit-p4 originally would fetch changes in one query. On large repos this\ncould fail because of the limits that Perforce imposes on the number of\nitems returned and the number of queries in the database.\n\nTo fix this, git-p4 learned to query changes in blocks of 512 changes,\nHowever, this can be very slow - if you have a few million changes,\nwith each chunk taking about a second, it can be an hour or so.\n\nAlthough it\u0027s possible to tune this value manually with the\n\"--changes-block-size\" option, it\u0027s far from obvious to ordinary users\nthat this is what needs doing.\n\nThis change alters the block size dynamically by looking for the\nspecific error messages returned from the Perforce server, and reducing\nthe block size if the error is seen, either to the limit reported by the\nserver, or to half the current block size.\n\nThat means we can start out with a very large block size, and then let\nit automatically drop down to a value that works without error, while\nstill failing correctly if some other error occurs.\n\nSigned-off-by: Luke Diamand \u003cluke@diamand.org\u003e\nSigned-off-by: Junio C Hamano \u003cgitster@pobox.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "37265fc31dd51c9e55248c901fe13007cbe269a2",
      "old_mode": 33261,
      "old_path": "git-p4.py",
      "new_id": "dc00946f4600d81e461b5a97a4b855bf3ea97485",
      "new_mode": 33261,
      "new_path": "git-p4.py"
    },
    {
      "type": "modify",
      "old_id": "8840a183acfa907eb4659aa5b47ec5bcfbc10e61",
      "old_mode": 33261,
      "old_path": "t/t9818-git-p4-block.sh",
      "new_id": "ce7cb22ad37165c6976b4484f6b39a49747d4485",
      "new_mode": 33261,
      "new_path": "t/t9818-git-p4-block.sh"
    }
  ]
}
