On Fri, 2 Dec 2022 16:17:32 GMT, Darragh Clarke <[email protected]> wrote:
>> Currently if a `HttpResonseInputStream` gets interrupted while reading it
>> will just swallow the exception and continue,
>>
>> This PR changes it to close the stream and throw an IOException, I added a
>> test to cover this which just uses two threads to read the stream then
>> interrupt it.
>
> Darragh Clarke has updated the pull request incrementally with one additional
> commit since the last revision:
>
> check thread interrupt status is set
src/java.net.http/share/classes/jdk/internal/net/http/ResponseSubscribers.java
line 488:
> 486: close();
> 487: } catch (IOException ignored) {
> 488: }
I don't have specific opinion here and this is more of a question - should we
be doing:
} catch (InterruptedException ex) {
final IOException toThrow = new IOException(ex);
try {
close();
} catch (IOException ignored) {
toThrow.addSuppressed(ignored);
}
Thread.currentThread().interrupt();
throw toThrow;
}
i.e. should we be adding any failure to close() as a suppressed exception to
the IOException that we throw?
-------------
PR: https://git.openjdk.org/jdk/pull/11323