Skip to content

feat(http2): expose `nghttp2_option_set_stream_reset_rate_limit` as a `http2.createServer` option

Due to how ESM works, Vite-like development servers on very large applications may have to perform thousands of requests to localhost. In some difficult to reproduce circumstances1 the rate may be too elevated for a Node.js server which will then start answering with net::ERR_HTTP2_PROTOCOL_ERROR errors. This can be mitigated by increasing the rate limit.

  1. In our case it required having browser extensions setup in specific ways which cause Chrome to deopt(?) part of the network transactions, messing with the timings just enough to trigger the issue.

Merge request reports

Loading