)]}'
{
  "commit": "b141ef4c41ced4b4a631b6c3dede5aace33638f9",
  "tree": "3a981899f47b93d2d1baecdd69d09d3faa5a49f1",
  "parents": [
    "52211e251f2a04056a12f8bfa6ffc4d294a70ad3"
  ],
  "author": {
    "name": "Jacek Centkowski",
    "email": "geminica.programs@gmail.com",
    "time": "Wed Apr 28 22:19:58 2021 +0200"
  },
  "committer": {
    "name": "Jacek Centkowski",
    "email": "geminica.programs@gmail.com",
    "time": "Fri May 28 16:20:39 2021 +0200"
  },
  "message": "Add blocked threads check\n\nIntroduce check that detects the blocked threads (enabled by default).\nIn case when it reaches above the configured percent of all threads (by\ndefault 50%) check fails and instance is considered unhealthy.\n\nCheck can:\n* be disabled with \u0027healthcheck.blockedthreads.enabled \u003d false\u0027\n* have threshold reconfigured with \u0027healthcheck.blocked.threshold\u003dXX\u0027\n\nNote that one can fine tune the check to certain group of threads by\nconfiguring threshold for threads with name starting wiht prefix.\nFor instance in case when Gerrit instance should be considered\nunhealthy when 33% of SSH-Interactive-Worker threads are \u0027BLOCKED\u0027\none can configure it with\n\n  [healthcheck \"blockedthreads\"]\n    threshold \u003d SSH-Interactive-Threads\u003d33\n\nNote that multiple checks for multiple thread group could be\nconfigured (for details with examples see the config.md file).\n\nBug: Issue 14401\nChange-Id: I7d0c4b70decf49465a7318abe4a555cde7318833\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "3e5306cd34daec7b66509c63731e7f07f6d9ac7d",
      "old_mode": 33188,
      "old_path": "src/main/java/com/googlesource/gerrit/plugins/healthcheck/HealthCheckConfig.java",
      "new_id": "651dbe96eebb5eb396d4c58427a59f9db8dd9521",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/healthcheck/HealthCheckConfig.java"
    },
    {
      "type": "modify",
      "old_id": "304a40c1140e1caca2da2707d225eab05fa64a85",
      "old_mode": 33188,
      "old_path": "src/main/java/com/googlesource/gerrit/plugins/healthcheck/HealthCheckSubsystemsModule.java",
      "new_id": "3cda7b6c1d915ed1a6a6f56681bcc997962f3d8e",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/healthcheck/HealthCheckSubsystemsModule.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "f2cbb7089650f8ce97846aae31f36c7af0ab728a",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/healthcheck/check/BlockedThreadsCheck.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "ddc67f9f145837fc884cd2d93fa593336f540888",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/healthcheck/check/BlockedThreadsConfigurator.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d4f0fe84c3724160759722c04129b02d8737327c",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/healthcheck/check/BlockedThreadsSubCheck.java"
    },
    {
      "type": "modify",
      "old_id": "97e06d01289387ee21fc36d42b13be85b8df94e5",
      "old_mode": 33188,
      "old_path": "src/main/java/com/googlesource/gerrit/plugins/healthcheck/check/HealthCheckNames.java",
      "new_id": "4771942a129115e8890f73f85f42d014928f00ac",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/healthcheck/check/HealthCheckNames.java"
    },
    {
      "type": "modify",
      "old_id": "47acb012218a16e06ed7f0665066807b14d47ad4",
      "old_mode": 33188,
      "old_path": "src/main/resources/Documentation/config.md",
      "new_id": "0b4f05f8543d023eddf289e8b9dd8397bd09b57e",
      "new_mode": 33188,
      "new_path": "src/main/resources/Documentation/config.md"
    },
    {
      "type": "modify",
      "old_id": "aa59c29b29df1677d36d3d8d72cf89f88f89d06d",
      "old_mode": 33188,
      "old_path": "src/resources/Documentation/config.md",
      "new_id": "76e6eb5bf4de0c381ef13b4bc4713b28ba757348",
      "new_mode": 33188,
      "new_path": "src/resources/Documentation/config.md"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d50d12a713986159154e8417496639731cd0ec91",
      "new_mode": 33188,
      "new_path": "src/test/java/com/googlesource/gerrit/plugins/healthcheck/BlockedThreadsCheckTest.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d22ebbd021610237d17fbed6df8ed64ef14d9a61",
      "new_mode": 33188,
      "new_path": "src/test/java/com/googlesource/gerrit/plugins/healthcheck/check/BlockedThreadsConfiguratorConfigsTest.java"
    }
  ]
}
