)]}'
{
  "commit": "fbec8e2ad1dcbebbbc96491f8b6b208f5b3ac91f",
  "tree": "36a7fbcc7a222969063d778f2e7817c74af5d22e",
  "parents": [
    "fb056bccd02762978c59f9b2c70a669901893229"
  ],
  "author": {
    "name": "Chi Wang",
    "email": "chiwang@google.com",
    "time": "Tue Feb 14 09:17:21 2023 -0800"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Tue Feb 14 09:18:56 2023 -0800"
  },
  "message": "Reduce flakiness on Windows for BwoB tests\n\n`BuildWithoutTheBytesIntegrationTest` has been flaky on Windows. Example error leads to file system errors.\n\n```\n1) incrementalBuild_treeArtifacts_correctlyProducesNewTree(com.google.devtools.build.lib.remote.BuildWithoutTheBytesIntegrationTest)\njava.io.IOException: C:/b/iahsqj7l/execroot/io_bazel/_tmp/b474bcb9956744b234827924ec01952d/remote.pid_file (Permission denied)\n\tat com.google.devtools.build.lib.windows.WindowsFileSystem.delete(WindowsFileSystem.java:60)\n\tat com.google.devtools.build.lib.vfs.Path.delete(Path.java:587)\n\tat com.google.devtools.build.lib.buildtool.util.BuildIntegrationTestCase.bestEffortDeleteTreesBelow(BuildIntegrationTestCase.java:387)\n\tat com.google.devtools.build.lib.buildtool.util.BuildIntegrationTestCase.cleanUp(BuildIntegrationTestCase.java:364)\n\t... 26 trimmed\nCaused by: java.nio.file.AccessDeniedException: C:/b/iahsqj7l/execroot/io_bazel/_tmp/b474bcb9956744b234827924ec01952d/remote.pid_file\n\tat com.google.devtools.build.lib.windows.WindowsFileOperations.deletePath(WindowsFileOperations.java:279)\n\tat com.google.devtools.build.lib.windows.WindowsFileSystem.delete(WindowsFileSystem.java:56)\n\t... 30 more\n2) downloadToplevel_treeArtifacts(com.google.devtools.build.lib.remote.BuildWithoutTheBytesIntegrationTest)\njava.io.IOException: C:/b/iahsqj7l/execroot/io_bazel/_tmp/b474bcb9956744b234827924ec01952d/remote.work_path already exists\n\tat com.google.devtools.build.lib.remote.util.IntegrationTestUtils.ensureMkdir(IntegrationTestUtils.java:116)\n\tat com.google.devtools.build.lib.remote.util.IntegrationTestUtils.startWorker(IntegrationTestUtils.java:87)\n\tat com.google.devtools.build.lib.remote.util.IntegrationTestUtils.startWorker(IntegrationTestUtils.java:77)\n\tat com.google.devtools.build.lib.remote.BuildWithoutTheBytesIntegrationTest.setupOptions(BuildWithoutTheBytesIntegrationTest.java:49)\n\tat com.google.devtools.build.lib.buildtool.util.BuildIntegrationTestCase.createRuntimeWrapper(BuildIntegrationTestCase.java:317)\n\tat com.google.devtools.build.lib.buildtool.util.BuildIntegrationTestCase.createFilesAndMocks(BuildIntegrationTestCase.java:234)\n```\n\nThis PR fixes 1) by not using pid but checking port status directly to wait for the remote worker to start up and 2) by cleaning up resources used by remote worker after each test case.\n\nCloses #17479.\n\nPiperOrigin-RevId: 509549826\nChange-Id: Icef2be46d5f2a6025cad0cefcf766ae16b4552d8\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "a65bcfc0ba3d2580d92500bf419904aeae05f249",
      "old_mode": 33188,
      "old_path": "src/test/java/com/google/devtools/build/lib/remote/BUILD",
      "new_id": "ab9e4802ce682e898788d3eae0f52b8a3c116d2f",
      "new_mode": 33188,
      "new_path": "src/test/java/com/google/devtools/build/lib/remote/BUILD"
    },
    {
      "type": "modify",
      "old_id": "44e204f06b53f7fe053fd34d4566e2cabf5ffb13",
      "old_mode": 33188,
      "old_path": "src/test/java/com/google/devtools/build/lib/remote/util/IntegrationTestUtils.java",
      "new_id": "e2d2df95f93f8cf9fd5fc2f633444dff0d56cf0c",
      "new_mode": 33188,
      "new_path": "src/test/java/com/google/devtools/build/lib/remote/util/IntegrationTestUtils.java"
    }
  ]
}
