)]}'
{
  "commit": "bc1460594fe2bd4391cea87f0a75f349b276d1bb",
  "tree": "6805bb2e238e11ab2cbfbf8b05eb31421f622430",
  "parents": [
    "b6bc367c64938cff1ddf3d410099f9328015c188"
  ],
  "author": {
    "name": "chiwang",
    "email": "chiwang@google.com",
    "time": "Thu Aug 27 04:39:52 2026 -0700"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Thu Aug 27 04:42:14 2026 -0700"
  },
  "message": "Restore dedicated thread pool for include scanning in async execution.\n\nInclude scanning (`IncludeParser`) is predominantly a CPU-bound workload (regex and token parsing over C++ headers) rather than I/O-bound. Virtual threads do not unmount from carrier threads during CPU-intensive processing, which can monopolize the JVM carrier thread pool (`ForkJoinPool`) and starve other async tasks under high concurrency.\n\nThis change restores the dedicated bounded platform thread pool (`options.getIncludeScanningParallelism()`) for include scanning in async execution to properly bound CPU concurrency.\n\nPiperOrigin-RevId: 971878996\nChange-Id: I053f071eee970f4c06136b8b8850098edc87e87c\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "6b1c8f95912ad8d103c600dab52be2cf977aabe7",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/includescanning/IncludeScanningModule.java",
      "new_id": "9a2d24720c3cb9be0b8f8df48583748ab0ab8ad8",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/includescanning/IncludeScanningModule.java"
    }
  ]
}
