)]}'
{
  "commit": "3b2b62b760ca0afcf6c0a72aecb2e36e6df05ffc",
  "tree": "6cc1d7bae8875dc828557c27ac6775df3570564f",
  "parents": [
    "591bc15cc8dd4100b4f2c1fa2773cab69e2ef9d3"
  ],
  "author": {
    "name": "Patrick Hiesel",
    "email": "hiesel@google.com",
    "time": "Wed Jun 27 16:25:28 2018 +0200"
  },
  "committer": {
    "name": "Patrick Hiesel",
    "email": "hiesel@google.com",
    "time": "Thu Jul 12 09:22:18 2018 +0200"
  },
  "message": "Add ref_states to ProjectFields\n\nThis commit adds a new field called ref_states to the ProjectIndex. This\nfield can be used to perform staleness detection based on NoteDb ref\nstates. We store the HEAD SHA1s in 40 digit hex notation for the project\nin question as well as all of it\u0027s ancestors.\n\nStoring the ancestors ref states as well is necessary because the index\nstores the names of all ancestors, so we need to detect when the\nproject\u0027s hirarchy changes and we get out of sync.\n\nThis approach follows what was done for changes, accounts and groups.\n\nA subsequent commit will build a staleness checker and wire it up.\n\nChange-Id: I08efd4286b4fd5c577c0863802bcdf051972f5cf\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "f4a8da35e205e6ca67f92c38d654a9d11ea7514e",
      "old_mode": 33188,
      "old_path": "java/com/google/gerrit/acceptance/ProjectResetter.java",
      "new_id": "1fed8f8c9f3b828ba72b97f815dee50ee120f7df",
      "new_mode": 33188,
      "new_path": "java/com/google/gerrit/acceptance/ProjectResetter.java"
    },
    {
      "type": "modify",
      "old_id": "2442b5932f87f3b918cedd35d97cd43f2a2a4654",
      "old_mode": 33188,
      "old_path": "java/com/google/gerrit/index/BUILD",
      "new_id": "6604ca14b7c0ae29622a71c38dd4ba4008a2157f",
      "new_mode": 33188,
      "new_path": "java/com/google/gerrit/index/BUILD"
    },
    {
      "type": "rename",
      "old_id": "6b893f0855f4363e12de776a15b33db49a8e1ee4",
      "old_mode": 33188,
      "old_path": "java/com/google/gerrit/server/index/RefState.java",
      "new_id": "f0e465d43db6aecee46ef4eb2594bed1ce6ec43e",
      "new_mode": 33188,
      "new_path": "java/com/google/gerrit/index/RefState.java",
      "score": 98
    },
    {
      "type": "modify",
      "old_id": "9d6b571c80bd41d6a42fe265e3e25af7d647c304",
      "old_mode": 33188,
      "old_path": "java/com/google/gerrit/index/project/ProjectData.java",
      "new_id": "7365660e4ed8f0139ef5db1fb7be78469223b28d",
      "new_mode": 33188,
      "new_path": "java/com/google/gerrit/index/project/ProjectData.java"
    },
    {
      "type": "modify",
      "old_id": "1c2f629bca39a4e31787e5c31c5983ca9ab32b93",
      "old_mode": 33188,
      "old_path": "java/com/google/gerrit/index/project/ProjectField.java",
      "new_id": "041813ca3ac3ea71259837dac32c7a31ede26256",
      "new_mode": 33188,
      "new_path": "java/com/google/gerrit/index/project/ProjectField.java"
    },
    {
      "type": "modify",
      "old_id": "cbea4feedc0bd100047d7edc606f76e9989ffe7b",
      "old_mode": 33188,
      "old_path": "java/com/google/gerrit/index/project/ProjectSchemaDefinitions.java",
      "new_id": "4d212fbdb4d08123f196986ed3ccb5f5a09b0053",
      "new_mode": 33188,
      "new_path": "java/com/google/gerrit/index/project/ProjectSchemaDefinitions.java"
    },
    {
      "type": "modify",
      "old_id": "921667e28b916bd59f850cef85fe13898d257704",
      "old_mode": 33188,
      "old_path": "java/com/google/gerrit/reviewdb/client/Project.java",
      "new_id": "996f1ecc4fb83b5c797c84da105e6657a4922447",
      "new_mode": 33188,
      "new_path": "java/com/google/gerrit/reviewdb/client/Project.java"
    },
    {
      "type": "modify",
      "old_id": "31e2ada95df34ca3bd7f8052e2923f86d715572e",
      "old_mode": 33188,
      "old_path": "java/com/google/gerrit/server/index/account/AccountField.java",
      "new_id": "111991ce93807f34ad3f0629864cdbdfef9c6e16",
      "new_mode": 33188,
      "new_path": "java/com/google/gerrit/server/index/account/AccountField.java"
    },
    {
      "type": "modify",
      "old_id": "6403d3d88b4c1c9d7021ae0461310d002348cffd",
      "old_mode": 33188,
      "old_path": "java/com/google/gerrit/server/index/account/StalenessChecker.java",
      "new_id": "0c3e32932b539028d4e2d2359ced587b78c12e33",
      "new_mode": 33188,
      "new_path": "java/com/google/gerrit/server/index/account/StalenessChecker.java"
    },
    {
      "type": "modify",
      "old_id": "3375ce7771e13a48ce6bf1cb7de85d3c5f9bd4b5",
      "old_mode": 33188,
      "old_path": "java/com/google/gerrit/server/index/change/ChangeField.java",
      "new_id": "5d12e79cfe0d46bc61051a3d7c18eb27b2c543e0",
      "new_mode": 33188,
      "new_path": "java/com/google/gerrit/server/index/change/ChangeField.java"
    },
    {
      "type": "modify",
      "old_id": "642385c7d65282645550828ae0d6be40975b85db",
      "old_mode": 33188,
      "old_path": "java/com/google/gerrit/server/index/change/StalenessChecker.java",
      "new_id": "0508b60d62dcd231669f5812b7ab400f2027ae6c",
      "new_mode": 33188,
      "new_path": "java/com/google/gerrit/server/index/change/StalenessChecker.java"
    },
    {
      "type": "modify",
      "old_id": "44aa83bb5190201c937fd6f3e5239d7290f5622f",
      "old_mode": 33188,
      "old_path": "java/com/google/gerrit/server/project/ProjectConfig.java",
      "new_id": "e3638b665af660c81e9c00f76fc9942a4c2f6af2",
      "new_mode": 33188,
      "new_path": "java/com/google/gerrit/server/project/ProjectConfig.java"
    },
    {
      "type": "modify",
      "old_id": "87dbcfccd01cd051bab17e5aac615e266e5c2e2e",
      "old_mode": 33188,
      "old_path": "java/com/google/gerrit/server/project/ProjectState.java",
      "new_id": "e36ca4f02fc53b40cce4776771a517d89d5d5471",
      "new_mode": 33188,
      "new_path": "java/com/google/gerrit/server/project/ProjectState.java"
    },
    {
      "type": "modify",
      "old_id": "768c20b7b867d8ebd1397fb89ec99cfa286fd8a8",
      "old_mode": 33188,
      "old_path": "javatests/com/google/gerrit/acceptance/api/project/BUILD",
      "new_id": "97c6f33f4353a319668551bd0cdca08c6a498f67",
      "new_mode": 33188,
      "new_path": "javatests/com/google/gerrit/acceptance/api/project/BUILD"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "bb4502ece4fb9411c173dacf1a522b49889c162c",
      "new_mode": 33188,
      "new_path": "javatests/com/google/gerrit/acceptance/api/project/ProjectIndexerIT.java"
    },
    {
      "type": "modify",
      "old_id": "acb33e99329bd06b6982f7b826336a6b106daf3a",
      "old_mode": 33188,
      "old_path": "javatests/com/google/gerrit/server/index/change/StalenessCheckerTest.java",
      "new_id": "51bda661e51a45d42c1990f41a3049a4237bbd6c",
      "new_mode": 33188,
      "new_path": "javatests/com/google/gerrit/server/index/change/StalenessCheckerTest.java"
    }
  ]
}
