)]}'
{
  "commit": "bc8e9ae00dfd7c048e17844fd002793ebe4f1361",
  "tree": "b05a3408c6ec89961ea0b723e024247c7b0e6be0",
  "parents": [
    "a22850a963faebee8458e162ca0466369483fa4f"
  ],
  "author": {
    "name": "Saša Živkov",
    "email": "sasa.zivkov@sap.com",
    "time": "Fri May 15 12:21:17 2026 +0200"
  },
  "committer": {
    "name": "Saša Živkov",
    "email": "sasa.zivkov@sap.com",
    "time": "Fri May 15 15:05:49 2026 +0200"
  },
  "message": "Add an option to drop pooled connection after a 503 response\n\nWe observe that sometimes Gerrit primary pods get a 503 response when\nsending REST calls to each other. This happens when istio is used to\nmanage connections and one of the pods is either down or restarted. In\nsuch cases, istio often continues to return 503 response even if the\ntarget pod, and its IP address, is unavailable. The problem continues\nuntil such a connection eventually expires and gets removed from the\nconnection pool. This often leads to missed or delayed messages between\nthe primary pods which leads to diverging indexes and inconsistent\ncaches.\n\nThis change adds a new option, http.reuseConnectionAfter503. When set to\nfalse, a connection over which we receive a 503 response will be\nimmediately declared as non-reusable and will be removed from the\napache\u0027s http client connection pool.\n\nChange-Id: I441c3ade9561e44a8841f346928d1273e38e39df\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "4dc9f45d047efcd4434ecc06557ad24da0839421",
      "old_mode": 33188,
      "old_path": "src/main/java/com/ericsson/gerrit/plugins/highavailability/Configuration.java",
      "new_id": "15425d36c2464d1ddd84794291b383fac1af9087",
      "new_mode": 33188,
      "new_path": "src/main/java/com/ericsson/gerrit/plugins/highavailability/Configuration.java"
    },
    {
      "type": "modify",
      "old_id": "a71e03f0a62b82e03e209a9a55b86c72922b3534",
      "old_mode": 33188,
      "old_path": "src/main/java/com/ericsson/gerrit/plugins/highavailability/forwarder/rest/HttpClientProvider.java",
      "new_id": "fc90a1077385386a1b9fbd0fc99ff71497149333",
      "new_mode": 33188,
      "new_path": "src/main/java/com/ericsson/gerrit/plugins/highavailability/forwarder/rest/HttpClientProvider.java"
    },
    {
      "type": "modify",
      "old_id": "737b3540f5b7d6928c96eeb04adb9a8a90866eda",
      "old_mode": 33188,
      "old_path": "src/main/resources/Documentation/config.md",
      "new_id": "1a3a498acc6a8314e00e584dc1699ee0f0c5b15a",
      "new_mode": 33188,
      "new_path": "src/main/resources/Documentation/config.md"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "3bd3b145b15ef80e0ae7afeb3c9bf83308db7dcc",
      "new_mode": 33188,
      "new_path": "src/test/java/com/ericsson/gerrit/plugins/highavailability/forwarder/rest/HttpClientProviderConnectionReuseTest.java"
    }
  ]
}
