)]}'
{
  "commit": "6e670b3f0c3b80a9d417d5fef36904a21161587a",
  "tree": "8e7cb65eee1a2fa12ec67ae4d141186b4c17d912",
  "parents": [
    "c69baaf57ba26cf117c2b6793802877f19738b0d"
  ],
  "author": {
    "name": "Arijit Banerjee",
    "email": "arijit@effectiveailabs.com",
    "time": "Mon Jun 01 16:13:21 2026 +0000"
  },
  "committer": {
    "name": "Junio C Hamano",
    "email": "gitster@pobox.com",
    "time": "Tue Jun 02 09:09:42 2026 +0900"
  },
  "message": "index-pack: retain child bases in delta cache\n\nWhen resolving a delta whose result has children of its own,\nindex-pack adds the result to work_head, accounts its data in\nbase_cache_used, and calls prune_base_data(). It then immediately frees\nthat same data.\n\nThis bypasses the existing delta base cache policy and can force later\ndescendants to reconstruct the queued base again. Let the existing\ndelta_base_cache_limit pruning policy decide whether to keep or evict\nthe data instead.\n\nThis does not add a new cache or increase the cache limit. The object\ndata is already accounted in base_cache_used before prune_base_data()\nruns, and the existing pruning and base cleanup paths still release it.\n\nOn a quiet Ubuntu 24.04 VM with 16 vCPUs, 32 GiB RAM, and local SSD,\ndirect index-pack timings on single-pack Linux fixtures improved as\nfollows:\n\n  linux blobless: 69.17s -\u003e 57.98s (16.2% faster), RSS flat\n  linux full:     280.72s -\u003e 236.32s (15.8% faster), RSS +1.9%\n\nFive-repeat medians on public repositories also improved:\n\n  git.git:  12.31s -\u003e 10.70s (13.1% faster)\n  libgit2:   3.35s -\u003e  2.88s (14.0% faster)\n  redis:     6.52s -\u003e  5.64s (13.5% faster)\n  cpython:  33.02s -\u003e 31.44s (4.8% faster)\n\nThe standard p5302 perf test on a smaller git.git fixture was neutral:\n\n  5302.9 index-pack default threads:\n    11.21(38.07+1.33) -\u003e 11.16(37.90+1.31), -0.4%\n\nt/t5302-pack-index.sh passed, and GitGitGadget\u0027s linux-leaks CI also\nexercised that test under SANITIZE\u003dleak.\n\nSigned-off-by: Arijit Banerjee \u003carijit@effectiveailabs.com\u003e\nSigned-off-by: Junio C Hamano \u003cgitster@pobox.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "cf0bd8280dca83e9da845e4010d9d0c4d0e7d5d4",
      "old_mode": 33188,
      "old_path": "builtin/index-pack.c",
      "new_id": "027c64b522ebb26e88581f5f3266f963d1e586f9",
      "new_mode": 33188,
      "new_path": "builtin/index-pack.c"
    }
  ]
}
