)]}'
{
  "commit": "b881d422b7f483b4270eacc3fa56affd962bae3e",
  "tree": "c65d40792454e1289992cf09dfefbcdf6012d5b5",
  "parents": [
    "c9275a8d4254b6f3f575788d64fdac6c346a3e2f"
  ],
  "author": {
    "name": "Michael Anthony Knyszek",
    "email": "mknyszek@google.com",
    "time": "Wed Jul 31 17:30:16 2024 +0000"
  },
  "committer": {
    "name": "Gopher Robot",
    "email": "gobot@golang.org",
    "time": "Wed Jul 31 19:34:20 2024 +0000"
  },
  "message": "sweet: split benchmark results from log and/or debug output\n\nCurrently benchmark output all comes out in one big stream and ends up\nin the results/\u003cbenchmark\u003e/\u003ctoolchain-name\u003e.results file. Recently, we\nstarted dumping a lot more logging information from benchmarks by\ndefault, but this has caused problems with benchmark result parsing,\nsince they contain lines that look naively like key-value pairs in the\nbenchmark format.\n\nThis change resolves this problem by splitting the benchmark result\nstream from the log and/or debug output stream, placing the latter in\nresults/\u003cbenchmark\u003e/toolchain-name\u003e.log. By convention, we make it so\nthat all benchmark driver binaries emit benchmark results to stdout and\neverything else to stderr to easily separate the streams in the harness\nand redirect them to different files.\n\nChange-Id: Iea4cc253a72db176378a6cc9f68b7f36b9ff60ae\nReviewed-on: https://go-review.googlesource.com/c/benchmarks/+/602135\nReviewed-by: Michael Pratt \u003cmpratt@google.com\u003e\nAuto-Submit: Michael Knyszek \u003cmknyszek@google.com\u003e\nLUCI-TryBot-Result: Go LUCI \u003cgolang-scoped@luci-project-accounts.iam.gserviceaccount.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "01cf6a8190e44e3f7a65b3beb90d5f7f2f45f5c8",
      "old_mode": 33188,
      "old_path": "sweet/benchmarks/go-build/main.go",
      "new_id": "3edc700f96fb3a6e8274641a6fca90f518e045fb",
      "new_mode": 33188,
      "new_path": "sweet/benchmarks/go-build/main.go"
    },
    {
      "type": "modify",
      "old_id": "2ae86881b288b601cf053d26a13265ddd17ad7ab",
      "old_mode": 33188,
      "old_path": "sweet/benchmarks/internal/driver/driver.go",
      "new_id": "403c8fb7dad5e56e844ad85aaa2dda7a9e32fb99",
      "new_mode": 33188,
      "new_path": "sweet/benchmarks/internal/driver/driver.go"
    },
    {
      "type": "modify",
      "old_id": "d4c09f9ade7018e258fdf492a784170d2b9ece30",
      "old_mode": 33188,
      "old_path": "sweet/cmd/sweet/benchmark.go",
      "new_id": "8a0e07c7eff600aadaeec948115b6304f41f9508",
      "new_mode": 33188,
      "new_path": "sweet/cmd/sweet/benchmark.go"
    },
    {
      "type": "modify",
      "old_id": "9d58ea9fac2bfaa28299741dcdc56eecbab31eef",
      "old_mode": 33188,
      "old_path": "sweet/cmd/sweet/integration_test.go",
      "new_id": "e87702e98ad6bc4b4e43e94333e42f664f56cfaf",
      "new_mode": 33188,
      "new_path": "sweet/cmd/sweet/integration_test.go"
    },
    {
      "type": "modify",
      "old_id": "01e77245d4fdfc735e7849df38d625c3848488cf",
      "old_mode": 33188,
      "old_path": "sweet/common/harness.go",
      "new_id": "3df943ee656949af6c196a4412cd3694e80ba5da",
      "new_mode": 33188,
      "new_path": "sweet/common/harness.go"
    },
    {
      "type": "modify",
      "old_id": "04cecb79f683d68f243b542c1f0b219bf9244679",
      "old_mode": 33188,
      "old_path": "sweet/harnesses/cockroachdb.go",
      "new_id": "3053791420ac334ab8c251b66dfefbe49d803c59",
      "new_mode": 33188,
      "new_path": "sweet/harnesses/cockroachdb.go"
    },
    {
      "type": "modify",
      "old_id": "dd15ae857fcff110b07d44730f1d55cded40b462",
      "old_mode": 33188,
      "old_path": "sweet/harnesses/etcd.go",
      "new_id": "21cd0dc5599d3fdb4ee3426cd665ca5e5b5ef548",
      "new_mode": 33188,
      "new_path": "sweet/harnesses/etcd.go"
    },
    {
      "type": "modify",
      "old_id": "cb78cf2c3ebc614f7dd4b6814e883c5386a00fe3",
      "old_mode": 33188,
      "old_path": "sweet/harnesses/go-build.go",
      "new_id": "4648a50154d1e44d6ccfab6397f234849ed2f0e8",
      "new_mode": 33188,
      "new_path": "sweet/harnesses/go-build.go"
    },
    {
      "type": "modify",
      "old_id": "f45cd07d3d782efc22466b62ebded9e85d7bd5df",
      "old_mode": 33188,
      "old_path": "sweet/harnesses/gvisor.go",
      "new_id": "2a0f692442f0514ed1d59a140d5d85d83cd2101c",
      "new_mode": 33188,
      "new_path": "sweet/harnesses/gvisor.go"
    },
    {
      "type": "modify",
      "old_id": "af1d71c224490b188086cc37965226ba11c4c971",
      "old_mode": 33188,
      "old_path": "sweet/harnesses/local.go",
      "new_id": "34fa2ac9b0edf267501a981753d10bc4e2080623",
      "new_mode": 33188,
      "new_path": "sweet/harnesses/local.go"
    },
    {
      "type": "modify",
      "old_id": "db626b2c35bdd135e2e193c9b6442ba1236d47d6",
      "old_mode": 33188,
      "old_path": "sweet/harnesses/tile38.go",
      "new_id": "62643a0633bfeb43605772fdb35e0b69739e2070",
      "new_mode": 33188,
      "new_path": "sweet/harnesses/tile38.go"
    }
  ]
}
