)]}'
{
  "commit": "9de7bfa7a64ac6089884d4b0814a479ef3ddc41d",
  "tree": "35813bf40e997949813503402a8f0ee5d6c1afa9",
  "parents": [
    "b22b2047986ae9bc3d587e9e9e084f4e1ffa09ad"
  ],
  "author": {
    "name": "Luca Milanesio",
    "email": "luca.milanesio@gmail.com",
    "time": "Tue Mar 21 17:56:38 2023 +0000"
  },
  "committer": {
    "name": "Luca Milanesio",
    "email": "luca.milanesio@gmail.com",
    "time": "Thu Mar 23 14:10:55 2023 +0000"
  },
  "message": "Do not accumulate replication events with retrying tasks\n\nWhen a replication tasks is retrying is always discovered\nin the search for pending tasks for a source URI. Adding more\nwork to a replication tasks that failed and is potentially\nstruggling is a bad idea.\n\n1. If a replication task failed it means that there are\n   temporary or persistent issues in completing the task.\n   Adding more refs to the same failing replication task\n   would put those refs into a future execution that may\n   never succeed.\n\n2. If the replication tasks was just too heavy and struggled\n   to pass because of timeouts or bandwidth issues, adding\n   yet another ref to fetch would put more burden to it\n   and making the retries more likely to fail.\n\nAvoiding to group with a retrying replication task may\nadd more latency because of the extra operation; however, it\nwould give more chances to succeed.\n\nBug: Issue 16789\nChange-Id: Ifbe2939be69ad4e5d89e8a49402e9949a0956473\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "0162ad068dff65cf367a1cb244e3aa85dba9d7a7",
      "old_mode": 33188,
      "old_path": "src/main/java/com/googlesource/gerrit/plugins/replication/pull/Source.java",
      "new_id": "45ab7e22c2ed36f5f337c2fc2cde2e8f9cce0f4f",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/replication/pull/Source.java"
    }
  ]
}
