If a client response handler returns before all messages have been received (i.e. the user has what they need from the response) then the stream might throw because of an unclean close.
This can happens because the HTTP/2 stream closes uncleanly and NIO's async channel throws this error.