)]}'
{
  "commit": "0daee310fb87df5c5167fc6efdceddd9f1f34332",
  "tree": "b2466442b6c3430ca09203536ace814f2a2fc94e",
  "parents": [
    "9def1a541ad79c7eaa794cd312c24d6abc316d31"
  ],
  "author": {
    "name": "Saša Živkov",
    "email": "sasa.zivkov@sap.com",
    "time": "Thu Jul 23 14:12:20 2026 +0200"
  },
  "committer": {
    "name": "Sasa Zivkov",
    "email": "sasa.zivkov@sap.com",
    "time": "Thu Aug 06 14:03:21 2026 +0200"
  },
  "message": "JGroupsForwarder index: carry metaSha/targetSha through IndexChange command\n\nThe IndexChange command was not carrying metaSha and targetSha from\nIndexEvent, so CommandProcessorImpl passed Optional.empty() to\nForwardedIndexChangeHandler. This bypassed the isChangeUpToDate()\nstaleness guard, which relies on metaSha to verify that the meta-ref\nobject is visible through JGit before accepting the index result as\nup to date.\n\nExtend IndexChange and its subclasses to carry targetSha and metaSha\nfrom IndexEvent. CommandProcessorImpl reconstructs IndexEvent from\nthose fields and passes it to the handler, enabling Failsafe to retry\nindexing until the meta-ref becomes visible.\n\nChange-Id: Ib133f58613542e34a81f5b43b8cada1918ca538f\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "cadfaeaf13038c11746968b2c64daebc5580f298",
      "old_mode": 33188,
      "old_path": "src/main/java/com/ericsson/gerrit/plugins/highavailability/forwarder/commands/CommandProcessorImpl.java",
      "new_id": "635ef4f93b225f3bf46958d44ede53bd917eb35b",
      "new_mode": 33188,
      "new_path": "src/main/java/com/ericsson/gerrit/plugins/highavailability/forwarder/commands/CommandProcessorImpl.java"
    },
    {
      "type": "modify",
      "old_id": "df79eca4502acec2d214ce93732cac0b5217a2e9",
      "old_mode": 33188,
      "old_path": "src/main/java/com/ericsson/gerrit/plugins/highavailability/forwarder/commands/IndexChange.java",
      "new_id": "c176c50815dd629f1bf77b60d9d1247860d54191",
      "new_mode": 33188,
      "new_path": "src/main/java/com/ericsson/gerrit/plugins/highavailability/forwarder/commands/IndexChange.java"
    },
    {
      "type": "modify",
      "old_id": "225738fec4d1efc995e207384b5b8aff1e663a8b",
      "old_mode": 33188,
      "old_path": "src/main/java/com/ericsson/gerrit/plugins/highavailability/forwarder/jgroups/JGroupsForwarder.java",
      "new_id": "a66dd41c0ba67d4833ea01e06b7c94fa586cab6e",
      "new_mode": 33188,
      "new_path": "src/main/java/com/ericsson/gerrit/plugins/highavailability/forwarder/jgroups/JGroupsForwarder.java"
    },
    {
      "type": "modify",
      "old_id": "bca7801da73f1c72d44023054682ef340d7013f1",
      "old_mode": 33188,
      "old_path": "src/test/java/com/ericsson/gerrit/plugins/highavailability/forwarder/jgroups/MessageProcessorTest.java",
      "new_id": "39493a18b9a895ff708554cb6de67a8797bc5a82",
      "new_mode": 33188,
      "new_path": "src/test/java/com/ericsson/gerrit/plugins/highavailability/forwarder/jgroups/MessageProcessorTest.java"
    }
  ]
}
