)]}'
{
  "commit": "dfa73ed564f865f652a4a80311889f1786b14353",
  "tree": "4b5de6a4b9a20055c70b2d666778306c21adc883",
  "parents": [
    "5222d2b52d40d8d53f3f47f483f47a3c847eacd7"
  ],
  "author": {
    "name": "Maxim Dounin",
    "email": "mdounin@mdounin.ru",
    "time": "Mon Jul 02 19:03:04 2018 +0300"
  },
  "committer": {
    "name": "Maxim Dounin",
    "email": "mdounin@mdounin.ru",
    "time": "Mon Jul 02 19:03:04 2018 +0300"
  },
  "message": "Upstream: fixed tcp_nopush with gRPC.\n\nWith gRPC it is possible that a request sending is blocked due to flow\ncontrol.  Moreover, further sending might be only allowed once the\nbackend sees all the data we\u0027ve already sent.  With such a backend\nit is required to clear the TCP_NOPUSH socket option to make sure all\nthe data we\u0027ve sent are actually delivered to the backend.\n\nAs such, we now clear TCP_NOPUSH in ngx_http_upstream_send_request()\nalso on NGX_AGAIN if c-\u003ewrite-\u003eready is set.  This fixes a test (which\nwaits for all the 64k bytes as per initial window before allowing more\nbytes) with sendfile enabled when the body was written to a file\nin a different context.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "688acd806ca454180c17b4248ad4a41fc9d30a11",
      "old_mode": 33188,
      "old_path": "src/http/ngx_http_upstream.c",
      "new_id": "aba1fbb078e69c710d4dee69f10d246d06f3c69a",
      "new_mode": 33188,
      "new_path": "src/http/ngx_http_upstream.c"
    }
  ]
}
