)]}'
{
  "commit": "f37750ab476e7ee535315d090bf48351e8cc74aa",
  "tree": "7709edb33e7085514d229dd97c99408319d5a890",
  "parents": [
    "01573f7b004d514b8890441f1079178ef66a70c4"
  ],
  "author": {
    "name": "Nathan Harmata",
    "email": "nharmata@google.com",
    "time": "Wed Sep 07 14:58:14 2016 +0000"
  },
  "committer": {
    "name": "Yun Peng",
    "email": "pcloudy@google.com",
    "time": "Thu Sep 08 08:43:46 2016 +0000"
  },
  "message": "A bunch of small changes to prepare SkyQueryEnvironment for full-parallel evaluation:\n-Rename QueryExpression#evalConcurrently to QueryExpression#parEval. (parallelism is not concurrency! See https://existentialtype.wordpress.com/2011/03/17/parallelism-is-not-concurrency/)\n-Have SkyQueryEnvironment#eval (used recursively in #evaluateQuery) dynamically call QueryExpression#parEval when appropriate.\n-Delete QueryExpression#canEvalConcurrently.\n-Add ThreadSafety annotations in a bunch of relevant places in the query codebase.\n-A bunch of testing infrastructure to test parallel query evaluation.\n-TODOs for implementing parallel evaluation of all QueryExpression nodes.\n\n--\nMOS_MIGRATED_REVID\u003d132436340\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "769bdb29bdd296a8d48977cb223678c55d0f1877",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/query2/AbstractBlazeQueryEnvironment.java",
      "new_id": "cd597a66cd3cea51e76b82a05ec25f15c4787f8f",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/query2/AbstractBlazeQueryEnvironment.java"
    },
    {
      "type": "modify",
      "old_id": "65b853b473ee03256595c83ec8914fb2bf2e6f44",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/query2/BlazeQueryEnvironment.java",
      "new_id": "1b1749fe085aa8ba8cf50f20baaad1ec51982e3d",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/query2/BlazeQueryEnvironment.java"
    },
    {
      "type": "modify",
      "old_id": "c2f8f805922468a72e84f65f7a1279d1959b6274",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/query2/QueryEnvironmentFactory.java",
      "new_id": "42b9f203a42b42efe1ab06de2e781f0b4fe5a4a1",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/query2/QueryEnvironmentFactory.java"
    },
    {
      "type": "modify",
      "old_id": "407c4f24de1023f064958e17c1c4718d1f95dd77",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/query2/SkyQueryEnvironment.java",
      "new_id": "6623ca695aef0735cefb6a096416aeb1a635fb36",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/query2/SkyQueryEnvironment.java"
    },
    {
      "type": "modify",
      "old_id": "364485354a8fb4198b80f83071005afde8b298dd",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/query2/engine/BinaryOperatorExpression.java",
      "new_id": "ac5e000cbb1b10c0875a79dbf03c9dcaa149dd97",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/query2/engine/BinaryOperatorExpression.java"
    },
    {
      "type": "modify",
      "old_id": "59fb70ced3f1069962507c60e93935ea721b4474",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/query2/engine/FunctionExpression.java",
      "new_id": "5f2b1aba1b6d78da0aef9969dd506f36332dd6ca",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/query2/engine/FunctionExpression.java"
    },
    {
      "type": "modify",
      "old_id": "3c3c27338dae2bd55df4e60068074e3f67609fc7",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/query2/engine/LetExpression.java",
      "new_id": "64d94da19ab86031df408c0d89b8a88ed4a1ccdc",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/query2/engine/LetExpression.java"
    },
    {
      "type": "modify",
      "old_id": "9653841b1b4dbd81d7541b6cd40171571864d585",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/query2/engine/QueryEnvironment.java",
      "new_id": "3abe19be2b462821725038683ca45ad6d39c3ab9",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/query2/engine/QueryEnvironment.java"
    },
    {
      "type": "modify",
      "old_id": "d0de7c0d643f5ca9c8f167013643f61824b6d59d",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/query2/engine/QueryExpression.java",
      "new_id": "667fcecf27d10a4e0cf179a097aa0472c3d6a884",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/query2/engine/QueryExpression.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7255a47dd7a7447d97c834fccf9f26bd49535461",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/query2/engine/QueryExpressionEvalListener.java"
    },
    {
      "type": "modify",
      "old_id": "5ccdec899e60a5c42dedde6ba14082610dc97d16",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/query2/engine/SetExpression.java",
      "new_id": "ac4b460f40fa763f5ba8d20580f873302dedcf3e",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/query2/engine/SetExpression.java"
    },
    {
      "type": "modify",
      "old_id": "bb24022ee12a030415f7a1a4ec552d9e1161734e",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/query2/engine/TargetLiteral.java",
      "new_id": "8b718ab01aaeba9dfc1d825c6f4ad4ac6c4fac4b",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/query2/engine/TargetLiteral.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d39172819fa53311a15d7ccb9a99c124420904b8",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/query2/engine/ThreadSafeCallback.java"
    },
    {
      "type": "modify",
      "old_id": "1c23334f4564afd63052f4a19e106fe5a306bca5",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/query2/engine/VariableContext.java",
      "new_id": "9feb85242f796cbc291d4d787fcf926ee8ab098c",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/query2/engine/VariableContext.java"
    },
    {
      "type": "modify",
      "old_id": "2a336da0bf53f4181226b24895c8afa014fd2061",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/rules/genquery/GenQuery.java",
      "new_id": "849238a44abd18b569e1876202330018aac2577f",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/rules/genquery/GenQuery.java"
    },
    {
      "type": "modify",
      "old_id": "9be185eea01d4a95c181e3661670de33ba6cb709",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/runtime/commands/QueryCommand.java",
      "new_id": "565f7a82cfd90f648ab768c9e17444104999213a",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/runtime/commands/QueryCommand.java"
    }
  ]
}
