)]}'
{
  "commit": "91f2c8cb366e21c20544f531be710fdfa5eb3afb",
  "tree": "cc5fd006de2cc90faf6472688926794ab997a644",
  "parents": [
    "939ba522572d1161c6c6aee161e4aca3e128386e"
  ],
  "author": {
    "name": "Patrick Hiesel",
    "email": "hiesel@google.com",
    "time": "Fri May 29 10:10:35 2020 +0200"
  },
  "committer": {
    "name": "Patrick Hiesel",
    "email": "hiesel@google.com",
    "time": "Fri May 29 11:05:59 2020 +0200"
  },
  "message": "Evict All-Projects after before reading it in a GitRefUpdate\n\nThe work on the project cache has surfaced an interesting\nbug. Before this rework, the project cache was disabled in\ntests, meaning every call to it would reload from disk.\nNow, it is enabled.\n\nThis broke the SuperManifest tests because the plugin\nlistens to GitRefUpdated events on All-Projects,\nrefs/meta/config and keeps an internal state of parsed\nconfigs. GitRefUpdated hooks are called before\nReceiveCommit evicts the project cache in #postUpdate.\n\nThis commit adds a band-aid to evict All-Projects before\nreading the confing. This will only be triggered on\nconfig updates to All-Projects. It means evicting\nAll-Projects twice on update.\n\nChange-Id: I34def3f65bbead56462836e553ae03a0b4c79fa8\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "2f1dfaa6913fd59fd9f74e2b93d3c970d79704b8",
      "old_mode": 33188,
      "old_path": "java/com/googlesource/gerrit/plugins/supermanifest/SuperManifestRefUpdatedListener.java",
      "new_id": "43602ac1362ec1526a752eb778564b8aa4797f4f",
      "new_mode": 33188,
      "new_path": "java/com/googlesource/gerrit/plugins/supermanifest/SuperManifestRefUpdatedListener.java"
    }
  ]
}
