)]}'
{
  "commit": "496c1257ad63c2c5dfaeb2f71bcfef226660b4d3",
  "tree": "98db9291f02b095c31d44d510783aed4ed70148d",
  "parents": [
    "eb41be284c11edfaef50868b72a885987d8f8853"
  ],
  "author": {
    "name": "Antonio Barone",
    "email": "syntonyze@gmail.com",
    "time": "Thu Jan 06 22:46:20 2022 +0100"
  },
  "committer": {
    "name": "Antonio Barone",
    "email": "syntonyze@gmail.com",
    "time": "Wed Jan 12 14:56:48 2022 +0100"
  },
  "message": "Do not throw when failing to store into chronicle-map\n\nWhen storing a new entry in chronicle-map it is possible that the\noperation might fail.\n\nFor instance, if the new entry diverges greatly from the configured\naverage key and value size, the available memory chunks might not be\nenough to accommodate the new entry.\n\nChronicle-map fails with:\n\n```\nEntry is too large: requires X chunks, Y is the maximum.\n```\n\nAnother typical case would be that the cache already reached the maximum\nnumber of auto-resizes and thus it is not able to expand anymore.\n\nChronicle-map fails with:\n\n```\nAttempt to allocate #X extra segment tier, Y is maximum.\n```\n\nIn these cases, as well as other possible failures, we don\u0027t want the\nexception to bubble up to the stack and cause the caller to fail.\n\nThe caller might be a REST API initiated by the UI via ajax, which in\nturn, would cause the UI to stop rendering and a bad user experience.\n\nCatch chronicle-map\u0027s `put()` exception locally and simply avoid caching\nthe offending entry.\n\nBug: Issue 15483\nChange-Id: Ia1811d66b676388f15cb6f42ef3ee4fd5d1aa94b\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "76ae8a4f72120c5892aee8e6a21f19408854a2dd",
      "old_mode": 33188,
      "old_path": "src/main/java/com/googlesource/gerrit/modules/cache/chroniclemap/ChronicleMapCacheImpl.java",
      "new_id": "181192eaa01d1180498927d1d29a736a5c5c99ff",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/modules/cache/chroniclemap/ChronicleMapCacheImpl.java"
    },
    {
      "type": "modify",
      "old_id": "1da32577383021b46ca6a9a4104a59f21d83caf5",
      "old_mode": 33188,
      "old_path": "src/main/java/com/googlesource/gerrit/modules/cache/chroniclemap/ChronicleMapCacheLoader.java",
      "new_id": "66f214f947136fd89bfb0d13b3f94898c50f92d1",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/modules/cache/chroniclemap/ChronicleMapCacheLoader.java"
    },
    {
      "type": "modify",
      "old_id": "6cc4c057ff3c84dfbe653c70d39466cd268d788a",
      "old_mode": 33188,
      "old_path": "src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/ChronicleMapCacheTest.java",
      "new_id": "a3a75b6c624eabcdc63e21ce07c9220106fb0de5",
      "new_mode": 33188,
      "new_path": "src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/ChronicleMapCacheTest.java"
    }
  ]
}
