Open
Description
Description
There is no promise rejection handling around the conversion of a HTTP response to text with res.text()
in sdk-middleware-http
. This causes an unhandled promise rejection when that call fails.
The route cause for this rejection is an issuing in the version of node we are using, in how chunked HTTP responses are handled with node-fetch
. node-fetch/node-fetch#1219
A rather hard error to replicate, but it's to do with a "Premature Close" happening when reading from response body in the call to res.text()
.
Expected Behavior
The normal error handling happens. So retries if applicable, etc.
Current Behavior
A unhandled promise rejection happens, crashing the process in Node 16+
Context
~50 unhandled promise rejection per day.