)]}'
{
  "commit": "c782ca004ae43af236d67bfb206f22b573edd0a1",
  "tree": "c4c08967742632d6b9056bcd94ff6461b993a35c",
  "parents": [
    "1bcc8d43d2eed997a5e4c3430459adf63c7657d8"
  ],
  "author": {
    "name": "Maxim Dounin",
    "email": "mdounin@mdounin.ru",
    "time": "Thu Feb 03 22:46:01 2022 +0300"
  },
  "committer": {
    "name": "Maxim Dounin",
    "email": "mdounin@mdounin.ru",
    "time": "Thu Feb 03 22:46:01 2022 +0300"
  },
  "message": "HTTP/2: fixed closed_nodes overflow (ticket #1708).\n\nWith large http2_max_concurrent_streams or http2_max_concurrent_pushes, more\nthan 255 ngx_http_v2_node_t structures might be allocated, eventually leading\nto h2c-\u003eclosed_nodes overflow when closing corresponding streams.  This will\nin turn result in additional allocations in ngx_http_v2_get_node_by_id().\n\nWhile mostly harmless, it can result in excessive memory usage by a HTTP/2\nconnection, notably in configurations with many keepalive_requests allowed.\nFix is to use ngx_uint_t for h2c-\u003eclosed_nodes instead of unsigned:8.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "70ee287ae9a7fbd1f990151f179a6c715013f41d",
      "old_mode": 33188,
      "old_path": "src/http/v2/ngx_http_v2.h",
      "new_id": "4e252931ce6226a08fb4183f221871fd1b57d768",
      "new_mode": 33188,
      "new_path": "src/http/v2/ngx_http_v2.h"
    }
  ]
}
