)]}'
{
  "commit": "736795b48443727ef3bfe9ed2ce8d7db49226a47",
  "tree": "56eae406ae1f2031c21d208a5f5679706b27d2ec",
  "parents": [
    "dfbc9d03bc2c98729af947a294858f72a51046d3"
  ],
  "author": {
    "name": "Luca Milanesio",
    "email": "luca.milanesio@gmail.com",
    "time": "Wed May 05 22:39:03 2021 +0100"
  },
  "committer": {
    "name": "Luca Milanesio",
    "email": "luca.milanesio@gmail.com",
    "time": "Fri May 07 14:56:32 2021 +0100"
  },
  "message": "Avoid multiple auth requests for Git/HTTP access\n\nWhen authenticating incoming Git calls over HTTP\nthe BasicAuth filter was called 3 times per call\ntriggering multiple authentications against the backend.\n\nExample: Git protocol v1 triggering 2x HTTP calls,\none for refs-advertisement and another for upload-pack\nwas generating 6x authentication requests.\n\nWhen the backend is Gerrit\u0027s HTTP password authentication\nthe operation is quite fast making the impact of the extra\nauthentications negligible. However, when authenticating\nagainst a slower backend (e.g. corporate LDAP with groups\nresolution) the extra authentication calls were introducing\nunneeded latency and generating extra workload to the\nLDAP server.\n\nNOTE: It is still not possible to have one single authenticated\nsession for multiple HTTP calls, because of the lack of\nsupport for GerritAccount cookie from the ProjectBasicAuthFilter.\nThe next follow-up change is focused in solving that problem\nspecifically, bringing the number of authentication requests\nto one.\n\nBug: Issue 14497\nChange-Id: Ibe41df0357b6be10bcdf0bd1f5a1b6160c34d4a4\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "e75d8feada486e6b1ea01757a3b7562cf187840b",
      "old_mode": 33188,
      "old_path": "java/com/google/gerrit/httpd/ProjectBasicAuthFilter.java",
      "new_id": "55ffef797bf78bd3bea89bf1f02ace382b299e91",
      "new_mode": 33188,
      "new_path": "java/com/google/gerrit/httpd/ProjectBasicAuthFilter.java"
    },
    {
      "type": "modify",
      "old_id": "1f06472f590fb8631ca5f50120e97dfa1ef17113",
      "old_mode": 33188,
      "old_path": "javatests/com/google/gerrit/httpd/ProjectBasicAuthFilterTest.java",
      "new_id": "f7792ed2d320ee380cd86af0bf059839e30d16ac",
      "new_mode": 33188,
      "new_path": "javatests/com/google/gerrit/httpd/ProjectBasicAuthFilterTest.java"
    }
  ]
}
