We are affected by this as well, and its unfortunately a problem which is unpredictable if we don't know for sure which third party libraries don't play nicely. For anyone else who has come across this, it can be stumbled upon by a perfectly innocent call pattern such as:
try (InputStream foo = new TestInputStream()) {
foo.read();
} catch (IOException e) {
LOG.error("error message", e);
}
where the TestInputStream might have been written before the days of autoclose and could do something like:
private static class TestInputStream extends InputStream {
private IOException keepToRethrowOnClose;
@Override
public int read() throws IOException {
keepToRethrowOnClose = new IOException("read");
throw keepToRethrowOnClose;
}
@Override
public void close() throws IOException {
throw new IOException("close", keepToRethrowOnClose);
}
}
Can you please advise what the plans are for 1.3.0-alpha5 (or its successor) to become a 1.3.0 release? Thanks |