)]}'
{
  "commit": "1b91de7bc22f286c2231de9489f625ee0dd15379",
  "tree": "d08d37aa98e5a7df29f645cca555384a814ee8f0",
  "parents": [
    "53c4506638a09b811eb9ceb15d7e45e15a5f423d"
  ],
  "author": {
    "name": "dmcardle",
    "email": "dmcardle@google.com",
    "time": "Wed Jun 18 10:47:04 2025 -0700"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Wed Jun 18 10:48:08 2025 -0700"
  },
  "message": "Fix data races in end-to-end tests\n\nI discovered that I can reliably reproduce data races in two end-to-end tests by repeating the tests 100 times with TSan enabled. Like so:\n\n```\nblaze test --config\u003dtsan --runs_per_test\u003d100 //third_party/quic/core/http:end_to_end_test\n```\n\nThe fix I came up with is to pause the server before calling `GetServerConnection()` and `GetServerSession()`. Both of these functions call, or transitively call, `GetDispatcher()`, which requires that `server_thread_` is paused.\n\nPerhaps we can leverage thread safety annotations to make the compiler check this in the future.\n\nPiperOrigin-RevId: 772980453\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "6ae847b8a206457d0b545337e0fefcb980792139",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/http/end_to_end_test.cc",
      "new_id": "090ef6db66656af3187b91112022925ebb2be2ff",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/http/end_to_end_test.cc"
    }
  ]
}
